/* カスタマイズ用CSS */

/* ヘッダー全体の背景色を変更 */
.ec-header {
    background-color: #121212; /* 希望のカラーコードに変更 */
    width: 100%;
    color:#ffffff;
}

/* ヘッダー内の文字色やアイコン色も合わせて調整する場合 */
.ec-headerNav .ec-headerNav__itemIcon {
    color: #fff; /* 白にする場合 */
}


/* ヘッダー内の文字色やアイコン色も合わせて調整する場合 */
.ec-headerNav .ec-headerNav__item {
    color: #fff; /* 白にする場合 */
}

/* ヘッダー内の文字色やアイコン色も合わせて調整する場合 */
.ec-headerNav .ec-headerNav__itemLink {
    color: #fff; /* 白にする場合 */
}

/* ヘッダー内の画像調整 */
.logocus__left img {
    width: 80px;
}
@media only screen and (max-width: 640px) {
.logocus__left img {
    width: 120px;
    padding: 0px 0px 0px 50px;
}
}

/* コンテンツトップ横幅サイズ調整 */
.ec-layoutRole .ec-layoutRole__contentTop {
  width: 100%;
}

/* 商品一覧キービジュアル用 */
.keyvisuallist{
  position: relative;
  width: 100%;
  height: 300px; /* PC用高さ */
  overflow: hidden;
}
.keyvisuallist img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* スマホ最適化 */
@media (max-width: 768px){
.keyvisuallist{
    height: 200px;
  }
}

/* ヘッダーリンク追加用 */
#hedernav {
  list-style: none;
  overflow: hidden;
  font-size: 14px
}

#hedernav li {
  text-align: center;
  background-color: #121212;
  color: #fff;
  float: left;
  margin-right: 2px;
}

#hedernav li a{
  display: inline-block;
  color:#fff;
  text-decoration:none;
  transition: color .3s;
  padding: 10px 0px 10px 10px;
}
#hedernav li a:hover{
  color: #f5eb37;
  padding: 10px 0px 10px 10px;
}

@media only screen and (max-width: 640px) {
#hedernav {
display: none;
}
}

/* ページキービジュアル用 */
.keykisualframe{
  position: relative;
  width: 100%;
  height: 300px; /* PC用高さ */
  overflow: hidden;
}
.keykisualframe img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* スマホ最適化 */
@media (max-width: 768px){
.keykisualframe{
    height: 200px;
  }
}

/* topリンクアクション用 */
.toplinkhover a{ overflow:hidden; }
.toplinkhover img:hover{
	transform:scale(1.3);
	transition:0.3s;
}

/* デフォルトフッターリンク追加調整 */
.ec-footerNavi .ec-footerNavi__link a {
  display: block;
  padding: 15px 0;
  font-size: 14px;
  color:#fff;
  text-decoration: none;
  transition: color .3s;
}
.ec-footerNavi .ec-footerNavi__link:hover a {
  color: #f5eb37;
}

/* ===== 商品一覧ページ：カテゴリul ===== */
.categorycusnav ul {
  list-style: none;
  padding-left: 0;
  text-align: left;
}
.categorycusnav li {
  margin-bottom: 8px;
}
.categorycusnav li a {
  text-decoration: none;
  color: #000;
  background-image: linear-gradient(#f5eb37, #f5eb37);
  background-repeat: no-repeat;
  background-size: 0% 100%;
  background-position: left;
  transition: background-size 0.4s ease;
}

/* hover */
.categorycusnav li a:hover {
  color: #121212;
  background-size: 100% 100%;
}

/* 商品一覧：boxリンク：光 */
.box-link {
  position: relative;
  display: inline-block;
  padding: 15px 30px;
  background: #fff;
  color: #121212;
  text-decoration: none;
  overflow: hidden;
}

.box-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,0.6),
    transparent
  );
  transition: 0.6s;
}

.box-link:hover::before {
  left: 100%;
}

/* 商品一覧ページ：カテゴリスマホのみ表示（PC非表示）の場合 */
.examplestyle {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  padding: 15px;
  width: fit-content;
  margin: auto;
}
.example>div{
    border: 1px solid #999;
    background: #f2f2f2;
    padding: 10px;
    margin: 10px;
    font-family: "Noto Serif JP", serif;
}
@media(min-width:751px){
    .sp{
        display: none !important;
    }
}

/*===============================================
●追従ヘッダー用ブロックのCSS/ECキューブ用
===============================================*/
.header_customize {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  background: #121212;

  padding-bottom: 15px;
 color:#FFF;
}

/*===============================================
●header
===============================================*/
.l-header {
  display: block;
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  background: #121212;
  color:#FFF;
}

.c-hamburger {
  position: relative;
  width: inherit;
  height: inherit;
  margin: 0;
  border: transparent;
  background-color: transparent;
  cursor: pointer;
}

.c-hamburger span {
  display: block;
  position: relative;
  left: 50%;
  width: 24px;
  height: 2px;
  transform: translateX(-50%);
  background: #FFF;
  transition: all 0.4s;
}

.c-hamburger span:nth-of-type(1) {
  top: -4px;
}

.c-hamburger span:nth-of-type(2) {
  top: 1px;

  transform: translateX(-0.45deg);
}

.c-hamburger span:nth-of-type(3) {
  top: 6px;
  transform: translateX(-0.45deg);
}

.c-hamburger.is-active span:nth-of-type(1) {
  top: 0;
  transform: translateX(-50%) rotate(225deg);
}

.c-hamburger.is-active span:nth-of-type(2) {
  opacity: 0;
}

.c-hamburger.is-active span:nth-of-type(3) {
  top: -4px;
  transform: translateX(-50%) rotate(-225deg);
}

.p-header__nav {
  display: flex;
  z-index: 10;
  position: absolute;
  top: 0;
  right: -100%;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background: transparent;
  opacity: 0;
  transition: top 0.6s, right 0.6s, opacity 0.6s;
}

.p-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
  padding: 0 20px;
}

.p-header__title img {
  width: 60px;
}

.p-header__hamburger {
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
  width: 95px;
}

.p-header__nav.is-active {
  position: fixed;
  top: 0;
  right: 0;
  opacity: 1;
  background: #121212;
}

.p-nav__list {
  display: block;
  padding-right: 20px;
  padding-left: 20px;
}

.p-nav__item {
  position: relative;
  width: 100%;
  font-size: 12px;
}

.p-nav__link {
  color: black;
  display: block;
  padding: 20px;
  width: 100%;
  color:#FFF;
  text-align: center;
}

@media screen and (min-width: 768px) {

  .p-header__hamburger {
    display: none;
  }

  .p-nav__inner {
    margin-right: auto;
    margin-left: auto;
    max-width: initial;
    width: 100%;
  }

  .p-header__nav {
    position: static;
    opacity: 1;
    height: inherit;
    width: initial;
  }

  .p-nav__list {
    padding-right: 0;
    padding-left: 0;
    display: flex;
  }
}

/*===============================================
●footer
===============================================*/
#footer02 {
  background: #121212;
  text-align: center;
  margin: 100px 0px 0px 0px;
}

#footer02 .nav li a {
  padding: 15px;
  color: #FFF;
  font-size: 12px;
}

.copyright {
  padding: 15px;
  text-align: center;
  font-size: 12px;
  color: #FFF;
}

@media screen and (min-width: 641px) {
  #footer02 .nav {
    display: inline-block;
  }

  #footer02 .nav li {
  padding: 15px;
    display: inline-block;
  }

  #footer02 .nav li a:hover {
    color: #ca353b;
  }
}

@media only screen and (max-width: 640px) {
  #footer02 {
    padding: 20px 0 0;
  }

  #footer02 .inner-block {
    padding: 0;
  }

  #footer02 .nav li {
    border-top: 1px solid #555;
  }

  #footer02 .nav li a {
    padding: 12px 20px;
    display: block;
    background-size: 5px auto;
  text-align: center;
  }

  #footer02 .nav li:last-child {
    border-bottom: 1px solid #555;
  }
}

/*===============================================
●TOPキービジュスライダー
===============================================*/
.img-frame{
   position: relative;
   width: 100%;
   height: 500px;
   overflow: hidden;
   margin: 0px 0px 10px 0px;
}
.img-frame{
   width: 100%;
   height: 350px;
}
.img-01, .img-02, .img-03{
   position: absolute;
   top:0;
   left:0;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-repeat: no-repeat;
}
.img-01{
   background-image: url(https://next-order.net//test/html/user_data/img/home1.jpg);
   animation: slide-animation-01 24s infinite;
}
.img-02{
   background-image: url(https://next-order.net//test/html/user_data/img/home2.jpg);
   animation: slide-animation-02 24s infinite;
}
.img-03{
   background-image: url(https://next-order.net//test/html/user_data/img/home3.jpg);
   animation: slide-animation-03 24s infinite;
}
@keyframes slide-animation-01 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.15);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-02 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.1);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.0);}
100% {opacity: 0;}
}
@keyframes slide-animation-03 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.0);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.1);}
}

@media only screen and (max-width: 640px) {
.img-frame{
   width: 100%;
   overflow: hidden;
   margin: 0px 0px 10px 0px;
}

/*===============================================
●予約日選択＆状態可否用BOX2カラム
===============================================*/
*, *:before, *:after {
    box-sizing: border-box;
}
.situationcol_2{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.situationcol_2 > *{
    width: calc( 50% - 6px ) ;
    margin-right: 12px;
    margin-bottom: 12px;
}
.situationcol_2 > *:nth-child(2n){
    margin-right: auto;
}
.situationcol_2 > * > *{
    background: #ff0000;
    height: 120px;
    position: relative;
    overflow: hidden
}
@media screen and (max-width: 960px) {
    .situationcol_2 > *{
        width: 100%;
        margin-right: auto;
    }
}

/*===============================================
●topキービジュアルのCSS/ECキューブ用
===============================================*/
.slideBox {
  width: 100%;
  height: 350px;
  overflow: hidden;
  position: relative;
margin: 0px 0px 0px 0px;
}

/* imgのみ */
.item1 {
  opacity: 0;
  height: 350px;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-animation: anime 30s 0s infinite;
  animation: anime 30s 0s infinite;
}

.item1:nth-of-type(2) {
  -webkit-animation-delay: 10s;
  animation-delay: 10s;
}

.item1:nth-of-type(3) {
  -webkit-animation-delay: 20s;
  animation-delay: 20s;
}

/* ふわっとアニメーション */
@keyframes anime {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  35% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    z-index: 9;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes anime {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  35% {
    opacity: 1;
  }
  50% {
    opacity: 0;
    z-index: 9;
  }
  100% {
    opacity: 0;
  }
}