@charset "utf-8";

.clearfix :after {
  content: "";
  display: block;
  clear: both;
}
body {
  color: black;
}
img {
  /* display: block; */
  width: 100%;
}
#wrapper {
  background-color: #eee;
  /* width:max-content; */
}
#container {
  width: 1200px;
  margin: 0 auto;
  background-color: #eee;
}
@media screen and (max-width:375px) {
  #wrapper {width:auto;}
  #container { 
    float: none;
    width: auto;
  } 
}
.sp {
  display: none;
}
@media screen and (max-width:375px) {
  .sp {display: block;}
  #top_space {
    height: 75px;
  }
}
/*===================================
ハンバーガーメニュー用button
===================================*/
@media screen and (max-width:375px) {
  .openbtn1 {
    position: fixed;
    background: #888787;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    margin: 17px 0 0 3px;
    z-index: 1;
  }
  /*ボタン内側*/
  .openbtn1 span {
    display: inline-block;
    transition: all .4s;
    /*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background: #fff;
    width: 45%;
  }
  .openbtn1 span:nth-of-type(1) {top: 15px;}
  .openbtn1 span:nth-of-type(2) {top: 23px;}
  .openbtn1 span:nth-of-type(3) {top: 31px;}
  .openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
  }
  .openbtn1.active span:nth-of-type(2) {opacity: 0;}
  .openbtn1.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
  }
}

#top_space li{
  display: block;
  float: left;
}
#logo {
  width: 50px;
    height: 50px;
    margin: 18px 0px 0px 0;
}
#yago {
  width: 180px;
  height: 75px;
}
#top_message p {
  margin: 27px 70px 0 70px;
  text-align: center;
  line-height: 1.3em;
}
@media screen and (max-width:375px) {
  #top_message {display: none;}
  #logo {
    display:block;
    margin: 18px 0 0 100px;
  }
}
#search_window {
  width: 270px;
  height: 33px;
  margin: 34px 0px 8px 38px;
}

#shopping_cart {
  width: 45px;
  height: 45px;
  background-color: rgb(188 6 6);
  margin: 24px 0 0 14px; /*25px 0px 0 27px;*/
}
@media screen and (max-width:375px) {
  #search_window {display: none;}
  #shopping_cart {display:none;}
  #search_window_sp {
    width: 194px;
    height: 29px;
    margin: 207px 0px 0px 0px;
  }
}

nav ul {
  background-color: #c8aa46;
  margin: 0 auto;
}
nav li {
  width: 239px;
  float: left;
  color:#fff;
  border-right: 1px solid #fff;
  text-align: center;
  line-height: 2.5em;
}
nav ul :hover {
  background-color: #d0b762;
}
nav li a {
  color: #fff;
}
#top_visual .slider img {
  width: 1200px;
  height: 450px;
}
@media screen and (max-width:375px) {
  nav li {
    line-height: 1.5em;
    width: 120px;
  }
  #top_visual .slider img {
    width: auto;
    height: auto;
  }
}
/*===================================
ナビゲーションのためのCSS
===================================*/
@media screen and (max-width:375px) {
  .category{
      /* width:100%; */
     position:fixed;
     z-index: 999;
     /*ナビのスタート位置と形状*/
     top:75px;/*<-- 0から変更*/
     left: -100%; /*<--　-120%から変更*/
     height: 100vh;/*ナビの高さ*/
     background: #cbc9c9;
     /*動き*/
     transition: all 0.6s;
  }
  /*アクティブクラスがついたら位置を0に*/
  .category.panelactive {
    left: 0;
    width: 53%; /*<--23%から変更 */
  }

  /*ナビゲーション*/
  .category ul {
    position: absolute;
    z-index: 999;
    width: 100%;
    top: 9%;/*ハンバーガーメニューの表示する際のリスト位置*/
    left: 0%;
    transform: translate(0%,0%);
  }
  /*リストのレイアウト設定*/
  .category li{
    float:none;
    list-style: none;
    text-align: left;/*<-- leftから変更*/ 
  }
  .category li a{
  text-decoration: none;
  padding:10px;
  /* display: block; */
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
  }
}
/****************************************/
/***********Main **********************/
main {
  float: right;
  width: 900px;
  height: 935px;
}
section {
  width: 900px;
  height: 255px;
  margin: 10px 0 0 0;
}

h3 {
  font-size: 1.2em;
  line-height: 1.4em;
  font-weight: bold;
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #494949;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 8px #313131;/*左線*/
  margin-left: 5px;
}
@media screen and (max-width:375px) {
  main {
    float: none;
    width:auto;
    height: 1180px;
    /* height:auto; */
  }
  main section {
    width: 100%;
    height: auto;
    /* margin: 2px; */
  }
}

/*===================================
Product向け
===================================*/
.product_description {
  display:block;
  width: auto;
  height: auto;
  margin-top: 20px;
}
.product_description h2 {
  font-size: 2em;
  line-height: 1.4em;
  font-weight: bold;
  color: #d10000;
}
.product_description p {
  font-size: 1em;
  line-height: 1.5em;
  font-weight: lighter;
  text-align: left;
  margin: 10px 0 0 0;
}
.product_detail { /*商品詳細BOXの定義*/
  width: 900px;
  height: 500px;
  margin: 25px 0 0 0;
  display: flex;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: stretch;
  margin: 10px;
}
.product_image { /*商品イメージBOX（左側）の定義*/
  width: 480px;
  height:auto;


}
.product_detail_layout { /*商品のオーダー用BOX（右側）の定義*/
  width: 420px;
  height: auto;
  margin-left: 30px;
}
.productname_header {
  display: block;
}
.productname_header_copy {
  font-size: 1.2em;
  margin: 26px 0 10px 10px;
}
.productname_header_name {
  font-size: 1.4em;
  font-weight: bold;
  margin: 10px;
}
.product_message {
  width: 80px;
  height: 80px;
  display:flex;
  flex-wrap: nowrap;
  align-items: center;
  flex-direction: row;
  justify-content: flex-start;
}
.productname_detail {
  width: auto;
  margin: 10px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  align-items: stretch;
  justify-content: center;
}
.productname_detail_price {
    width: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    margin: 10px 0 0 0;
    align-items: baseline;
}
.productname_detail_price_label {
  font-size: .8em;
  font-weight: lighter;
}
.productname_detail_price_currencymark {
  font-size: 1em;
  color: #d10000; 
  margin-left: 30px;
}
.productname_detail_price_tax {
  font-size: 1em;
}
.productname_detail_price_value {
  font-size: 1.8em;
  font-weight: bold;
  color:#d10000;
}
.productname_detail_quantity {
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  margin: 10px 0 0 0;
}
.productname_detail_quantity_label {
  font-size:.8em;
  font-weight: lighter;
}
.productname_detail_quantity_value {
  margin-left: 30px;
}
.productname_detail_stock {
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  margin-top: 10px;
}
.productname_detail_stock_label {
  font-size: .8em;
  font-weight: lighter;
}
.productname_detail_stock_value {
  margin-left: 30px;
}
.cart_button {
  width: 170px;
  height: 50px;
  margin: 10px auto;
}
.productname_detail_follow_label {
  font-size: .8em;
  font-weight: lighter;
  margin-bottom: 5px;
}
.productname_detail_follow {
  font-size: 1em;
  display:flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: nowrap;
}
.product_evaluation_header {
  display:flex;
  flex-direction: row;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-content: flex-start;
    align-items: center;
}

.product_evaluation_starcount {
    color: #3962C5;
    font-size: 14px;
}
.product_evaluation_value {
  font-weight: bold;
  padding: 5px 10px 5px 10px;
}
.product_evaluation_detail {
  font-size: 14px;
  line-height: 1.5em;
}
@media screen and (max-width:375px) {
  .product_description {
    margin: 10px;
  }
  .product_detail { /*商品詳細BOXの定義*/
    width: auto;
    display: block;
    margin: 0 auto;
  }
  .product_image { /*商品イメージBOX（左側）の定義*/
    width: auto;
    height: auto;
    object-fit: cover;
    margin: 10px;
  }
  .product_detail_layout {
    width: auto;
    height: auto;
    margin: 10px;
  }
  .product_message {
    width: 50px;
    height: 50px;

  }
}
/*===================================
section内のスライダー用css
===================================*/
.slick-prev:before,
.slick-next:before {
  color: #000 !important;
}
.slick-slide img {
  display: block;
  margin: 0 auto;
}
section .slider .ranking_number {
  width: 150px;
  margin: 0 auto;
}
section .slider img{
  width: 150px;
  height: 130px;
  border-radius: 10%;
  margin: 2px auto;
}
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
  width:94%;
   margin:0 auto;
}
.slider img {
   width:100%;/*スライダー内の画像を横幅100%に*/
   height:auto;
}
/*slickのJSで書かれるタグ内、スライド左右の余白調整*/
.slider .slick-slide {
   margin:0 10px; 
}
/*矢印の設定*/
.slick-prev, 
.slick-next {
  position: absolute;
  top: 42%;
}
/*==//ドットナビゲーションの設定 //==*/
.slick-dots li button:before{
	color:#fff;
	opacity:1;
}
.slick-dots li.slick-active button:before{ color:gray; opacity:1; }

@media screen and (max-width:375px) {
  .slider .slick-slide {
    margin:0;
 }
 .slick-prev
{
    left: -10px;
}
.slick-next
{
    right: -10px;
}
}

/*==================================================
galleryスライダー用
===================================================*/
.gallery img {
  width: 100%;
  height: 400px;
}
.choice-btn img {
  width: 80px;
  height: 70px;
}
/*画像の横幅を100%にしてレスポンシブ化*/
img{
	width: 100%;
	height: auto;
	vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*メイン画像下に余白をつける*/
.gallery{
	margin:0 0 5px 0;
}
.gallery li{
list-style:none;
}
/****************************/
/*選択するサムネイル画像の設定*/
/****************************/
.choice-btn li{
	cursor: pointer;
	outline: none;
	background:#eee; /* <--- #333 から変更*/
	width:25%!important;
list-style:none;
}
.choice-btn li img{
	opacity: 0.6;/*選択されていないものは透過60%（40%から変更）*/
}
.choice-btn li.slick-current img{
	opacity: 1;/*選択されているものは透過しない*/
}
.choice-btn .slick-track {
	transform: unset !important;/*画面幅サイズ変更に伴うサムネイル固定*/
}

@media screen and (max-width:375px) {
  .gallery img {
    width: 100%;
    height: 256px;
    /* object-fit: cover; *//*とても微妙に変化する（とりあえず省略）*/
  }
  .choice-btn img {
    width: 100%;
  }
} 
/*===================================
ここから矢印　TOP画面用
===================================*/
.slide-arrow{
	position:absolute;
	/*上下中央に矢印配置*/
	top:50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	z-index:100;
	cursor:pointer;/*ポインター表示にし、クリック可能なことを視覚的にわかりやすくします*/
}
.slide-arrow::before{
	display:block;
	color:#fff;
	font-size:30px;
	font-weight:900;
	font-family:"Font Awesome 5 Free";
}
.next-arrow{ right:10px; }/*内側に右から10ピクセル移動*/
.prev-arrow{ left:10px; }/*内側に左から10ピクセル移動*/
.next-arrow::before{
	content:"\f054";/*右矢印のアイコンフォント*/
}
.prev-arrow::before{
	content:"\f053";/*左矢印アイコンフォント*/
}
/*マウスオーバーで矢印が灰色へ*/
.slide-arrow:hover::before{
	color:#888787;
}

/*===================================
section内SliderBoxのitem　
===================================*/
main section p {
  margin: 5px;
  font-size: 0.8em;
  font-weight: bold;
  color: black;
  text-align: center;
}
.ranking_number {
  text-align: center;
  background-color: #FAFCB1;
  font-size: 0.8em;
  font-weight: bold;
  color: black;
  padding: 3px;
  margin: 5px;
}
.product_name {
  margin: 5px;
  font-size: 0.8em;
  font-weight: bold;
  color: black;
  text-align: center;
}
.product_price {
  font-weight: lighter;
  margin: 5px;
  font-size: 0.8em;
  text-align: center;
}

/************　画像の拡大　*************/
.zoomIn img{
	transform: scale(1);
	transition: .3s ease-in-out;/*移り変わる速さを変更したい場合はこの数値を変更*/
}
.zoomIn a:hover img{/*hoverした時の変化*/
	transform: scale(1.2);/*拡大の値を変更したい場合はこの数値を変更*/
}
/*　画像のマスク　*/
.mask{
    display: block;
    line-height: 0;/*行の高さを0にする*/
    overflow: hidden;/*拡大してはみ出る要素を隠す*/
}
/*************************************/
.news_box {
  width: 100%;
  height: 150px;
  font-size: .9em;
  margin: 5px 0;
}
.news-list {
  margin: 10px;
}
.news-list li {
  margin: 5px 0;
}
.news-list a time {
  display: table-cell;
  padding: 0 1em 0 0;
  color: #7f7f7f;
}
.news-list a span {
  display: table-cell;
  color: #7f7f7f;
}
/***********Aside **********************/
aside {
  float: left;
  width: 225px;
  height: 800px;
}
aside section {
  width: 225px;
  height: auto;
  margin: 0 0 20px 0;
}
aside h4 {
  width: 90%;
  background-color: #dcd9d9;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  margin: 8px 2px;
  padding: 0.4em 0.5em;/*文字の上下 左右の余白*/
  color: #494949;/*文字色*/
  /* border-left: solid 5px #7db4e6;左線 */
  border-bottom: solid 3px #999797;/*下線*/
}
aside li {
  margin: 2px;
}
@media screen and (max-width:375px) {
  aside {
    float: none;
    width: auto;
    height: 100%;
  }
  aside section {
    width:auto;
    height: 200px;
  } 
  aside h4 {
    /* text-align: center; */
    width: auto;
  }
  aside li {
    width: 182px;
  }
  aside #banner01 {display: none;}
  aside #banner02 {display: none;}

  aside .category-select {
    /* width:auto; */
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    height: fit-content;
    justify-content: flex-start;
    align-items: stretch;
  }
   aside .after_img {display:none;}
   .category .after_img {display:block;}
}
/*********Button Design ***************/
/* 003 */

.button003 a {
  /* background: rgb(229, 229, 229);<--#eeeから変更 */
  background: #f4f4f4;/*背景色*/
  border-radius: 10px;
  position: relative;
  display: flex;
  justify-content: space-around;
    align-items: center;
    margin: 0;
    max-width: 200px;
    padding: 10px 10px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
}

.button003 a:hover {
  background: #888787;
  color: #FFF;
}
/* .button003 a:after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #313131;
  border-right: 3px solid #313131;
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 20px;
  border-radius: 1px;
  transition: 0.3s ease-in-out;
} */
.button003 a:hover:after {
  border-color: #FFF;
}

.button003 .before_img {
  width: 27px;
  height: 27px;
  float: left;
  margin: 0 0 0 7px;
}
.button003 .after_img {
  width: 15px;
  height: 15px;
}
@media screen and (max-width:375px) {
  .button003 .before_img {
    margin: 0 7px 0 7px;
  }
}
/***********ここまで**********************/

/***********Footer **********************/
footer {
  clear: both;
  background-color: rgb(6 42 132);
  color:#fff;
  font-size: .8em;
}
footer li {
  padding: 3px; 
}
footer .items {
  display: flex;
    flex-direction: row;
    align-content: flex-start;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
}
footer section {
  width: 308px;
  margin: 10px;
}
footer h4 {
    font-weight: bold;
    padding: 5px;
}
footer section ul {
  padding: 5px;
}
small {
  color:#fff;
  text-align: center;
  display: block;
  padding: 10px;
}
@media screen and (max-width:375px) {
  footer section {
    height:auto;
  } 
  footer .items{
    display:block;
    text-align: start;
    margin-left: 47px;
    padding: 10px;
  }
}