@charset "UTF-8";
html {
}
button,
*,
*:after,
*::before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box; }
body {
	line-height: 1;
	-webkit-text-size-adjust: 100%; }
a {
	text-decoration: none; }
input[type="submit"],
a {
	-webkit-transition: opacity 1s ease-out;
	-moz-transition: opacity 1s ease-out;
	-ms-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out; }
input[type="submit"]:hover,
a:hover {
  opacity: .5;
  cursor:pointer; }
.clearfix {
  zoom: 1;
  overflow: hidden; }
.clearfix:after {
  content: "";
  display: block;
  clear: both; }
input {
  font-size: 16px; }
img {
  width: auto;
  max-width: 100%;
  line-height: 0;
  vertical-align: middle;
  border: none; }
.wysiwyg {
  word-break: break-word;
  line-height: 1.75; }
.wysiwyg table {
  width: 100%!important; }
.wysiwyg ol {
  margin-left: 16px;
  list-style-type: decimal; }
p {
  line-height: 1.75; }
ol,ul,li,dl,dt,dd {
  margin: 0;
  padding: 0; }
li {
  list-style: none; }
.sp-hide {
  display: block; }
.sp {
  display: none; }
.wrap {
  width: 100%;
  margin: 0 auto; }
.center {
  text-align: center; }
 time {
  display:inline-block; }
.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex; }
.sns-btn {
	letter-spacing: -.4em;
  margin:40px 0;
  display:flex;
  justify-content:space-between; }
.sns-btn a {
  display: inline-block;
  color: #fff;
  padding: 10px 8px;
  text-align: center;
  background: #B5B5B6;
  font-size: 12px;
  min-width: 16%;
  width: 33.3%;
  margin:0;
letter-spacing: normal;}
.sns-btn a:nth-child(1) {
  background: #036EB8; }
.sns-btn a:nth-child(2) {
  background: #2EA7E0; }
.sns-btn a:nth-child(3) {
  background: #13AE67;
  border:none; }
    
@media screen and (max-width: 768px) {
.wysiwyg figure,	
.iframe-wrap {
  position: relative;
  padding-top: 56.25%; }
.wysiwyg figure iframe,
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
.wysiwyg figure img {
  margin-top: -56.25%; }
.sp {
  display: block; }
.sp-hide{
  display: none; }
.prev-next a {
  width: 47%;
  margin: 0 1.5% 0 0; }
.prev-next a {
    display: inline-block;
    margin: 8px 16px;
}
.prev-next a:nth-child(2) {
  margin: 0 0 0 1.5%; }
.sns-btn a {
	padding: 10px 4px;
	font-size: 10px;
	width: 33.3%;}
}  

/*★サイトの基準設定 -------------------------------------------------------------------------*/  
body {
  color: #231815;
  font-size: 12px;
  font-family:"Times New Roman", "Hiragino Mincho ProN", "YuMincho","Yu Mincho", "MS PMincho", serif;}
  /*font-family: Helvetica, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ",Osaka,verdana,"Meiryo", "ＭＳ Ｐゴシック","MS PGothic",Sans-Serif; }*/
a {
  color: #231815; }
.prev-next,
.wrap {
  max-width: 1200px; }
nav,h1,h2,h3,h4,h5 {
  letter-spacing: 0.1rem; } 
.prev-next {
  margin: 40px auto 0;
  text-align: center; }
.prev-next a {
  display: inline-block;
  font-size: 12px;
  padding: 4px;
  font-weight: normal;
  line-height: 1;
  color: #231815;
  width: 15%;
  margin: 0 8px;
  max-width: 230px;
  float: none; }
.contents {
  /*padding-top:120px;*/
  padding-top: 73px; }
  
@media screen and (max-width: 768px) {
.wrap,
.contents .wrap {
  padding: 0 16px; }
.prev-next a {
  width: 47%;
  margin: 0 1.5% 0 0; }
.prev-next a:nth-child(2) {
  margin: 0 0 0 1.5%; }
}

/*★header -------------------------------------------------------------------------*/
header {
  width: 100%;
  margin: auto;
  padding: 0;
  position: fixed;
  color:#fff;
  background: rgba(255,255,255,0);
  z-index: 9999;
  -webkit-transition: opacity 1s ease-out;
  -moz-transition: opacity 1s ease-out;
  -ms-transition: opacity 1s ease-out;
  transition: opacity 1s ease-out;  }
.header.header-bg {
  color:#000;
  -webkit-transition: opacity 2s ease-out;
  -moz-transition: opacity 2s ease-out;
  -ms-transition: opacity 2s ease-out;
  transition: opacity 2s ease-out; 
  background: rgba(255,255,255,1);
}

header > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-right: 81px;
  height: 73px;
  padding: 0;
}
header a {
  color:#fff;
  margin: 0 8px;
}
.header.header-bg a {
      color: #231815;
}
.page header {
  background: rgba(255,255,255,1);
  color: #231815;
}
.page header a {
   color: #231815; 
}
@media screen and (max-width:768px) {
.sp-hide{
  display: none; }

}
/*ハンバーガーメニュー*/
#menuToggle {
  position: fixed;
  top: 0;
  right: 0;
  padding: 23px 24px;
  z-index: 9999;
  -webkit-user-select: none;
  user-select: none;
  background: rgba(0,0,0,.5);
}
#menuToggle a {
  text-decoration: none;
  color: #fff;
  transition: color 0.3s ease;
}
#menuToggle a:hover {
  opacity: .5;
}
#menuToggle input {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  opacity: 0;
  z-index: 2;
  -webkit-touch-callout: none;
}
#menuToggle span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: #fff;
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}
#menuToggle span:first-child {
  transform-origin: 0% 0%;
}
#menuToggle span:nth-last-child(2) {
  transform-origin: 0% 100%;
}
#menuToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(4px, -1px);
  background: #fff;
}
#menuToggle input:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}
#menuToggle input:checked ~ span:nth-last-child(2) {
  transform: rotate(-45deg) translate(0, 5px);
}
#menu {
  position: fixed;
  width: 100%;
  top: 0;
  right: 0;
  margin: 0 0 0 0;
  padding: 50px 24px;
  background: #000;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  transform-origin: 0% 0%;
  transform: translate(100%, 0);
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
  text-align: center;
}
@media screen and (max-width:768px) {
  #menu {
    width: 100%;
    transform: translate(100%, 0);
  }
  /*#menu {
    top: 49px;
  }*/
  #menu > div {
    flex-wrap: wrap;
  }
  #menu > div ul {
    padding: 0;
    width: 100%;
  }
   #menu > div ul + ul{
    margin-top: 24px;
  }
}
#menu > div {
  display: flex;
  justify-content: center;
}
#menu > div ul {
  padding: 0 4%;
}
#menu li{
  padding: 10px 0;
  font-size: 16px;
}
#menuToggle input:checked ~ div
{
  transform: none;
}
header + nav {
  display:none;
}
/*アニメーション*/
.fadeIn{
animation-name:fadeInAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeOutAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/* 下から */
.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
  opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(200px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.fadeUpTrigger{
    opacity: 0;
}
/*画像エフェクト*/
.slide-bottom {
   opacity: 0;
   transform: translateY(70px);
   transition: all .5s 0s ease-out;
 }
.page-logo {
  display:none;
}
.page .page-logo {
  display:inline-block;
  padding-right:16px;
}
.page .page-logo img {
  height:60px;
}
@media screen and (min-width:769px) {
.g-nav {
 display: flex;
    align-items: center;
    justify-content: flex-start; 
}
}
/*★footer -------------------------------------------------------------------------*/
footer {
  margin-top:40px;
  padding: 24px 0 0;
  text-align: center;
  background: #fff; }
footer .g-nav {
  margin: 24px 0;
  display:block; }
footer .logo {
  margin: 0 0 24px 0; }
footer .sns {
  margin: 24px 0; }
footer .sns a {
  display:inline-block;
  font-size:16px;
  margin: 0 8px;
  color: #231815; }
footer .g-nav a {
  display: inline-block;
  margin: 0 16px;
  color: #231815; }

.footer-sns {
  margin-top:40px;
  line-height:1.5;
}
.footer-sns a + span {
  margin-left:2em;
}

footer dl {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 40px;
}
footer dl dt {
  width: 15%;
}
footer dl dd {
  max-width: 85%;
  text-align: left;
  padding-left: 24px;
}
footer small {
  display: block;
  margin: 24px 0 0;
  padding: 0 0 24px; }

@media screen and (max-width: 768px) {
  footer .g-nav a {
    display: block;
    margin:16px 0; }
  footer {
    padding: 24px 0 0; }
  footer .logo {
    padding: 24px 0 0; }
  footer .logo img {
    max-width: 80%; }

  footer dl {
    flex-wrap:wrap;
  }
  footer dl dt,footer dl dd {
    width:100%;
  }
  footer dl dt img {
    width:40%;
  }
  footer dl dd{
    padding-left:0;
    max-width:none;
    text-align:center;
  }
}
@media screen and (min-width: 769px) {

.footer-tel{
  pointer-events: none;
}
}
/*★h1 -------------------------------------------------------------------------*/
h1 {  
  margin: 0;
  padding: 16px;
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  font-weight: normal;
  letter-spacing: normal; }
  
/*★h2 -------------------------------------------------------------------------*/
h2 {
  color: #231815;
  font-size:40px;
  font-weight: normal;
  text-align:left;
  line-height: 1.3;
  padding:8px 0;
  margin:0 0 24px 0; }
h3 {
  line-height: 1.75;
  margin-top:0;
  font-size:16px;
  font-weight:normal; }
@media screen and (max-width: 768px) {
  h2 {
    margin: 24px 8px; }
}

.center {
  text-align:center;
  margin: 0 auto 80px auto;
}
/*★TOP -------------------------------------------------------------------------*/
.top .swiper {
  width:100%;
  height:100vh;
}
.hero span {
  position:absolute;
    top:40%;
    width: 100%;
    text-align: center;
    z-index: 9990;  
}
.hero span + span {
display:none;
}

/*
.hero {
  position:sticky;
  top: 0;
  text-align:center;
height: calc(100vh + 300px);
}
.hero span {
  position: sticky;
    margin-top:-70vh;
    top:40%;
    z-index: 9999;
    width: 100%;
    text-align: center;
    display:block;
}
.hero span + span {
  display:none;
  z-index:9998;
    top:30%;
}*/
.hero span img {
  width: 33%;
  max-width: 593px;
  z-index:9999;
}
.hero span + span img {
  width:15%;
}
.top-news {
  background:#000;
  color:#fff;
  padding:16px;
  text-align:left;
  margin-top:-1px;
}

.top-logo {
  margin:0 auto 40px;
  width:15%;
}
.top section dl {
    display: flex;
    justify-content: space-between;
    margin-bottom:64px;
}
.top section dt {
  width: 50%;
}
.top section dd {
  width: 50%;
  margin: 0 4%;
}
.top section dd {
  font-size:16px;
}
.top section dl.rev {
    flex-direction: row-reverse;
}
.top section dl.chef {
  align-items:center;
}
.top section dl.chef dt {
  width:25%;
}
.top section dl.chef dd {
  width:75%;
  padding-right: 8%;
}
.view {
  display:flex;
  justify-content: flex-end;
  align-items:center;
  margin-top:40px;
}
.view a {
  display;inline-block;
  margin-left:16px;
  border:1px solid #000;
  border-radius:50%;
  padding:40px 28px;

}
@media screen and (max-width: 768px) {
  .top .swiper img {
    height:100vh;
    object-fit: cover;
  }
  .hero span img {
    width:80%;
  }
  header + nav {
    display:block;
  }
  header {
    display:none;
  }
  .top-logo {
    width: 50%;
  }
  .top section dl {
    flex-wrap:wrap;
  }
  .top section dl.chef dt,
  .top section dl.chef dd,
  .top section dt,
  .top section dd {
    width:100%;
  }
  .top section dd {
    margin-top:24px;
  }
}
/*★information -------------------------------------------------------------------------*/
ul.information {
  letter-spacing: -.4em; }
  
ul.information li {
  letter-spacing: normal;
  display: inline-block;
  width: 50%;
  text-align: right;
  padding: 24px;
  vertical-align:top; }
ul.information li:nth-child(2n) {
  text-align: left; }
ul.information dt {
  float: left;
  width: 35%; }  
ul.information dt div {
  width: 100%;
  height: 100%;
  padding: 100% 0 0; }
ul.information dd {
  float: left;
  width: 65%;
  text-align: left;
  padding-left:16px; } 

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
  ul.information li {
    width: 100%;
    padding: 24px 0; } 
}

/*★information-detail -------------------------------------------------------------------------*/
.information-img,
.information-contents {
  max-width:800px;
  margin: 0 auto; }

@media screen and (min-width: 769px) {
  .information-img {
    margin-top: 32px;
   }
  .information-contents {
    margin-top: 32px;
   }
  .information-contents .sns-btn {
   }
}

@media screen and (max-width: 768px) {
  .information-contents time {
    margin-top: 24px; }
}

/*★product -------------------------------------------------------------------------*/
.product {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
.search-box input[type="text"]{ 
  border-radius: 4px 0 0 4px;
  padding: 4px 8px;
	border: 1px solid #ccc; }
.search-box input[type="submit"] {display: none;}
.search-box label {
  display: inline-block;
  background: #000;
  padding: 8.5px 14px;
  font-size: 16px;
  border: 0;
  vertical-align: bottom;
  color: #fff;
  cursor: pointer;
  margin-left: -4px;
  border-radius: 0 4px 4px 0;
}
.search-box label:hover { opacity:.5;}
.search-box { 
	text-align: center;
	padding:16px; }
.product-cat .flex{
    flex-wrap: wrap;
    justify-content: center;
    padding: 16px 0;
background: #fcfcfc; }
.product-cat .flex li {
	margin: 0 8px;
}
ul.product li {
  /*float:left;*/
  margin-bottom:40px; }
ul.product li h3 {
  /*height: 3em;*/
  overflow: hidden; }
ul.product li p {
  height: 5em;
  overflow: hidden; }
.sub-cat {
	background: #fcfcfc;
	margin-bottom: 16px;
	padding: 16px 8px; }
.sub-cat .flex {
	justify-content: center;
	-webkit-justify-content:center; }
.sub-cat .flex li { margin: 0 8px; }

@media screen and (min-width: 769px) {
  ul.product li {
    width:23.5%; }
  ul.product li:nth-child(4n) {
    margin-right: 0; }
}

@media screen and (max-width: 768px) {
  ul.product li {
    width:49%;
  }
  ul.product li:nth-child(2n) {
    margin-right: 0; }
}

ul.product li a {
	display: block;
	position: relative; }
ul.product li a div.pimg {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 66% 0 0;
}

/*★product-detail -------------------------------------------------------------------------*/
.product-img .bx-wrapper {
  margin: 0 auto 32px; }

.product-img .bx-wrapper li img {
  margin: 0 auto;
  width:auto!important;
  max-width:100%;
  max-height:100%; }
.product-img .bx-pager {
  letter-spacing: -.4em; }
.product-img .bx-pager a {
  letter-spacing: normal;
  display: inline-block;
  width: 25%; }
.product-img .bx-pager a div {
  padding: 100% 0 0; }
.product-contents dl {
  width: 100%;
  margin: 8px 0;
      display: flex;
    justify-content: flex-start;
    align-items: stretch; }
.product-contents dt, .product-contents dd {
  width: 50%;
  background: #eee;
  text-align: center;
  font-weight: normal;
  padding: 16px;
  border-bottom: 1px solid #fff;
  line-height: 1.3; }
.product-contents dd.td-input {
  background: #000;
  padding: 0;
display: flex;
    align-items: center;
    justify-content: center;
   }
.product-contents dd input[type="submit"] {
  -webkit-appearance: none;
  background: none;
  border: none;
  color: #fff;
  font-size: 14px;
  width: 100%;
  padding: 16px; }
.product-contents dd:hover {
  opacity: 0.5; }
.product-contents dd.sold-out {
  color: #fff;
  background: #f00; }
.product-contents dd.sold-out:hover {
  opacity: 1; }
.product-contents .tbl-size {
	border-top:1px solid #ccc;
	border-left:1px solid #ccc; }
.product-contents .tbl-size th,
.product-contents .tbl-size td {
	width: auto;
	padding: 8px 16px;
	background: none;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc; }
.product-contents .tbl-size th {
	background: #eee; }
.soldout {
	color: #f00;
}
.redSale {
  display: inline-block;
  color: rgb(255, 0, 0);
  position: relative;
  padding-left: 8px; }
.redSale::before {
  display: inline-block;
  content: "";
  width: 52px;
  height: 1px;
  bottom: 50%;
  position: absolute;
  left: -94%;
  background: rgb(255, 0, 0); } 
.product-contents h3, .product-contents p {
  margin: 8px auto; }
.item-number {
}
.price {
  font-size: 24px; }
.btn-favorite {
	margin: 16px 0 40px;
	text-align: center;
}
.btn-favorite a {
	display: inline-block;
	padding: 8px 12px;
	background: #000;
	color: #fff; }

@media screen and (min-width: 769px) {
.product-img {
  margin-top: 32px;
  float: left;
  width: 40%; }
.product-contents {
  margin-top: 32px;
  float: right;
  width: 60%;
  padding-left: 40px; }
.product-contents h3 {
  margin-top: 0; }
.product-img .bx-wrapper li {
  /*height: 400px;*/ }
}

@media screen and (max-width: 768px) {
.product time {
  margin-top: 24px; }
.tbl-scroll {
	overflow-x: scroll; }
}

.privacy {
	width: 76%;
}
html {height: 100%;}
body{height: 100%;}
.comingsoon {
  display: flex;
  justify-content: center;
  align-items: center;
	text-align: center;
}

.relatedItems {
	margin-top: 40px;
	padding: 0;
}
@media screen and (max-width: 768px) {
	.relatedItems {
		padding: 0;
	}
}
.product-contents .itemIcon {
	display: inline-block;
}
.product-contents .itemIcon span {
	margin: 0 -4px 4px 8px;
	padding: 0 4px;
}
.itemIcon span {
	display: inline-block;
	color: #fff;
	padding: 2px 6px;
	font-weight: normal;
	letter-spacing: normal;
	background: #f00;
	font-size: 12px;
	line-height: 1.5;
   margin: 0 0 4px 0;
}
.icon-box {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
/*----------------------------------------------------
  ログイン画面
----------------------------------------------------*/
#bt_set,.btn-box {
  display: flex;
  justify-content: center;
  align-items: center; 
}
.btn-box,
#bt_set {
  margin-top: 16px;
}
input[type="submit"],
button.rtn,
.btn-box a,
.btn {
  display: inline-block;
  padding: 16px;
  text-decoration :none;
  cursor:pointer;
  margin:0 8px;
  font-size: 16px;
  width: 30%;
  text-align: center;
  line-height: 1;
  border: 1px solid #000;
  background:none;
}
.btn-mypage-prof {
  text-align: right;
}
.btn-mypage-prof .btn {
  margin: 0 0 16px 0; 
}
#bt_return,#bt_next {
  margin:0 8px;
  width: 20%; 
}
.input-form-last form input[type="submit"],
#bt_return .btn,
#bt_next .btn {
  width: 100%;
  margin:0; 
}
.input-form form + .input-form-last form {
  display: inline-block;
  width:30%;
  margin: 0 8px; }

@media screen and (max-width: 768px) {
  #bt_set {
    flex-wrap: wrap;
  }
  #bt_return,#bt_next {
    margin:0 0 16px;
    width: 80%; 
  }
  .input-form form + .input-form-last form {
   width: 100%;
   margin-bottom: 16px;
  }
}
.onlinestore .contents dl,
.menu .contents dl {
  display:flex;
  justify-content:flex-start;
  align-items:flex-start;
  padding:48px 0;
}
.onlinestore .contents dl dt,
.menu .contents dl dt {
  width:50%;
}
.onlinestore .contents dl dd,
.menu .contents dl dd {
  width:50%;
  font-size:16px;
}
.menu .contents section.bg {
  background:#efefef;
}
.menu .contents dl dd p + h3 {
  margin-top:40px;
}
.menu .contents dl dt h2 + p {
  margin-top:-24px;
}
@media screen and (max-width:768px) {
  .onlinestore .contents dl,
  .menu .contents dl {
    flex-wrap:wrap;
  }
  .onlinestore .contents dl dt,
  .onlinestore .contents dl dd,
  .menu .contents dl dt,
  .menu .contents dl dd {
    width:100%;
  }
}
.menu.paninotecapellicano .contents .catch + section dl dd {
  margin:0 4%;
}
@media screen and (max-width:768px) {
  .menu.paninotecapellicano .contents .catch + section dl dd {
  margin:0;
}
  }
.onlinestore section nav {
  display:flex;
  justify-content:flex-start;
  margin-bottom:40px;
}
.onlinestore section nav a {
  margin-right:16px;
}
.onlinestore section ul {
    flex-wrap: wrap; 
    display: flex;
    justify-content: space-between;
    align-items: top
}
.onlinestore section ul li {
    width: 23%;
    margin-bottom:24px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
}
.onlinestore section ul li a {
  display:block;
}
.onlinestore section ul li:after {
    content: "";
    display: block;
    width: 23%;
    height: 0;
}
.onlinestore section ul li a img {
object-fit: cover;
    aspect-ratio: 1/1;
    width: 100%;
    height: 100%;
  }
.onlinestore section ul li:before {
    content: "";
    display: block;
    width: 23%;
    height: 0;
    order: 1;
}
.onlinestore section ul li p {
  margin-bottom:4px;
}
@media screen and (max-width:768px) {
.onlinestore section ul li {
  width:48%;
}
}

.detail section dl {
    display: flex;
    justify-content: space-between;
    margin-bottom:64px;
    padding-top:48px;
}
.detail section dt {
  width: 50%;
}
.detail section dd {
  width: 50%;
  margin: 0 4%;
}
.detail section dd {
  font-size:16px;
}
.detail .slider-thumbnail {
  margin-top:16px;
}
.detail .slider-thumbnail .swiper-wrapper {
    flex-wrap: wrap; 
    display: flex;
    justify-content: space-between;
    align-items: top;
}
.detail .slider-thumbnail .swiper-slide {
  width: 32%;
    margin-bottom:24px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box
}
.detail .slider-thumbnail .swiper-wrapper:after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}
.detail slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
}


@media screen and (max-width:768px) {
  .detail section dl {
    flex-wrap:wrap;
  }
  .detail section dt,
  .detail section dd {
    width:100%;
  }
}

/*★product-detail -------------------------------------------------------------------------*/
.product-img .bx-wrapper {
  margin: 0 auto 32px; }

.product-img .bx-wrapper li img {
  margin: 0 auto;
  width:auto!important;
  max-width:100%;
  max-height:100%; }
.product-img .bx-pager {
  letter-spacing: -.4em; }
.product-img .bx-pager a {
  letter-spacing: normal;
  display: inline-block;
  width: 25%; }
.product-img .bx-pager a div {
  padding: 100% 0 0; }
.product-contents dl {
  width: 100%;
  margin: 8px 0;
      display: flex;
    justify-content: flex-start;
    align-items: stretch; }
.product-contents dt, .product-contents dd {
  width: 50%;
  background: #eee;
  text-align: center;
  font-weight: normal;
  padding: 16px;
  border-bottom: 1px solid #fff;
  line-height: 1.3; }
.product-contents dd.td-input {
  background: #000;
  padding: 0;
display: flex;
    align-items: center;
    justify-content: center;
   }
.product-contents dd input[type="submit"] {
  -webkit-appearance: none;
  background: none;
  border: none;
  color: #fff;
  font-size: 14px;
  width: 100%;
  padding: 16px; }
.product-contents dd:hover {
  opacity: 0.5; }
.product-contents dd.sold-out {
  color: #fff;
  background: #f00; }
.product-contents dd.sold-out:hover {
  opacity: 1; }
.product-contents .tbl-size {
  border-top:1px solid #ccc;
  border-left:1px solid #ccc; }
.product-contents .tbl-size th,
.product-contents .tbl-size td {
  width: auto;
  padding: 8px 16px;
  background: none;
  border-right:1px solid #ccc;
  border-bottom:1px solid #ccc; }
.product-contents .tbl-size th {
  background: #eee; }
.soldout {
  color: #f00;
}
.redSale {
  display: inline-block;
  color: rgb(255, 0, 0);
  position: relative;
  padding-left: 8px; }
.redSale::before {
  display: inline-block;
  content: "";
  width: 52px;
  height: 1px;
  bottom: 50%;
  position: absolute;
  left: -94%;
  background: rgb(255, 0, 0); } 
.product-contents h3, .product-contents p {
  margin: 8px auto; }
.item-number {
}
.price {
  font-size: 24px; }
.btn-favorite {
  margin: 16px 0 40px;
  text-align: center;
}
.btn-favorite a {
  display: inline-block;
  padding: 8px 12px;
  background: #000;
  color: #fff; }

@media screen and (min-width: 769px) {
.product-img {
  margin-top: 32px;
  float: left;
  width: 40%; }
.product-contents {
  margin-top: 32px;
  float: right;
  width: 60%;
  padding-left: 40px; }
.product-contents h3 {
  margin-top: 0; }
.product-img .bx-wrapper li {
  /*height: 400px;*/ }
}

@media screen and (max-width: 768px) {
.product time {
  margin-top: 24px; }
.tbl-scroll {
  overflow-x: scroll; }
}

.privacy {
  width: 76%;
}
html {height: 100%;}
body{height: 100%;}
.comingsoon {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.relatedItems {
  margin-top: 40px;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .relatedItems {
    padding: 0;
  }
}
.product-contents .itemIcon {
  display: inline-block;
}
.product-contents .itemIcon span {
  margin: 0 -4px 4px 8px;
  padding: 0 4px;
}
.itemIcon span {
  display: inline-block;
  color: #fff;
  padding: 2px 6px;
  font-weight: normal;
  letter-spacing: normal;
  background: #f00;
  font-size: 12px;
  line-height: 1.5;
   margin: 0 0 4px 0;
}
.icon-box {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.td-input form {
  height:100%;
}
.td-input [type="submit"] {
width: 100%;
    height: 100%;
    background: #000;
    color:#fff;
    margin: 0;
  }
.cart h2 {
  font-size:20px;
}
@media screen and (max-width: 768px) {
.btn-box {
  flex-wrap:wrap;
}
  .btn-box a {
    width:100%;
  }
   .btn-box a + a {
    margin-top:16px;
   }
   .input-form-last input{
        width: 100%;
    margin: 0;
   }
}
@media screen and (min-height: 1600px) {
.top .swiper {
    width: 100%;
    height: auto;
}
}
.privacy h2 {
  font-size:20px;
}
.detail section dl.detail-dl {
  margin-bottom:0;
  padding:0;
}
.detail section dl.detail-dl {
  border: 1px solid #575757;
}

.detail section dl.detail-dl dt,
.detail section dl.detail-dl dd.sold-out {
  padding:16px;
text-align: center;
    margin: 0;
}
.detail section dl.detail-dl dd.sold-out {
  line-height:2;
  color:#f00;
}
.detail section dl.detail-dl + dl.detail-dl {
  border-top:none;
}
.detail section dl.detail-dl dd.td-input {
  margin:0;
}

@media screen and (min-width: 769px) {

.detail section dl.detail-dl dt {
  border-right: 1px solid #575757;
}
}
@media screen and (max-width: 768px) {
.detail section dl.detail-dl dt {
  border-bottom: 1px solid #575757;
}
}
h1 {
  padding:48px 0;
}
.news ul {
    flex-wrap: wrap;
    display: flex;
    justify-content: space-between;
    align-items: top;
}
.news ul li {
    width: 32%;
    margin-bottom: 24px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    text-align:center;
}
.news ul li  img {
    width: 100%;
    height: 100%;
    line-height: 0;
    object-fit: cover;
    aspect-ratio:1/1;
  }
.news ul li:after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}
.detail-box {
    max-width: 700px;
    text-align: left;
    margin: 24px auto 0;
}
.detail-box img {
    width: 100%;
}
/*.detail-box img {
     width: 100%;
    height: 100%;
    line-height: 0;
    object-fit: cover;
    aspect-ratio:1/1;
}*/
@media screen and (max-width: 768px) {
  .news ul li {
      width: 48%;
  }
}
