@charset "UTF-8";

:root {
  --gray: #8C8C8C;
  --red: #990100;
}

.fa {
  margin: 0 10px 0 0;
  font-size: 17px;
  color: #FFFFFF;
}


body {
    margin: 0;
    padding: 0;
  padding-top: 115px !important;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    color: #333;
    font-size: 16px;
    line-height: 125%;
    text-align: left;
    -webkit-text-size-adjust: 100%;
    background-color: #FFF;
    height: 100%;
    word-wrap: break-word;
}

/* Header
 ----------------------------------------------- */

#header-inner h1,
.sitecopy a {
  font-weight: 500;
}


#gnav div.cart-nav ul li span #gnav nav ul li span {
  display: block;
}


/*  Footer
 ----------------------------------------------- */

div#cart-footer,
footer {
  width: 100%;
  line-height: 100%;
  position: relative;
  margin: 0 !important;
  background: #EEEEEE;
}

div#cart-footer #footer-inner,
#footer-inner {
  padding: 0 0 30px 0;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  background: #DDDDDD;
}

footer #footer-inner {
  width: 100%;
}

#footer_copyright {
  background: #000000;
  border-top: solid 5px var(--red);
}

#footer_gnavi {}

div#cart-footer #footer-inner .footer_gnavi,
footer #footer-inner .footer_gnavi {
  /* float: left; */
  color: #fff;
  width: 1000px;
  text-align: center;
}

div#cart-footer #footer-inner .footer_gnavi ul li,
footer #footer-inner .footer_gnavi ul li {
  /* float: left; */
  display: inline-block;
  *display: inline;
  *margin-bottom: 12px;
  padding: 0 3px 0 18px;
  line-height: 100%;
  font-size: 75%;
  color: #fff;
}

div#cart-footer #footer-inner .footer_gnavi ul li:first-child,
footer #footer-inner .footer_gnavi ul li:first-child {
  background-image: none;
  padding: 0 3px 0 0;
}

div#cart-footer #footer-inner .footer_gnavi ul li a,
footer #footer-inner .footer_gnavi ul li a {
  color: #fff;
  /* フッターテキストリンク */
}

div#cart-footer div.cart-nav,
footer nav,
#copyright {

  font-size: 75%;
  color: #fff;
  width: 1000px;
  max-width: 100%;
  margin-top: 20px;
  padding-bottom: 10px;
}

#copyright {
  color: #444;
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  padding: 30px 0;
  position: relative;
  cursor: default;
}

#copyright {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#copyright ul.footer_left {

  padding: 35px 0 0 0;
}

#copyright ul li {
  color: #DDDDDD;
  /* コピーライトテキスト */
  background-image: none;
  padding: 0;
  margin: 0 10px 0 0;
  font-size: 12px;
  line-height: 180%;
  letter-spacing: 0.05em;
  cursor: default;
  text-align: left;
}

#copyright ul li a {
  color: #DDDDDD;
}

#copyright ul li a:hover {
  text-decoration: underline;
}

#copyright ul li#shop_coryright {
  color: #DDDDDD;
  letter-spacing: 0.08em;
  margin: 5px 10px 0 0;
  font-size: 11px;
  display: block;
  text-align: right;
}

#copyright ul li img {
  max-width: 160px;
  vertical-align: middle;
}

div#cart-footer #footer-inner .footer_gnavi ul li a:hover,
footer #footer-inner .footer_gnavi ul li a:hover {
  color: #DDDDDD;
  /* フッターテキストリンクオーバー */
  /* text-decoration: underline; */
}

#footer_info {
  width: 100%;
  background: #FFFFFF;
  border-top: solid 2px var(--red);
}

#footer_brand {
  width: 1000px;
  max-width: 100%;
  margin: 0 auto;
  padding: 50px 0 30px 0;
}

#footer_brand img {
  border: solid 1px #CCC;
}

#footer_brand ul li {
  float: left;
  margin: 0 22px 25px 0;
}

#footer_brand ul li:nth-child(5n) {
  margin: 0;
}

div#cart-footer div.cart-nav,
footer nav,
#copyright {
  float: none;
}

#copyright > ul.footer_left {
  margin-left: auto;
  width: 340px;
}


/*******************
レスポンシブ用
*******************/

/*******************
header
*******************/
.sp {
  display: none;
}

#contents {
  overflow: visible;
}

  header img {
    vertical-align: top;
  }

  .sp {
    display: block;
  }

  .pc {
    display: none;
  }

  #hNav ul#header-nav li#header-nav-drawer {
    border: none;
  }

  #gnav nav li:first-child a::before,
  #gnav a[href$="shoppinguide.html"]::before,
  #gnav a[href$="contact.cgi"]::before,
  #gnav a[href$="rating_list.html"]::before,
  #gnav a[href$="sitemap.html"]::before {
    background: none;
    content: none;
  }

  .sitecopy {
    display: none;
  }

  header #header-inner {
   
  }


  #header-tel i {
    margin: 0;
    color: #888;
    font-size: 30px;
  }

  #header-inner #logo {
    margin: 0;
  }

  #hNav ul#header-nav li {
    margin-top: 4px;
    margin-right: 46px;
  }

  #header-inner #hNav {
    margin: 0;
    padding: 0;
  }

#sps-menu ul.left li:first-child {
    padding: 0;
    max-width: 54px;
    width: 54px;
}

  .shoplogo {
   margin-left: 10px;
  }
.siteName{
  margin: 0;
}

  .siteName a {
    width: auto;
    position: static;
    white-space: nowrap;
    font-size: 10px;
    text-decoration: none;
    display: block;
    line-height: 1.6;
    letter-spacing: 0.06em;
  }

  .siteName a span {
    margin: 0 4px;
    font-size: 1.2em;
    color: var(--red);
  }

  #gnav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    left: 0;
    top:74px;
    width: 100%;
  }

  #gnav nav {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }

  #gnav div.cart-nav li a::before,
  #gnav nav li a::before {
    content: none;
  }

  #gnav div.cart-nav ul,
  #gnav nav ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 12px;
    margin: 0;
    padding: 0 16px;
    list-style: none;
    background-color: #000;
    border-bottom: 4px solid var(--red);
  }

  #gnav div.cart-nav ul li,
  #gnav nav ul li {
    background-color: transparent;
  }

  #gnav div.cart-nav ul li a,
  #gnav nav ul li a {
    padding: 10px;
    display: block;
    color: #fff;
  }

  #gnav li {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
    flex: 0 0 auto;
    display: block !important;
  }

  #gnav a {
    white-space: nowrap;
  }
#sps-menu {
    padding: 10px 2%;
  box-sizing: border-box;
}
#sps-menu img, #global-navi img {
   width: 100%;
}
#sps-menu li{
  list-style: none;
}
#sps-menu ul.left,
#sps-menu ul.left > li,
#sps-menu,
header #header-inner{
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
 -webkit-box-align: center;
 -webkit-align-items: center;
 align-items: center;
}
header #header-inner{
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%;
  
}
#sps-menu ul.left > li:nth-child(2){
  width: calc(100% - 54px);
  position: static;
}
#sps-menu ul.right{
  margin-left: auto;
}
#sps-menu ul.right li:last-child {
    padding: 0 0 0 8px;
}
#sps-menu ul.right{
  width: 34px;
}
#sps-menu ul.left{
    width: calc(100% - 34px);
    max-width: calc(100% - 34px);
}
#header-tel{
  padding-right: 15px;
}
#cart-icon{
  display: none;
}
#sps-menu ul li{
  display: block;
}
/*******************
side
*******************/

@media screen and (max-width: 768px) {
  .st-side-list{
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    gap:10px 2%;
    width: 100%;
  }
  .st-side-list > p{
    width: 49%;
  }
}



/*******************
footer
*******************/
.titlebar_list .accordion .titlebar {
  cursor: pointer;
}

.titlebar_list .accordion aside {
  display: none;
}

.titlebar_list .accordion.is-open aside {
  display: block;
}

.titlebar {
  background-color: #EEEEEE;
}

.titlebar h3 {
  padding: 15px 40px 15px 10px;
  color: #444444;
  font-weight: 500;
  font-size: 12px;
  border-bottom: 2px solid #fff;
  position: relative;
}

.titlebar h3:after {
  content: "+";
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 16px;
}

.is-open .titlebar h3:after {
  content: "−";
}

ul.listmenu {
  list-style: none;
  width: 100%;
  padding: 0;
  margin: 0 auto;
  border: none;
  background: transparent;
  border-radius: 0;
  -webkit-box-shadow: none;
}

ul.listmenu li {
  list-style: none;
  width: 100%;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #dddddd;
  background: transparent;
}

ul.listmenu li.categorylink {
  background: transparent;
}

ul.listmenu li a {
  position: relative;
  display: block;
  margin: 0;
  padding: 15px 40px 15px 10px;
  background: white;
  color: #333;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1.5;
  text-decoration: none;
}

ul.listmenu li a:before {
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 19px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #990100;
}

ul.listmenu li a:after {
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 22px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #ffffff;
}

ul.listmenu li.categorylink a {
  position: relative;
  display: block;
  margin: 0;
  padding: 15px 10px;
  background: #990100;
  color: #ffffff;
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1.5;
  text-decoration: none;
}

.sps-itemCategoryGroup {
  margin: 5px auto;
  width: 97%;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 5px;
}

.sps-itemCategoryGroup li {
  width: calc(100% / 2 - 2.5px)
}

.sps-itemCategoryGroup a {
  padding: 6px 17px 6px 5px;
  margin: 0;
  background: #F9F2E9 url(https://www.038n.com/img/theme/arrow2.png) no-repeat 97% center;
  color: #333;
  text-decoration: none;
  display: block;
  font-size: 12px;
}

.sps-itemCategoryGroup a span {
  padding: .5em 0;
  display: block;
}

ul.listmenu li.categorylink a:before {
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 19px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #ffffff;
}

ul.listmenu li.categorylink a:after {
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 22px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #990100;
}

@media screen and (max-width: 768px) {
  #contents {
    padding-bottom: 0;
  }
  .column4 .itemThumb a img,
  .column5 .itemThumb a img {
    aspect-ratio: 1 / 1;
    -o-object-fit: contain;
    object-fit: cover;
  }
  #page-top {
    right: 0;
  }
  #contents #main-column .footer_area,
  .footer_area{
    margin-left: -2%;
    width: 104%;
  }

  div#cart-footer #footer-inner,
  #footer-inner {
    padding: 0;
  }

  #footer_brand ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    gap: 10px 2%;
  }

  #footer_brand ul li {
    margin: 0;
    float: none;
    width: 49%;
  }

  div#cart-footer #footer-inner,
  #footer-inner {
    background: none;
  }

  .guidance_nav {
    padding: 0;
  }

  .guidance_nav h2 {
    margin-bottom: 10px;
    border: none;
    text-align: left;
    padding: 10px;
    background-color: #000;
    font-size: 14px;
    color: #fff;
    border: none;
    letter-spacing: 0.04em;
  }

  #copyright ul li {
    margin: 0 10px 20px 10px;
    text-align: center;
    width: calc(100% - 20px);
  }

  #copyright ul,
  #copyright ul.footer_left {
    padding: 0;
    width: 100%;
  }

}

#main-column .titlebar_list h2 span.first,
.titlebar_list h2 span.first{
  font-size: 22px;
  padding: 0 0 0 0px;
  letter-spacing: 0.07em;
  color: #444444;
}

#main-column .titlebar_list h2,
article#Detail #main-column .titlebar_list h2,
.titlebar_list h2{
  padding: 10px;
  background-color: #000;
  font-size: 20px;
  color: #fff;
  border: none;
  letter-spacing: 0.04em;
  line-height: 1.4;
  font-weight: 500;
    background-image: none;
}

#main-column .titlebar_list h2 span:not(.first),
.titlebar_list h2 span:not(.first){
  font-size: 14px;
  padding: 0 0 0 7px;
  letter-spacing: 1px;
}

/**************** guidance-box ****************/
@media screen and (max-width: 768px) {
  .guidance-box {
    width: 100%;
  }

  .guidance-box {
    margin: 0;
  }

  .guidance-box h3 {
    margin: 0;
    padding: 15px 40px 15px 10px;
    color: #444444;
    font-weight: 500;
    font-size: 12px;
    border-bottom: 2px solid #fff;
    position: relative;
    cursor: pointer;
    background-color: #EEEEEE;
  }

  .guidance-box h3::after {
    content: "+";
    position: absolute;
    right: 16px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 16px;
  }

  .guidance-box h3.is-open::after {
    content: "−";
  }

  .guidance-box h3 + div {
    display: none;
  }

  .guidance-box h3.is-open + div {
    padding: 10px;
    display: block;
  }
}