@charset "utf-8";
#header,#mv_section,#second_layout,#footer {
  font-size: 100%;
  text-align: left;
  !important;line-height: 2
}

#header select {
  height: auto
}

#header input {
  margin: 0
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,button,menu,nav,output,ruby,section,summary,time,mark,audio,video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: 400;
  vertical-align: baseline
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
  display: block
}

html {
  overflow-y: scroll
}

blockquote,q {
  quotes: none
}

blockquote:before,blockquote:after,q:before,q:after {
  content: '';
  content: none
}

input,textarea {
  margin: 0;
  padding: 0
}

ol,ul {
  list-style: none
}

caption,th {
  text-align: left
}

a:focus,button:focus {
  outline: none
}

button::-moz-focus-inner {
  border-style: none
}

.clearfix:after {
  content: " ";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden
}

.clearfix {
  min-height: 1px
}

* html .clearfix {
  height: 1px
}

.both {
  clear: both
}

.inline_block {
  display: inline-block;
  *display: inline;
  *zoom:1
}

.mt0 {
  margin-top: 0!important
}

.mt5 {
  margin-top: 5px!important
}

.mt10 {
  margin-top: 10px!important
}

.mt15 {
  margin-top: 15px!important
}

.mt20 {
  margin-top: 20px!important
}

.mt25 {
  margin-top: 25px!important
}

.mt30 {
  margin-top: 30px!important
}

.mt35 {
  margin-top: 35px!important
}

.mt40 {
  margin-top: 40px!important
}

.mt45 {
  margin-top: 45px!important
}

.mt50 {
  margin-top: 50px!important
}

.mt55 {
  margin-top: 55px!important
}

.mt60 {
  margin-top: 60px!important
}

.mt65 {
  margin-top: 65px!important
}

.mt70 {
  margin-top: 70px!important
}

.mt75 {
  margin-top: 75px!important
}

.mt80 {
  margin-top: 80px!important
}

.mt85 {
  margin-top: 85px!important
}

.mt90 {
  margin-top: 90px!important
}

.mt95 {
  margin-top: 95px!important
}

.mt100 {
  margin-top: 100px!important
}

.mt200 {
  margin-top: 200px!important
}

.mt300 {
  margin-top: 300px!important
}

.mt400 {
  margin-top: 400px!important
}

.mt500 {
  margin-top: 500px!important
}

.mb0 {
  margin-bottom: 0!important
}

.mb5 {
  margin-bottom: 5px!important
}

.mb10 {
  margin-bottom: 10px!important
}

.mb15 {
  margin-bottom: 15px!important
}

.mb20 {
  margin-bottom: 20px!important
}

.mb25 {
  margin-bottom: 25px!important
}

.mb30 {
  margin-bottom: 30px!important
}

.mb35 {
  margin-bottom: 35px!important
}

.mb40 {
  margin-bottom: 40px!important
}

.mb45 {
  margin-bottom: 45px!important
}

.mb50 {
  margin-bottom: 50px!important
}

.mb55 {
  margin-bottom: 55px!important
}

.mb60 {
  margin-bottom: 60px!important
}

.mb65 {
  margin-bottom: 65px!important
}

.mb70 {
  margin-bottom: 70px!important
}

.mb75 {
  margin-bottom: 75px!important
}

.mb80 {
  margin-bottom: 80px!important
}

.mb85 {
  margin-bottom: 85px!important
}

.mb90 {
  margin-bottom: 90px!important
}

.mb95 {
  margin-bottom: 95px!important
}

.mb100 {
  margin-bottom: 100px!important
}

.mb200 {
  margin-bottom: 200px!important
}

.mb300 {
  margin-bottom: 300px!important
}

.mb400 {
  margin-bottom: 400px!important
}

.mb500 {
  margin-bottom: 500px!important
}

.pt0 {
  padding-top: 0!important
}

.pt5 {
  padding-top: 5px!important
}

.pt10 {
  padding-top: 10px!important
}

.pt15 {
  padding-top: 15px!important
}

.pt20 {
  padding-top: 20px!important
}

.pt25 {
  padding-top: 25px!important
}

.pt30 {
  padding-top: 30px!important
}

.pt35 {
  padding-top: 35px!important
}

.pt40 {
  padding-top: 40px!important
}

.pt45 {
  padding-top: 45px!important
}

.pt50 {
  padding-top: 50px!important
}

.pt55 {
  padding-top: 55px!important
}

.pt60 {
  padding-top: 60px!important
}

.pt65 {
  padding-top: 65px!important
}

.pt70 {
  padding-top: 70px!important
}

.pt75 {
  padding-top: 75px!important
}

.pt80 {
  padding-top: 80px!important
}

.pt85 {
  padding-top: 85px!important
}

.pt90 {
  padding-top: 90px!important
}

.pt95 {
  padding-top: 95px!important
}

.pt100 {
  padding-top: 100px!important
}

.pt200 {
  padding-top: 200px!important
}

.pt300 {
  padding-top: 300px!important
}

.pt400 {
  padding-top: 400px!important
}

.pt500 {
  padding-top: 500px!important
}

.pb0 {
  padding-bottom: 0!important
}

.pb5 {
  padding-bottom: 5px!important
}

.pb10 {
  padding-bottom: 10px!important
}

.pb15 {
  padding-bottom: 15px!important
}

.pb20 {
  padding-bottom: 20px!important
}

.pb25 {
  padding-bottom: 25px!important
}

.pb30 {
  padding-bottom: 30px!important
}

.pb35 {
  padding-bottom: 35px!important
}

.pb40 {
  padding-bottom: 40px!important
}

.pb45 {
  padding-bottom: 45px!important
}

.pb50 {
  padding-bottom: 50px!important
}

.pb55 {
  padding-bottom: 55px!important
}

.pb60 {
  padding-bottom: 60px!important
}

.pb65 {
  padding-bottom: 65px!important
}

.pb70 {
  padding-bottom: 70px!important
}

.pb75 {
  padding-bottom: 75px!important
}

.pb80 {
  padding-bottom: 80px!important
}

.pb85 {
  padding-bottom: 85px!important
}

.pb90 {
  padding-bottom: 90px!important
}

.pb95 {
  padding-bottom: 95px!important
}

.pb100 {
  padding-bottom: 100px!important
}

.pb200 {
  padding-bottom: 200px!important
}

.pb300 {
  padding-bottom: 300px!important
}

.pb400 {
  padding-bottom: 400px!important
}

.pb500 {
  padding-bottom: 500px!important
}

.hover_effect01 {
  transition: 0.2s
}

a:hover {
  text-decoration: none
}

img {
  vertical-align: top
}

@media screen and (min-width: 1001px) {
  .hover_effect01:hover {
    opacity:.7
  }
}

.suptext {
  font-size: 75.5%;
  vertical-align: top;
  position: relative;
  top: -.1em;
  font-weight: inherit
}

.subtext {
  font-size: 75.5%;
  vertical-align: baseline;
  position: relative;
  font-weight: inherit
}

#colorbox,#cboxOverlay,#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden
}

#cboxWrapper {
  max-width: none;
  background-color: transparent
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%
}

#cboxMiddleLeft,#cboxBottomLeft {
  clear: left
}

#cboxContent {
  position: relative
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch
}

#cboxTitle {
  margin: 0
}

#cboxLoadingOverlay,#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow {
  cursor: pointer
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0
}

#colorbox,#cboxContent,#cboxLoadedContent {
  box-sizing: content-box
}

#cboxOverlay {
  background: #008077
}

#colorbox {
  outline: 0
}

#cboxContent {
  padding: 0;
  overflow: visible
}

#cboxError {
  padding: 0;
  border: 1px solid #ccc
}

#cboxLoadedContent {
  margin: 40px 0
}

#cboxTitle {
  position: absolute;
  top: -22px;
  left: 0;
  color: #000
}

#cboxCurrent {
  position: absolute;
  top: -22px;
  right: 205px;
  text-indent: -9999px
}

#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  text-indent: -9999px;
  width: 20px;
  height: 20px;
  position: absolute
}

#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active {
  outline: 0
}

#cboxPrevious {
  background-position: 0 0;
  right: 44px
}

#cboxPrevious:hover {
  background-position: 0 -25px
}

#cboxNext {
  background-position: -25px 0;
  right: 22px
}

#cboxNext:hover {
  background-position: -25px -25px
}

#cboxClose {
  position: absolute;
  right: 0;
  top: 0;
  width: 34px;
  height: 34px;
  border: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(/assets/images/close.png);
  background-color: transparent;
  background-size: 100% auto;
  outline: none;
  transition: .35s
}

.cboxSlideshow_on #cboxPrevious,.cboxSlideshow_off #cboxPrevious {
  right: 66px
}

.cboxSlideshow_on #cboxSlideshow {
  background-position: -75px -25px;
  right: 44px
}

.cboxSlideshow_on #cboxSlideshow:hover {
  background-position: -100px -25px
}

.cboxSlideshow_off #cboxSlideshow {
  background-position: -100px 0;
  right: 44px
}

.cboxSlideshow_off #cboxSlideshow:hover {
  background-position: -75px -25px
}

.cboxFullScreen #cboxContent {
  padding: 0
}

.cboxFullScreen #cboxClose {
  right: 20px;
  top: 20px
}

@media screen and (min-width: 1201px) {
  #cboxClose:hover {
    opacity:.7
  }
}

@media screen and (max-width: 640px) {
  .mt5 {
    margin-top:2.5px!important
  }

  .mt10 {
    margin-top: 5px!important
  }

  .mt15 {
    margin-top: 7.5px!important
  }

  .mt20 {
    margin-top: 10px!important
  }

  .mt25 {
    margin-top: 12.5px!important
  }

  .mt30 {
    margin-top: 15px!important
  }

  .mt35 {
    margin-top: 17.5px!important
  }

  .mt40 {
    margin-top: 20px!important
  }

  .mt45 {
    margin-top: 22.5px!important
  }

  .mt50 {
    margin-top: 25px!important
  }

  .mt55 {
    margin-top: 27.5px!important
  }

  .mt60 {
    margin-top: 30px!important
  }

  .mt65 {
    margin-top: 32.5px!important
  }

  .mt70 {
    margin-top: 35px!important
  }

  .mt75 {
    margin-top: 37.5px!important
  }

  .mt80 {
    margin-top: 40px!important
  }

  .mt85 {
    margin-top: 42.5px!important
  }

  .mt90 {
    margin-top: 45px!important
  }

  .mt95 {
    margin-top: 47.5px!important
  }

  .mt100 {
    margin-top: 50px!important
  }

  .mt200 {
    margin-top: 100px!important
  }

  .mt300 {
    margin-top: 150px!important
  }

  .mt400 {
    margin-top: 200px!important
  }

  .mt500 {
    margin-top: 250px!important
  }

  .mb5 {
    margin-bottom: 2.5px!important
  }

  .mb10 {
    margin-bottom: 5px!important
  }

  .mb15 {
    margin-bottom: 7.5px!important
  }

  .mb20 {
    margin-bottom: 10px!important
  }

  .mb25 {
    margin-bottom: 12.5px!important
  }

  .mb30 {
    margin-bottom: 15px!important
  }

  .mb35 {
    margin-bottom: 17.5px!important
  }

  .mb40 {
    margin-bottom: 20px!important
  }

  .mb45 {
    margin-bottom: 22.5px!important
  }

  .mb50 {
    margin-bottom: 25px!important
  }

  .mb55 {
    margin-bottom: 27.5px!important
  }

  .mb60 {
    margin-bottom: 30px!important
  }

  .mb65 {
    margin-bottom: 32.5px!important
  }

  .mb70 {
    margin-bottom: 35px!important
  }

  .mb75 {
    margin-bottom: 37.5px!important
  }

  .mb80 {
    margin-bottom: 40px!important
  }

  .mb85 {
    margin-bottom: 42.5px!important
  }

  .mb90 {
    margin-bottom: 45px!important
  }

  .mb95 {
    margin-bottom: 47.5px!important
  }

  .mb100 {
    margin-bottom: 50px!important
  }

  .mb200 {
    margin-bottom: 100px!important
  }

  .mb300 {
    margin-bottom: 150px!important
  }

  .mb400 {
    margin-bottom: 200px!important
  }

  .mb500 {
    margin-bottom: 250px!important
  }

  .pt5 {
    padding-top: 2.5px!important
  }

  .pt10 {
    padding-top: 5px!important
  }

  .pt15 {
    padding-top: 7.5px!important
  }

  .pt20 {
    padding-top: 10px!important
  }

  .pt25 {
    padding-top: 12.5px!important
  }

  .pt30 {
    padding-top: 15px!important
  }

  .pt35 {
    padding-top: 17.5px!important
  }

  .pt40 {
    padding-top: 20px!important
  }

  .pt45 {
    padding-top: 22.5px!important
  }

  .pt50 {
    padding-top: 25px!important
  }

  .pt55 {
    padding-top: 27.5px!important
  }

  .pt60 {
    padding-top: 30px!important
  }

  .pt65 {
    padding-top: 32.5px!important
  }

  .pt70 {
    padding-top: 35px!important
  }

  .pt75 {
    padding-top: 37.5px!important
  }

  .pt80 {
    padding-top: 40px!important
  }

  .pt85 {
    padding-top: 42.5px!important
  }

  .pt90 {
    padding-top: 45px!important
  }

  .pt95 {
    padding-top: 47.5px!important
  }

  .pt100 {
    padding-top: 50px!important
  }

  .pt200 {
    padding-top: 100px!important
  }

  .pt300 {
    padding-top: 150px!important
  }

  .pt400 {
    padding-top: 200px!important
  }

  .pt500 {
    padding-top: 250px!important
  }

  .pb5 {
    padding-bottom: 2.5px!important
  }

  .pb10 {
    padding-bottom: 5px!important
  }

  .pb15 {
    padding-bottom: 7.5px!important
  }

  .pb20 {
    padding-bottom: 10px!important
  }

  .pb25 {
    padding-bottom: 12.5px!important
  }

  .pb30 {
    padding-bottom: 15px!important
  }

  .pb35 {
    padding-bottom: 17.5px!important
  }

  .pb40 {
    padding-bottom: 20px!important
  }

  .pb45 {
    padding-bottom: 22.5px!important
  }

  .pb50 {
    padding-bottom: 25px!important
  }

  .pb55 {
    padding-bottom: 27.5px!important
  }

  .pb60 {
    padding-bottom: 30px!important
  }

  .pb65 {
    padding-bottom: 32.5px!important
  }

  .pb70 {
    padding-bottom: 35px!important
  }

  .pb75 {
    padding-bottom: 37.5px!important
  }

  .pb80 {
    padding-bottom: 40px!important
  }

  .pb85 {
    padding-bottom: 42.5px!important
  }

  .pb90 {
    padding-bottom: 45px!important
  }

  .pb95 {
    padding-bottom: 47.5px!important
  }

  .pb100 {
    padding-bottom: 50px!important
  }

  .pb200 {
    padding-bottom: 100px!important
  }

  .pb300 {
    padding-bottom: 150px!important
  }

  .pb400 {
    padding-bottom: 200px!important
  }

  .pb500 {
    padding-bottom: 250px!important
  }

  #cboxClose {
    width: 30px;
    height: 30px;
    top: 0
  }
}

html {
  font-size: 62.5%
}

body #header,#second_layout,#maincategory_section {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Osaka,sans-serif;
  font-weight: 400;
  -webkit-text-size-adjust: none;
  color: #250505;
  box-sizing: border-box
}

::selection {
  background: #ec0303;
  color: #fff
}

::-moz-selection {
  background: #ec0303;
  color: #fff
}

table td strong,table td b {
  font-weight: 700
}

#header a,span,i {
  color: inherit;
  font-weight: inherit
}

#footer a,span,i {
  color: inherit;
  font-weight: inherit
}

#second_layout a,span,i {
  color: inherit;
  font-weight: inherit
}

#maincategory_section a,span,i {
  color: inherit;
  font-weight: inherit
}

#header a {
  text-decoration: none;
  transition: .25s
}

#maincategory_section a {
  text-decoration: none;
  transition: .25s
}

.sp_only {
  display: none!important
}

.tab_only {
  display: none!important
}

#header img {
  max-width: 100%
}

#second_layout img {
  max-width: 100%
}

#maincategory_section img {
  max-width: 100%
}

#footer img {
  max-width: 100%
}

.preload * {
  -webkit-transition: none!important;
  -moz-transition: none!important;
  -ms-transition: none!important;
  -o-transition: none!important;
  transition: none!important
}

.sponly_section {
  display: none!important
}

.panel {
  display: none
}

.panel.is-show {
  display: block
}

.titlestyle01 {
  font-size: 2.4rem;
  letter-spacing: .05rem;
  position: relative;
  margin-bottom: 50px;
  padding-bottom: 30px;
  line-height: 1.3
}

.titlestyle01::before,.titlestyle01::after {
  content: " ";
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0
}

.titlestyle01::before {
  background-color: #ddd;
  width: 100%
}

.titlestyle01::after {
  background-color: #ec0303;
  width: 8%
}

.titlestyle02 {
  font-size: 1.8rem;
  letter-spacing: .025rem;
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 30px;
  line-height: 1.3;
  font-weight: 500
}

.titlestyle02::after {
  content: " ";
  width: 40px;
  height: 3px;
  background-color: #ec0303;
  position: absolute;
  bottom: 0;
  left: 0
}

#header #subheader {
  padding: 10px 2.2%;
  background-color: #ec0303;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.2;
  letter-spacing: .05em
}

#header #subheader>div {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center
}

#header #subheader .leftbox,#header #subheader .rightbox {
  width: 49%
}

#header #subheader .leftbox p {
  opacity: .75
}

#header #subheader .rightbox ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end
}

#header #subheader .rightbox ul li:not(:last-child) {
  margin-right: 3em
}

#header #subheader .rightbox ul li a {
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 100%;
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_subicon02.png);
  padding: 3px 0 3px 2.5em;
  font-weight: 500
}

#header #subheader .rightbox ul li:first-child a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_subicon01.png)
}

#header #subheader .rightbox ul li:last-child a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_subicon03.png)
}

#header #subheader .rightbox ul li.hj a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_subicon04.png)!important
}

#header #mainheader {
  position: relative;
  z-index: 4;
  background-color: #fff;
  padding: 15px 2.2%;
  box-shadow: 0 2px 2px rgba(0,0,0,.06)
}

#header #mainheader>div {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center
}

#header #mainheader .leftbox .h_logo {
  width: 250px
}

#header #mainheader .rightbox,#header #mainheader .rightbox ul,#header #mainheader .rightbox #cartbox,#header #mainheader .rightbox #cartbox #visitor {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center
}

#header #mainheader .rightbox ul li {
  border-left: solid 1px #ddd
}

#header #mainheader .rightbox ul li:last-child {
  border-right: solid 1px #ddd
}

#header #mainheader .rightbox ul li a {
  display: block;
  padding: 40px 1.65em 0;
  font-size: 1.35rem;
  font-weight: 500;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: auto 38px
}

#header #mainheader .rightbox ul li.h_icon01 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_icon01.png)
}

#header #mainheader .rightbox ul li.h_icon02 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_icon02.png)
}

#header #mainheader .rightbox ul li.h_icon03 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/h_icon03.png);
  letter-spacing: -.05em
}

#header #mainheader .rightbox #cartbox {
  margin-left: 1.5em;
  border: solid 1px #ddd;
  border-radius: 4px;
  overflow: hidden
}

#header #mainheader .rightbox #cartbox #visitor .leftbox {
  width: 90px
}

#header #mainheader .rightbox #cartbox #visitor .leftbox a {
  display: block;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  padding: 40px 10px 10px;
  background: url(https://dist.joshinweb.jp/assets/images/common/h_icon04.png) no-repeat center 5px #ec0303;
  background-size: auto 35px
}

#header #mainheader .rightbox #cartbox #visitor .rightbox {
  min-width: 180px;
  max-width: 300px;
  font-size: 1.2rem;
  padding-left: 10px;
  width: auto
}

#header #mainheader .rightbox #cartbox #visitor .rightbox dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 0;
  box-sizing: border-box
}

#header #mainheader .rightbox #cartbox #visitor .rightbox dl dt {
  font-weight: 700;
  margin-right: .51em
}

/*----------------------------------------------------*
 * header logo
 *----------------------------------------------------*/
#header .h_logo .h_logo_box,
#footer .h_logo .h_logo_box {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  box-sizing: border-box;
}

#header .h_logo .h_logo_box *,
#footer .h_logo .h_logo_box * {
  box-sizing: border-box;
}

#header .h_logo .h_logo_box img,
#footer .h_logo .h_logo_box img {
  display: block;
  margin: auto;
}

#header .h_logo .h_logo_left,
#footer .h_logo .h_logo_left {
  width: 80%;
}

#header .h_logo .h_logo_right,
#footer .h_logo .h_logo_right {
  width: 16%;
  margin: auto;
}

@media screen and (min-width: 1025px) {
  #header #mainheader .leftbox .h_logo,
  #footer #f_subnavibox .leftbox .h_logo {
    width: 300px !important;
  }
}

@media screen and (min-width: 1001px) and (max-width: 1024px) {
  #header #mainheader .leftbox .h_logo,
  #footer #f_subnavibox .leftbox .h_logo {
    width: 190px !important;
  }
}
/*----------------------------------------------------*/

#header #searchheader,#header #searchheader #select_search_box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

#header #searchheader {
  position: relative;
  z-index: 3;
  background-color: #ebeaea;
  padding-left: 18.33333%
}

#header #searchheader #select_search_box {
  padding: 15px 0 11px;
  box-sizing: border-box;
  width: 74.8599%
}

#header #searchheader #select_search_box input,#header #searchheader #select_search_box label select {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  border: solid 1px #fff;
  background-color: #fff;
  padding: 12px 1rem;
  font-size: 1.4rem;
  line-height: 1.25;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  font-family: YakuHanJP,"Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Osaka,sans-serif
}

#header #searchheader #select_search_box label select::-ms-expand {
  display: none
}

#header #searchheader #select_search_box label {
  position: relative;
  width: 100%;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  margin: 0
}

#header #searchheader #select_search_box label::before,#header #searchheader #select_search_box label::after {
  content: " ";
  position: absolute;
  pointer-events: none
}

#header #searchheader #select_search_box label::before {
  background-color: #ec0303;
  width: 30px;
  height: 100%;
  right: 0;
  top: 0;
  z-index: 2;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px
}

#header #searchheader #select_search_box label::after {
  border-left: solid 2px #fff;
  border-bottom: solid 2px #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  right: 11px;
  top: 17px;
  width: 6px;
  height: 6px;
  z-index: 3
}

#header #searchheader #select_search_box label select {
  padding: 13px 40px 13px 1em;
  margin: 0
}

#header #searchheader #select_search_box input {
  height: 46px
}

#header #searchheader #select_search_box #select_box {
  width: 27.27%
}

#header #searchheader #select_search_box #search_box {
  width: 70%;
  position: relative
}

#header #searchheader #select_search_box #search_box a {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 35%;
  background-image: url(https://dist.joshinweb.jp/assets/images/common/search_icon01.png);
  background-color: #ec0303;
  width: 10%;
  min-width: 60px;
  height: 46px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden
}

#header #searchheader #login_box {
  width: 20.4%
}

#header #searchheader #login_box #login_type1 {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: 76.72px
}

#header #searchheader #login_box #login_type1>li {
  width: 50%
}

#header #searchheader #login_box #login_type1>li a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 76.72px;
  color: #fff;
  font-size: 1.5rem;
  letter-spacing: .045em;
  font-weight: 500;
  line-height: 1.4;
  text-align: center
}

#header #searchheader #login_box #login_type1 li.login01 {
  background: #e2ba00;
  background: -moz-linear-gradient(#e29500 0%,#e2ba00 100%);
  background: -webkit-gradient(linear,left top,left bottom,from(#e29500),to(#e2ba00));
  background: -webkit-linear-gradient(#e29500 0%,#e2ba00 100%);
  background: -o-linear-gradient(#e29500 0%,#e2ba00 100%);
  background: linear-gradient(#e29500 0%,#e2ba00 100%)
}

#header #searchheader #login_box #login_type1 li.login02 {
  background: #ec0303;
  background: -moz-linear-gradient(#f76049 0%,#ec0303 100%);
  background: -webkit-gradient(linear,left top,left bottom,from(#f76049),to(#ec0303));
  background: -webkit-linear-gradient(#f76049 0%,#ec0303 100%);
  background: -o-linear-gradient(#f76049 0%,#ec0303 100%);
  background: linear-gradient(#f76049 0%,#ec0303 100%)
}

#header #searchheader #login_box #login_type1 li.login01 i {
  display: inline-block;
  text-align: center;
  font-size: 1.1rem;
  font-weight: 700;
  color: #ffd801;
  background-color: #784f00;
  border-radius: 10px;
  padding: 3px 1em;
  line-height: 1
}

#header #searchheader #login_box2 {
  width: 24%;
  background: #ec0303;
  background: -moz-linear-gradient(#f76049 0%,#ec0303 100%);
  background: -webkit-gradient(linear,left top,left bottom,from(#f76049),to(#ec0303));
  background: -webkit-linear-gradient(#f76049 0%,#ec0303 100%);
  background: -o-linear-gradient(#f76049 0%,#ec0303 100%);
  background: linear-gradient(#f76049 0%,#ec0303 100%);
  box-sizing: border-box;
  padding: 10px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  line-height: 1.4
}

#header #searchheader #login_box2 .leftbox {
  width: 27%;
  text-align: center;
  color: #fff
}

#header #searchheader #login_box2 .leftbox dl dt {
  font-size: 1.1rem
}

#header #searchheader #login_box2 .leftbox dl dd {
  font-size: 1.45rem;
  font-weight: 700;
  color: #ffff01
}

#header #searchheader #login_box2 .rightbox {
  width: 72%;
  background-color: #fff;
  border-radius: 2px;
  box-sizing: border-box;
  padding: 5px 5%
}

#header #searchheader #login_box2 .rightbox dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  font-size: 1.2rem;
  padding: 2px 0
}

#header #searchheader #login_box2 .rightbox dl dt {
  letter-spacing: -.075em
}

#header #searchheader #login_box2 .rightbox dl dd {
  color: #ec0303;
  font-weight: 700;
  margin-right: 1em
}

#maincategory_section {
  position: absolute;
  margin-top: -63px;
  background-color: #fff;
  box-shadow: 0 0 3px rgba(0,0,0,.2);
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
  z-index: 999;
  width: 16.6%
}

#maincategory_section h2 {
  position: relative;
  color: #fff;
  background-color: #7d7676;
  line-height: 1.2;
  font-size: 1.5rem;
  font-weight: 500;
  padding: 16px 20% 16px 10%;
  border-top-right-radius: 6px
}

#maincategory_section h2 span {
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  margin-top: -8px
}

#maincategory_section h2 span i {
  display: block;
  width: 20px;
  height: 2px;
  background-color: #fff;
  margin-bottom: 4px
}

#maincategory_section ul.maincategory_list {
  padding: 16px 0;
  box-sizing: border-box
}

#maincategory_section ul.maincategory_list>li {
  position: relative;
  line-height: 1.45
}

#maincategory_section ul.maincategory_list>li>a {
  display: block;
  color: #615757;
  padding: 4px 10%
}

@media screen and (max-width: 1500px) {
  #maincategory_section ul.maincategory_list>li>a {
    font-size:1.3rem;
    line-height: 1.2
  }
}

@media screen and (max-width: 1300px) {
  #maincategory_section ul.maincategory_list>li>a {
    padding:2px 5%;
    line-height: 1.2
  }
}

#maincategory_section ul.maincategory_list>li>a>i {
  font-size: .8em;
  letter-spacing: -.05em
}

#maincategory_section ul.maincategory_list>li dl {
  display: none;
  z-index: 3;
  position: absolute;
  top: -35px;
  left: 100%;
  width: 360%;
  background-color: rgba(255,255,255,.98);
  border-top: solid 1px #ddd;
  border-right: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  box-sizing: border-box;
  padding: 35px 10%
}

#maincategory_section ul.maincategory_list>li dl dt {
  position: relative;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.3;
  padding-bottom: 20px;
  margin-bottom: 30px
}

#maincategory_section ul.maincategory_list>li dl dt::after {
  content: " ";
  width: 40px;
  height: 3px;
  background-color: #ec0303;
  position: absolute;
  bottom: 0;
  left: 0
}

#maincategory_section ul.maincategory_list>li dl dd ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

#maincategory_section ul.maincategory_list>li dl dd ul::after {
  content: "";
  display: block;
  width: 30.333%;
  height: 0
}

#maincategory_section ul.maincategory_list>li dl dd ul li {
  width: 30.333%;
  color: #615757;
  font-size: 1.4rem;
  margin-bottom: 4px
}

@media screen and (min-width: 1001px) {
  body {
    max-width:2048px;
    margin: 0 auto
  }

  #header #subheader .rightbox ul li a:hover,#header #mainheader .leftbox .h_logo a:hover {
    opacity: .65
  }

  #header #mainheader .rightbox ul li a:hover {
    color: #ec0303
  }

  #header #mainheader .rightbox #cartbox #visitor .rightbox a:hover {
    text-decoration: underline;
    color: #ec0303
  }

  #header #mainheader .rightbox #cartbox #visitor .leftbox a:hover,#header #searchheader #select_search_box #search_box a:hover {
    background-color: #a40404
  }

  #header #searchheader #login_box #login_type1 li.login01 a:hover {
    background-color: #c08600
  }

  #header #searchheader #login_box #login_type1 li.login02 a:hover {
    background-color: #b90404
  }

  #maincategory_section ul.maincategory_list>li dl dt a:hover {
    color: #ec0303
  }

  #maincategory_section ul.maincategory_list>li dl dd ul li a:hover {
    text-decoration: underline;
    color: #ec0303
  }

  #maincategory_section ul.maincategory_list>li {
    transition: .4s
  }

  #maincategory_section ul.maincategory_list>li:hover {
    background-color: #f8f4f4
  }

  #header #searchheader #select_search_box input,#header #searchheader #select_search_box select,#header #searchheader #select_search_box #search_box a {
    height: 46px
  }

  #suggest {
    width: 65%
  }
}

@media screen and (max-width: 1000px) {
  .pc_only {
    display:none!important
  }

  .acMenu dd {
    display: none
  }

  .usersnavi {
    background-color: #7d7676;
    color: #fff;
    text-align: center
  }

  .usersnavi>ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .usersnavi>ul>li {
    width: 25%;
    box-sizing: border-box;
    border-left: solid 1px rgba(255,255,255,.3)
  }

  .usersnavi>ul>li>a,.usersnavi>ul>li>dl>dt {
    position: relative;
    display: block;
    font-size: 1.15rem;
    font-weight: 500;
    background-repeat: no-repeat;
    background-position: center 3px;
    background-size: auto 36px;
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon01.png);
    padding: 36px 0 5px 0
  }

  .usersnavi>ul>li.usersnavi01>dl>dt::after {
    content: " ";
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    bottom: 7px;
    right: 7px;
    opacity: .75
  }

  .usersnavi>ul>li.usersnavi02>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon02.png)
  }

  .usersnavi>ul>li.usersnavi03>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon03.png)
  }

  .usersnavi>ul>li.usersnavi04>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon04.png)
  }

  .usersnavi>ul>li dl dd {
    position: relative;
    width: 402%;
    background-color: #f0f0f0;
    box-sizing: border-box;
    padding: 15px 18%
  }

  .sp_category_list {
    border-top: solid 1px #ddd;
    border-right: solid 1px #ddd;
    border-left: solid 1px #ddd;
    background-color: #fff;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .sp_category_list>li {
    width: 50%;
    box-sizing: border-box;
    font-size: 1.2rem;
    color: #250505;
    text-align: left;
    border-bottom: solid 1px #ddd
  }

  .sp_category_list>li:nth-child(odd) {
    border-right: solid 1px #ddd
  }

  .sp_category_list>li a {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background-repeat: no-repeat;
    background-position: 5px center;
    line-height: 1.2;
    padding: 0 5% 0 48px;
    background-size: 38px auto;
    min-height: 50px;
    box-sizing: border-box
  }

  .sp_category_list>li a>span i {
    display: block;
    font-size: .8em;
    letter-spacing: -.075rem
  }

  .sp_category_list>li.sp_category_list01 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img01.jpg)
  }

  .sp_category_list>li.sp_category_list02 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img02.jpg)
  }

  .sp_category_list>li.sp_category_list03 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img03.jpg)
  }

  .sp_category_list>li.sp_category_list04 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img04.jpg)
  }

  .sp_category_list>li.sp_category_list05 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img05.jpg)
  }

  .sp_category_list>li.sp_category_list06 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img06.jpg)
  }

  .sp_category_list>li.sp_category_list07 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img07.jpg)
  }

  .sp_category_list>li.sp_category_list08 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img08.jpg)
  }

  .sp_category_list>li.sp_category_list09 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img09.jpg)
  }

  .sp_category_list>li.sp_category_list10 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img10.jpg)
  }

  .sp_category_list>li.sp_category_list11 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img11.jpg)
  }

  .sp_category_list>li.sp_category_list12 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img12.jpg)
  }

  .sp_category_list>li.sp_category_list13 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img13.jpg)
  }

  .sp_category_list>li.sp_category_list14 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img14.jpg)
  }

  .sp_category_list>li.sp_category_list15 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img15.jpg)
  }

  .sp_category_list>li.sp_category_list16 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img16.jpg)
  }

  .sp_category_list>li.sp_category_list17 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img17.jpg)
  }

  .sp_category_list>li.sp_category_list18 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img18.jpg)
  }

  .sp_category_list>li.sp_category_list19 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img19.jpg)
  }

  .sp_category_list>li.sp_category_list20 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img20.jpg)
  }

  .sp_category_list>li.sp_category_list21 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img21.jpg)
  }

  .sp_category_list>li.sp_category_list22 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img22.jpg)
  }

  .sp_category_list>li.sp_category_list23 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img23.jpg)
  }

  .sp_category_list>li.sp_category_list24 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img24.jpg)
  }

  .sp_category_list>li.sp_category_list25 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img25.jpg)
  }

  .sp_category_list>li.sp_category_list26 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img26.jpg)
  }

  .sp_category_list>li.sp_category_list27 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img27.jpg)
  }

  .sp_category_list>li.sp_category_list28 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img28.jpg)
  }

  #header #subheader,#header #mainheader .rightbox,#header #searchheader #login_box,#header #searchheader #login_box2,#maincategory_section {
    display: none
  }

  .sponly_section {
    display: block!important
  }

  #header #mainheader {
    height: 50px;
    box-sizing: border-box;
    padding: 0 5%
  }

  #header #mainheader>div {
    justify-content: center
  }

  #header #mainheader .leftbox .h_logo {
    width: 80%;
    max-width: 200px;
    margin: 0 auto;
    padding: 12px 0;
  }

  .sp_navi #nav-toggle {
    display: block;
    top: 10px;
    position: absolute;
    left: 0;
    z-index: 2;
    box-sizing: border-box;
    padding: 0 14px
  }

  .sp_navi #nav-toggle div {
    position: relative
  }

  .sp_navi #nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 90%;
    left: 5%;
    background: red
  }

  .sp_navi #nav-toggle i {
    display: block;
    font-size: .8rem;
    padding-top: 22px;
    color: #ec0303;
    text-align: center;
    font-weight: 500
  }

  .sp_navi #nav-toggle i.closetext {
    display: none
  }

  .sp_navi.open #nav-toggle i.opentext {
    display: none
  }

  .sp_navi.open #nav-toggle i.closetext {
    display: block
  }

  .sp_navi #nav-toggle span:nth-child(1) {
    top: 0;
    transition: .35s ease-in-out .1s
  }

  .sp_navi #nav-toggle span:nth-child(2) {
    top: 8px;
    transition: .185s ease-in-out
  }

  .sp_navi #nav-toggle span:nth-child(3) {
    top: 16px;
    transition: .35s ease-in-out .08s
  }

  .sp_navi.open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg)
  }

  .sp_navi.open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%
  }

  .sp_navi.open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg)
  }

  .sp_navi #nav-list {
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    height: 0;
    transition: .4s ease-out;
    overflow: hidden;
    background-color: rgba(235,234,234,.98)
  }

  .sp_navi.open #nav-list {
    height: 100vh;
    box-sizing: border-box;
    overflow-y: scroll;
    padding-bottom: 200px;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch
  }

  .sp_navi #nav-list .nav-list01 {
    padding: 12px 3.5%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .sp_navi #nav-list .nav-list01 li {
    width: 50%;
    height: 50px
  }

  .sp_navi #nav-list .nav-list01 li a {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 1.3rem;
    letter-spacing: .045em;
    font-weight: 500;
    line-height: 1.4;
    text-align: center
  }

  .sp_navi #nav-list .nav-list01 li.nav-list01_001 {
    background: #e2ba00;
    background: -moz-linear-gradient(#e29500 0%,#e2ba00 100%);
    background: -webkit-gradient(linear,left top,left bottom,from(#e29500),to(#e2ba00));
    background: -webkit-linear-gradient(#e29500 0%,#e2ba00 100%);
    background: -o-linear-gradient(#e29500 0%,#e2ba00 100%);
    background: linear-gradient(#e29500 0%,#e2ba00 100%)
  }

  .sp_navi #nav-list .nav-list01 li.nav-list01_002 {
    background: #ec0303;
    background: -moz-linear-gradient(#f76049 0%,#ec0303 100%);
    background: -webkit-gradient(linear,left top,left bottom,from(#f76049),to(#ec0303));
    background: -webkit-linear-gradient(#f76049 0%,#ec0303 100%);
    background: -o-linear-gradient(#f76049 0%,#ec0303 100%);
    background: linear-gradient(#f76049 0%,#ec0303 100%)
  }

  .sp_navi #nav-list .nav-list01 li.nav-list01_001 i {
    display: inline-block;
    text-align: center;
    font-size: 1rem;
    font-weight: 700;
    color: #ffd801;
    background-color: #784f00;
    border-radius: 10px;
    padding: 3px 1em;
    line-height: 1;
    margin-left: .25em
  }

  .sp_navi #nav-list .nav-list02 li {
    border-bottom: solid 1px rgba(209,209,209,.6)
  }

  .sp_navi #nav-list .nav-list02 li:first-child {
    border-top: solid 1px rgba(209,209,209,.6)
  }

  .sp_navi #nav-list .nav-list02 li a {
    display: block;
    line-height: 1.4;
    font-size: 1.3rem;
    padding: 18px 5% 18px 55px;
    font-weight: 500;
    background-repeat: no-repeat;
    background-position: 2% center;
    background-size: 47px
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_001 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon01.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_002 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon02.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_003 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon03.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_004 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon04.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_005 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon05.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_006 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon06.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_007 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon07.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_008 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon08.png)
  }

  .sp_navi #nav-list .nav-list02 li.nav-list02_009 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/sp_menu_icon09.png)
  }

  .sp_login {
    top: 10px;
    position: absolute;
    right: 0;
    z-index: 2;
    box-sizing: border-box;
    padding: 0 14px
  }

  .sp_login a {
    display: block;
    font-size: .8rem;
    padding-top: 22px;
    color: #ec0303;
    text-align: center;
    font-weight: 500;
    background: url(https://dist.joshinweb.jp/assets/images/common/sp/h_login_icon.png) no-repeat center top;
    background-size: 30px
  }

  .sp_login2 {
    top: 5px;
    right: 2%;
    position: absolute
  }

  .sp_login2>span {
    display: block;
    text-align: right;
    letter-spacing: -.05em;
    line-height: 1.2
  }

  .sp_login2 .login_name {
    font-size: 1.1rem;
    font-weight: 500;
    margin-bottom: 5px
  }

  .sp_login2 .login_status {
    font-size: .9rem;
    letter-spacing: -.075em;
    color: #7d7676;
    font-weight: 500
  }

  .sp_login2 .login_status i {
    color: #ec0303;
    font-weight: 700
  }

  #joshin_merit {
    position: relative;
    text-align: center;
    font-size: 1.34rem;
    color: #fff;
    background-color: #ec0303;
    padding: 13px 5%;
    line-height: 1.3
  }

  #joshin_merit dt {
    position: relative
  }

  #joshin_merit dt::after {
    content: " ";
    position: absolute;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    top: 50%;
    right: 0;
    margin: -7px
  }

  #joshin_merit dd {
    background-color: #eee;
    border-radius: 4px;
    max-width: 500px;
    margin: 15px auto 0
  }

  #joshin_merit dd ul {
    box-sizing: border-box;
    padding: 20px 5% 15px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between
  }

  #joshin_merit dd ul li {
    width: 49.5%;
    margin-bottom: 5px
  }

  #joshin_merit dd ul li.pickup_merit {
    width: 100%
  }

  #header #searchheader {
    padding-left: 0
  }

  #header #searchheader #select_search_box {
    width: 94%;
    margin: 0 3%;
    padding: 10px 0 8px
  }

  #header #searchheader #select_search_box input,#header #searchheader #select_search_box label select {
    font-size: 1.2rem;
    padding: 10px 40px 10px .5em
  }

  #header #searchheader #select_search_box #select_box {
    width: 38%
  }

  #header #searchheader #select_search_box #search_box {
    width: 60%
  }

  #header #searchheader #select_search_box input,#header #searchheader #select_search_box select,#header #searchheader #select_search_box #search_box a {
    height: 38px
  }

  #header #searchheader #select_search_box label::after {
    top: 14px
  }

  #header #searchheader #select_search_box #search_box a {
    min-width: 0;
    width: 40px;
    background-size: 50%
  }

  #suggest {
    width: 133.55%
  }
}

@media screen and (max-width: 1000px) and (min-width:641px) {
  .tab_only {
    display:block!important
  }

  br.tab_only {
    display: inline-block!important
  }
}

@media screen and (max-width: 640px) {
  body {
    font-size:1.5em
  }

  .sp_only {
    display: block!important
  }

  br.sp_only {
    display: inline-block!important
  }
}

#f_snsbox {
  border-top: solid 3px #ec0303;
  padding: 40px 0
}

#f_snsbox ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center
}

#f_snsbox ul li:not(:last-child) {
  margin-right: 3em
}

#f_snsbox ul li a {
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 45px auto;
  padding: 15px 0 15px 52px;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.2
}

#f_snsbox ul li.sns01 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/sns_icon01.png)
}

#f_snsbox ul li.sns02 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/sns_icon02.png)
}

#f_snsbox ul li.sns03 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/sns_icon03.png)
}

#f_snsbox ul li.sns04 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/sns_icon04.png)
}

#f_snsbox ul li.sns05 a {
  background-image: url(https://dist.joshinweb.jp/assets/images/common/sns_icon05.png)
}

#f_bannerbox {
  border-top: solid 1px #ddd;
  padding: 35px 0
}

#f_bannerbox ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around
}

#f_bannerbox ul li {
  width: 16%;
  text-align: center
}

#f_bannerbox ul li a .boxs {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between
}

#f_bannerbox ul li a .boxs .leftbox {
  width: 30%
}

#f_bannerbox ul li a .boxs .rightbox {
  width: 65%;
  text-align: left
}

#f_bannerbox ul li a .boxs .rightbox i {
  display: block;
  font-size: 1.2rem;
  opacity: .75;
  line-height: 1.1666
}

#f_pagetop {
  position: fixed;
  bottom: 140px;
  right: 0;
  display: none;
  z-index: 2
}

#f_pagetop a {
  transition: .4s;
  position: relative;
  display: block;
  background: #ec0303;
  width: 50px;
  height: 50px;
  color: #fff;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px
}

#f_pagetop a::before,#f_pagetop a::after {
  content: " ";
  position: absolute;
  transition: .3s
}

#f_pagetop a::after {
  width: 14px;
  height: 14px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 22px;
  left: 50%;
  margin: 0 0 0 -7px
}

#f_navibox {
  border-top: 1px solid #ddd;
  background-color: #f4f3f3;
  padding: 80px 5%
}

#f_navibox ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

#f_navibox ul li {
  width: 23%
}

#f_navibox ul li dl.second {
  margin-top: 40px
}

#f_navibox ul li dl dt {
  font-size: 1.5rem;
  letter-spacing: .05em;
  font-weight: 500;
  line-height: 1.35;
  position: relative;
  padding-bottom: 15px;
  margin-bottom: 15px
}

#f_navibox ul li dl dt::after {
  content: " ";
  width: 22px;
  height: 2px;
  background-color: #ec0303;
  position: absolute;
  left: 0;
  bottom: 0
}

#f_navibox ul li dl dt.link_out::after {
  background-color: #a79f9f
}

#f_navibox ul li dl dd {
  font-size: 1.4rem;
  opacity: .75
}

#f_subnavibox {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 45px 3%
}

#f_subnavibox .leftbox {
  width: 20%;
  max-width: 200px
}

#f_subnavibox .rightbox {
  width: 75%
}

#f_subnavibox .rightbox ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end
}

#f_subnavibox .rightbox ul li:not(:last-child) {
  margin-right: 1.35em
}

#f_subnavibox .rightbox ul li a {
  display: block;
  font-size: 1.3rem;
  opacity: .65
}

#f_copyrightbox {
  background-color: #ec0303;
  text-align: center;
  padding: 17px 5%
}

#f_copyrightbox small {
  color: #fff;
  opacity: .65;
  font-size: 1.24rem;
  letter-spacing: .025em;
  font-weight: 500;
  line-height: 1.2
}

@media screen and (min-width: 1001px) {
  body {
    max-width:2048px;
    margin: 0 auto
  }

  #header #subheader .rightbox ul li a:hover,#header #mainheader .leftbox .h_logo a:hover {
    opacity: .65
  }

  #header #mainheader .rightbox ul li a:hover {
    color: #ec0303
  }

  #header #mainheader .rightbox #cartbox #visitor .rightbox a:hover {
    text-decoration: underline;
    color: #ec0303
  }

  #header #mainheader .rightbox #cartbox #visitor .leftbox a:hover,#header #searchheader #select_search_box #search_box a:hover {
    background-color: #a40404
  }

  #header #searchheader #login_box #login_type1 li.login01 a:hover {
    background-color: #c08600
  }

  #header #searchheader #login_box #login_type1 li.login02 a:hover {
    background-color: #b90404
  }

  #maincategory_section ul.maincategory_list>li dl dt a:hover {
    color: #ec0303
  }

  #maincategory_section ul.maincategory_list>li dl dd ul li a:hover {
    text-decoration: underline;
    color: #ec0303
  }

  #maincategory_section ul.maincategory_list>li {
    transition: .4s
  }

  #maincategory_section ul.maincategory_list>li:hover {
    background-color: #f8f4f4
  }

  #f_snsbox ul li a:hover {
    opacity: .75
  }

  #f_snsbox ul li.sns01 a:hover {
    color: #1877f2
  }

  #f_snsbox ul li.sns02 a:hover {
    color: #1da1f2
  }

  #f_snsbox ul li.sns03 a:hover {
    color: #00b900
  }

  #f_snsbox ul li.sns04 a:hover {
    color: #ec0303
  }

  #f_pagetop a:hover {
    background-color: #b90404
  }

  #f_pagetop a:hover::after {
    top: 19px
  }

  #f_bannerbox ul li a:hover {
    opacity: .75
  }

  #f_navibox ul li dl dt a:hover {
    color: #b90404
  }

  #f_navibox ul li dl dd a:hover {
    text-decoration: underline;
    color: #ec0303
  }

  #f_subnavibox .leftbox a:hover {
    opacity: .75
  }

  #f_subnavibox .rightbox ul li a:hover {
    text-decoration: underline
  }
}

@media screen and (max-width: 1000px) {
  .pc_only {
    display:none!important
  }

  .acMenu dd {
    display: none
  }

  .usersnavi {
    background-color: #7d7676;
    color: #fff;
    text-align: center
  }

  .usersnavi>ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .usersnavi>ul>li {
    width: 25%;
    box-sizing: border-box;
    border-left: solid 1px rgba(255,255,255,.3)
  }

  .usersnavi>ul>li>a,.usersnavi>ul>li>dl>dt {
    position: relative;
    display: block;
    font-size: 1.15rem;
    font-weight: 500;
    background-repeat: no-repeat;
    background-position: center 3px;
    background-size: auto 36px;
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon01.png);
    padding: 36px 0 5px 0
  }

  .usersnavi>ul>li.usersnavi01>dl>dt::after {
    content: " ";
    position: absolute;
    width: 4px;
    height: 4px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    bottom: 7px;
    right: 7px;
    opacity: .75
  }

  .usersnavi>ul>li.usersnavi02>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon02.png)
  }

  .usersnavi>ul>li.usersnavi03>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon03.png)
  }

  .usersnavi>ul>li.usersnavi04>a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/spnavi_icon04.png)
  }

  .usersnavi>ul>li dl dd {
    position: relative;
    width: 402%;
    background-color: #f0f0f0;
    box-sizing: border-box;
    padding: 15px 18%
  }

  .sp_category_list {
    border-top: solid 1px #ddd;
    border-right: solid 1px #ddd;
    border-left: solid 1px #ddd;
    background-color: #fff;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .sp_category_list>li {
    width: 50%;
    box-sizing: border-box;
    font-size: 1.2rem;
    color: #250505;
    text-align: left;
    border-bottom: solid 1px #ddd
  }

  .sp_category_list>li:nth-child(odd) {
    border-right: solid 1px #ddd
  }

  .sp_category_list>li a {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background-repeat: no-repeat;
    background-position: 5px center;
    line-height: 1.2;
    padding: 0 5% 0 48px;
    background-size: 38px auto;
    min-height: 50px;
    box-sizing: border-box
  }

  .sp_category_list>li a>span i {
    display: block;
    font-size: .8em;
    letter-spacing: -.075rem
  }

  .sp_category_list>li.sp_category_list01 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img01.jpg)
  }

  .sp_category_list>li.sp_category_list02 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img02.jpg)
  }

  .sp_category_list>li.sp_category_list03 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img03.jpg)
  }

  .sp_category_list>li.sp_category_list04 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img04.jpg)
  }

  .sp_category_list>li.sp_category_list05 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img05.jpg)
  }

  .sp_category_list>li.sp_category_list06 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img06.jpg)
  }

  .sp_category_list>li.sp_category_list07 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img07.jpg)
  }

  .sp_category_list>li.sp_category_list08 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img08.jpg)
  }

  .sp_category_list>li.sp_category_list09 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img09.jpg)
  }

  .sp_category_list>li.sp_category_list10 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img10.jpg)
  }

  .sp_category_list>li.sp_category_list11 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img11.jpg)
  }

  .sp_category_list>li.sp_category_list12 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img12.jpg)
  }

  .sp_category_list>li.sp_category_list13 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img13.jpg)
  }

  .sp_category_list>li.sp_category_list14 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img14.jpg)
  }

  .sp_category_list>li.sp_category_list15 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img15.jpg)
  }

  .sp_category_list>li.sp_category_list16 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img16.jpg)
  }

  .sp_category_list>li.sp_category_list17 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img17.jpg)
  }

  .sp_category_list>li.sp_category_list18 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img18.jpg)
  }

  .sp_category_list>li.sp_category_list19 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img19.jpg)
  }

  .sp_category_list>li.sp_category_list20 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img20.jpg)
  }

  .sp_category_list>li.sp_category_list21 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img21.jpg)
  }

  .sp_category_list>li.sp_category_list22 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img22.jpg)
  }

  .sp_category_list>li.sp_category_list23 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img23.jpg)
  }

  .sp_category_list>li.sp_category_list24 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img24.jpg)
  }

  .sp_category_list>li.sp_category_list25 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img25.jpg)
  }

  .sp_category_list>li.sp_category_list26 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img26.jpg)
  }

  .sp_category_list>li.sp_category_list27 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img27.jpg)
  }

  .sp_category_list>li.sp_category_list28 a {
    background-image: url(https://dist.joshinweb.jp/assets/images/common/sp/categorylist_img28.jpg)
  }

  .sponly_section {
    display: block!important
  }

  #f_snsbox {
    border-top: solid 3px #ec0303;
    padding: 18px 0 12px
  }

  #f_snsbox ul {
    align-items: flex-start
  }

  #f_snsbox ul li {
    min-width: 50px
  }

  #f_snsbox ul li:not(:last-child) {
    margin-right: 1.5em
  }

  #f_snsbox ul li a {
    background-position: center top;
    background-size: auto 45px;
    padding: 50px 0 15px;
    font-size: 1.125rem;
    text-align: center
  }

  #f_bannerbox {
    padding: 20px 0
  }

  #f_bannerbox ul {
    align-items: flex-start;
    justify-content: space-around
  }

  #f_bannerbox ul li {
    width: 26.666%
  }

  #f_bannerbox ul li:nth-of-type(n+4) {
    display: none
  }

  #f_bannerbox ul li a .boxs {
    display: block
  }

  #f_bannerbox ul li a .boxs .leftbox {
    display: block;
    width: 60%;
    margin: 0 auto 10px
  }

  #f_bannerbox ul li a .boxs .rightbox {
    width: 100%;
    font-size: 1.2rem
  }

  #f_bannerbox ul li a .boxs .rightbox i {
    font-size: .85rem
  }

  #f_pagetop {
    bottom: 60px
  }

  #f_pagetop a {
    width: 40px;
    height: 40px
  }

  #f_pagetop a::after {
    width: 12px;
    height: 12px;
    border-top: 1.5px solid #fff;
    border-right: 1.5px solid #fff;
    top: 17px;
    margin: 0 0 0 -6px
  }

  #f_navibox {
    padding: 0
  }

  #f_navibox ul:not(.sponly_section) {
    display: none
  }

  #f_navibox ul.sponly_section li {
    width: 100%;
    border-bottom: solid 1px #ddd
  }

  #f_navibox ul.sponly_section li a {
    position: relative;
    padding: 12px 5%;
    display: block;
    font-size: 1.3rem
  }

  #f_navibox ul.sponly_section li:last-child a {
    color: #ec0303;
    font-weight: 500;
    background-color: #ffc9c9
  }

  #f_subnavibox {
    display: block;
    padding: 25px 5%
  }

  #f_subnavibox .leftbox {
    width: 40%;
    max-width: 200px;
    margin: 0 auto
  }

  #f_subnavibox .rightbox {
    display: none
  }

  #f_copyrightbox {
    padding: 15px 5%
  }

  #f_copyrightbox small {
    font-size: 1rem
  }
}

#maincategory_section ul.maincategory_list {
  display: none
}

#maincategory_section h2:not(.active) {
  border-bottom-right-radius: 6px
}

#second_layout {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  justify-content: space-between;
  margin-bottom: 150px
}

#second_layout>.leftbox {
  width: 16.666%
}

#second_layout>.rightbox {
  width: 83.334%
}

#content_section {
  max-width: 1260px;
  box-sizing: border-box;
  padding: 0 30px;
  margin: 0 auto
}

#content_section #contents_header #breadcrumb,#content_section #contents_header #breadcrumb ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap
}

#content_section #contents_header #breadcrumb {
  justify-content: flex-end;
  margin-top: 20px
}

#content_section #contents_header #breadcrumb ul li {
  position: relative;
  font-size: 1.3rem;
  color: #615757;
  font-weight: 500
}

#content_section #contents_header #breadcrumb ul li:not(:last-child) {
  margin-right: 1em
}

#content_section #contents_header #breadcrumb ul li:not(:last-child)::after {
  content: "＞";
  font-size: 1.1rem;
  color: #615757;
  padding-left: 1em
}

#content_section #contents_header #breadcrumb ul li a {
  font-weight: 400
}

#content_section #contents_header #pagetitle_box h1 {
  font-size: 3.6rem;
  color: #ec0303;
  line-height: 1.4;
  font-weight: 200;
  letter-spacing: .05em
}

#content_section #contents_header #pagetitle_box p {
  font-size: 1.5rem;
  font-weight: 500;
  color: #615757;
  margin-top: 20px
}

#content_section #contents_header #keyword_box {
  margin: 30px auto;
  background-color: #fffcd9;
  border: solid 1px #e0dca8;
  padding: 10px;
  font-size: 1.45rem
}

#content_section #contents_header #keyword_box dl,#content_section #contents_header #keyword_box dl dd ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap
}

#content_section #contents_header #keyword_box dl {
  justify-content: space-between;
  align-items: center
}

#content_section #contents_header #keyword_box dl dt {
  text-align: center;
  width: 18%;
  box-sizing: border-box;
  padding: 5px .5em;
  font-weight: 500
}

#content_section #contents_header #keyword_box dl dd {
  box-sizing: border-box;
  border-left: solid 1px #e0dca8;
  width: 82%;
  padding-left: 1em
}

#content_section #contents_header #keyword_box dl dd ul li {
  padding: 5px .5em;
  color: #615757
}

#content_section #contents_mv,#content_section #contents_mv_dp {
  background: #f3f2f2;
  background: -moz-linear-gradient(#ebeaea 0%,#f3f2f2 100%);
  background: -webkit-gradient(linear,left top,left bottom,from(#ebeaea),to(#f3f2f2));
  background: -webkit-linear-gradient(#ebeaea 0%,#f3f2f2 100%);
  background: -o-linear-gradient(#ebeaea 0%,#f3f2f2 100%);
  background: linear-gradient(#ebeaea 0%,#f3f2f2 100%);
  padding: 45px 2.5% 30px;
  margin-bottom: 70px
}

#content_section #contents_mv a,#content_section #contents_mv_dp a {
  display: block;
  padding: 0 2.5%
}

#content_section .item_index {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between
}

#content_section .item_index::after {
  content: " ";
  display: block;
  width: 31.333%;
  height: 0
}

#content_section .item_index>li {
  box-sizing: border-box;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: 30% auto;
  width: 31.333%;
  margin-bottom: 100px
}

#content_section .item_index>li.item_index00 {
  background-image: url(https://dist.joshinweb.jp/emall/img/wpp/jmall/dummy.gif)
}

#content_section .item_index>li.item_index01 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg01.jpg)
}

#content_section .item_index>li.item_index02 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg02.jpg)
}

#content_section .item_index>li.item_index03 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg03.jpg)
}

#content_section .item_index>li.item_index04 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg04.jpg)
}

#content_section .item_index>li.item_index05 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg05.jpg)
}

#content_section .item_index>li.item_index06 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg06.jpg)
}

#content_section .item_index>li.item_index07 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg07.jpg)
}

#content_section .item_index>li.item_index08 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg08.jpg)
}

#content_section .item_index>li.item_index09 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg09.jpg)
}

#content_section .item_index>li.item_index10 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg10.jpg)
}

#content_section .item_index>li.item_index11 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg11.jpg)
}

#content_section .item_index>li.item_index12 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg12.jpg)
}

#content_section .item_index>li.item_index13 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg13.jpg)
}

#content_section .item_index>li.item_index14 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg14.jpg)
}

#content_section .item_index>li.item_index15 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg15.jpg)
}

#content_section .item_index>li.item_index16 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg16.jpg)
}

#content_section .item_index>li.item_index17 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg17.jpg)
}

#content_section .item_index>li.item_index18 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg18.jpg)
}

#content_section .item_index>li.item_index19 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg19.jpg)
}

#content_section .item_index>li.item_index20 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg20.jpg)
}

#content_section .item_index>li.item_index21 {
  background-image: url(https://dist.joshinweb.jp/assets/images/kaden/top/category_iimg21.jpg)
}

#content_section .item_index>li>div {
  padding: 30px 32% 0 0
}

#content_section .item_index>li .titlestyle01 {
  font-size: 1.6rem;
  font-weight: 500;
  padding-bottom: 18px;
  margin-bottom: 20px
}

#content_section .item_index>li .titlestyle01::after {
  width: 18%
}

#content_section .item_index>li ul li {
  color: #615757;
  line-height: 1.375;
  margin-bottom: 8px
}

#maincategory_section {
  max-width: 360px
}

.second_sidebox_base {
  margin-top: 56px;
  position: relative;
  background-color: #fff;
  box-shadow: 0 0 3px rgba(0,0,0,.2);
  border-top-right-radius: 10px;
  border-bottom-right-radius: 6px
}

.second_sidebox_base li a {
  padding: 20px 0% 10px;
  color: #615757;
  line-height: 1.5
}

.second_sidebox_base h3 {
  position: relative;
  background-color: #f2eeee;
  line-height: 1.2;
  font-size: 1.5rem;
  font-weight: 500;
  padding: 20px 20% 17px 10%;
  border-top-right-radius: 6px;
  border-bottom: solid 1px #ddd;
  overflow: hidden
}

.second_sidebox_base h3::before {
  content: " ";
  width: 100%;
  height: 3px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #ec0303
}

.second_sidebox_base .second_categorylist {
  padding: 20px 10% 15px
}

.second_sidebox_base .second_categorylist>li {
  position: relative;
  color: #615757;
  line-height: 1.4;
  margin-bottom: 10px
}

.second_sidebox_base .second_acc,.second_sidebox_base .second_categorylist>li ul {
  display: none
}

.second_sidebox_base .more_link {
  padding: 10px 10% 20px
}

.second_sidebox_base .more_link a::after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 9px;
  left: 5px
}

.second_sidebox_base .more_box1 li.is-hidden,.second_sidebox_base .more_box2 li.is-hidden,.second_sidebox_base .more_box3 li.is-hidden {
  display: none
}

.second_sidebox_base .second_itemlist01 {
  padding-bottom: 10px
}

.second_sidebox_base .second_itemlist01 li {
  padding: 20px 10%;
  line-height: 1.35
}

.second_sidebox_base .second_itemlist01 li:not(:last-child):not(:nth-child(3)) {
  border-bottom: solid 1px #ddd
}

.second_sidebox_base .second_itemlist01 li:nth-child(4) {
  border-top: solid 1px #ddd
}

.second_sidebox_base .second_itemlist01 li a,.second_sidebox_base .second_itemlist01 li a span {
  display: block;
  transition: .35s
}

.second_sidebox_base .second_itemlist01 li .textbox01 {
  color: #615757
}

.second_sidebox_base .second_itemlist01 li .imgbox {
  margin: 5px auto 10px;
  width: 62%
}

.second_sidebox_base .second_itemlist02 {
  padding: 20px 20% 0
}

.second_sidebox_base .second_itemlist02 li {
  margin: 20px 0
}

#staffreport_box {
  margin: 45px 0 0 10%
}

#staffreport_box ul li:not(:last-child) {
  border-bottom: solid 1px #ddd
}

#staffreport_box ul li a {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0
}

#staffreport_box ul li a .leftbox,#staffreport_box ul li a .rightbox {
  transition: .4s
}

#staffreport_box ul li a .leftbox {
  width: 38%
}

#staffreport_box ul li a .rightbox {
  width: 56%;
  line-height: 1.3;
  font-size: 1.45rem;
  font-weight: 500;
  letter-spacing: 0
}

#staffreport_box ul li a .rightbox i {
  display: block;
  font-size: 1.3rem;
  font-weight: 300;
  color: #615757;
  margin-bottom: 5px
}

@media screen and (min-width: 1001px) {
  #content_section #contents_header #breadcrumb ul li a:hover,#content_section #contents_header #keyword_box dl dd ul li a:hover,#content_section .item_index>li a:hover,.second_sidebox_base .second_categorylist>li a:hover {
    text-decoration:underline
  }

  #content_section #contents_header #keyword_box dl dd ul li a:hover,#content_section .item_index>li a:hover,.second_sidebox_base .second_categorylist>li a:hover,.second_sidebox_base .second_itemlist01 li a:hover .textbox02,#staffreport_box ul li a:hover .leftbox,#staffreport_box ul li a:hover .rightbox {
    color: #ec0303
  }

  #content_section #contents_mv a:hover,#content_section #contents_mv_dp a:hover,.second_sidebox_base .second_itemlist01 li a:hover .imgbox,.second_sidebox_base .second_itemlist02 li a:hover,#staffreport_box ul li a:hover .leftbox {
    opacity: .65
  }
}

@media screen and (max-width: 1000px) {
  #second_layout {
    display:block
  }

  #second_layout>.leftbox,#second_layout>.rightbox {
    width: 100%
  }

  #content_section {
    padding: 0;
    margin: 20px auto 30px;
    display: block;
    width: 90%
  }

  .second_sidebox_base {
    box-shadow: 0 0 0 rgba(0,0,0,0);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
  }

  .second_sidebox_base h3 {
    font-size: 1.45rem;
    padding: 18px 5%;
    border-top-right-radius: 0
  }

  .second_sidebox_base .second_categorylist {
    padding: 0
  }

  .second_sidebox_base .second_categorylist.nonedis {
    display: none
  }

  .second_sidebox_base .second_categorylist>li {
    color: #250505;
    margin-bottom: 0
  }

  .second_sidebox_base .second_categorylist>li:not(:last-child) {
    border-bottom: solid 1px #ddd
  }

  .second_sidebox_base .second_categorylist>li>a {
    display: block;
    padding: 18px 5%
  }

  .second_sidebox_base .second_acc {
    display: block;
    width: 60px;
    height: 50px;
    position: absolute;
    right: 5px;
    top: 0
  }

  .second_sidebox_base .second_acc>i {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
  }

  .second_sidebox_base .second_acc>i::before,.second_sidebox_base .second_acc>i::after {
    content: " ";
    position: absolute;
    background-color: #ec0303;
    top: 27px;
    right: 15px;
    width: 16px;
    height: 1.5px
  }

  .second_sidebox_base .second_acc>i::before,.second_sidebox_base .second_acc.active>i::after {
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s,-webkit-transform .2s;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }

  .second_sidebox_base .second_acc>i::after {
    transition: -webkit-transform .2s;
    transition: transform .2s;
    transition: transform .2s,-webkit-transform .2s;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg)
  }

  .second_sidebox_base .second_categorylist>li ul {
    position: relative;
    padding: 0 5% 30px;
  }

  .second_sidebox_base .second_categorylist>li ul li {
    font-size: 1.325rem;
    color: #615757;
    line-height: 1.4;
    margin-bottom: 3px
  }

  .second_sidebox_base .second_itemlist01 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    width: 100%;
    position: relative;
    padding: 25px 0
  }

  .second_sidebox_base .second_itemlist01 li {
    flex: 0 0 33%;
    padding: 10px 2.5%;
    font-size: 1.3rem;
    border-bottom: none!important;
    border-top: none!important
  }

  .second_sidebox_base .second_itemlist01 li .imgbox {
    width: 100%
  }

  .second_sidebox_base .more_button1 {
    display: none!important
  }

  .second_sidebox_base .second_itemlist02 {
    padding: 20px 5% 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .second_sidebox_base .second_itemlist02 li {
    width: 48%;
    margin-bottom: 5px
  }

  .second_sidebox_base .more_link {
    text-align: center
  }

  #staffreport_box {
    margin: 20px auto 40px;
    width: 90%
  }

  #staffreport_box ul li:not(:last-child) {
    border-bottom: none
  }

  #staffreport_box ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    width: 105%;
    position: relative
  }

  #staffreport_box ul li {
    flex: 0 0 45%
  }

  #staffreport_box ul li a {
    display: block;
    padding: 0 4% 10px
  }

  #staffreport_box ul li a .leftbox,#staffreport_box ul li a .rightbox {
    display: block;
    width: 100%;
    font-size: 1.3rem;
    line-height: 1.4
  }

  #staffreport_box ul li a .rightbox i {
    font-size: 1.2rem;
    margin-top: 15px
  }
}

@media screen and (max-width: 1000px) and (min-width:641px) {
  #staffreport_box ul li {
    flex:0 0 22%
  }

  #content_section .item_index>li {
    width: 48%
  }

  .second_sidebox_base .second_itemlist02 {
    justify-content: center
  }

  .second_sidebox_base .second_itemlist02 li {
    width: 35%;
    margin: 10px 3%
  }
}

@media screen and (max-width: 1024px) and (min-width:1001px) {
  #maincategory_section h2 {
    font-size:1.3rem
  }
}

@media screen and (max-width: 640px) {
  #content_section #contents_header #breadcrumb {
    justify-content:flex-start;
    margin-top: 17px;
    margin-bottom: 25px
  }

  #content_section #contents_header #breadcrumb ul li {
    font-size: 1rem
  }

  #content_section #contents_header #breadcrumb ul li:not(:last-child) {
    margin-right: .45em
  }

  #content_section #contents_header #breadcrumb ul li:not(:last-child)::after {
    font-size: .8rem;
    padding-left: .45em
  }

  #content_section #contents_header #pagetitle_box h1 {
    font-size: 2.8rem
  }

  #content_section #contents_header #pagetitle_box p {
    font-size: 1.25rem;
    line-height: 1.4
  }

  #content_section #contents_header #keyword_box {
    position: relative;
    margin: 17px auto;
    padding: 5px;
    font-size: 1.225rem;
    box-sizing: border-box;
    width: 110%;
    margin-left: -5%
  }

  #content_section #contents_header #keyword_box dl {
    justify-content: space-between;
    align-items: center
  }

  #content_section #contents_header #keyword_box dl dt {
    text-align: center;
    width: 34%;
    box-sizing: border-box;
    padding: 5px .5em;
    font-weight: 500
  }

  #content_section #contents_header #keyword_box dl dd {
    width: 66%;
    padding-left: .5em
  }

  #content_section #contents_header #keyword_box dl dd ul li {
    padding: 10px .4em
  }

  #content_section #contents_header #keyword_box dl dd ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    width: 100%;
    position: relative
  }

  #content_section #contents_header #keyword_box dl dd ul li {
    white-space: nowrap
  }

  #content_section #contents_mv,#content_section #contents_mv_dp {
    padding: 0;
    background: #fff;
    margin-bottom: 40px
  }

  #content_section #contents_mv ul,#content_section #contents_mv_dp ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    width: 105%;
    position: relative
  }

  #content_section #contents_mv ul li,#content_section #contents_mv_dp ul li {
    flex: 0 0 75%
  }

  #content_section #contents_mv a,#content_section #contents_mv_dp a {
    padding: 0 3% 0 0;
    margin: 0
  }

  #second_layout {
    margin-bottom: 80px
  }

  .second_sidebox_base .more_link a::after {
    top: 8px;
    left: 4px
  }
}

#header #searchheader #login_box2 .rightbox a p {
  background: #EB8400;
  padding: 1px 5px;
  box-sizing: border-box;
  border-radius: 8px;
  color: #fff;
  font-size: 10px
}

#header #searchheader #select_search_box {
  padding: 12px 0 11px
}

#maincategory_section {
  margin-top: -60px
}

@media screen and (min-width: 1001px) and (max-width:1755px) {
  #header #searchheader #select_search_box {
    width:58%
  }

  #header #searchheader #login_box2 {
    width: 40%;
    max-width: 360px
  }
}

@media screen and (min-width: 1001px) and (max-width:1200px) {
  #maincategory_section h2 {
    font-size:1.3rem
  }
}

@media screen and (min-width: 1001px) and (max-width:1052px) {
  #maincategory_section {
    margin-top:-72px
  }

  #header #searchheader #select_search_box #select_box {
    width: 32%
  }

  #header #searchheader #select_search_box #search_box {
    width: 65%;
    position: relative
  }

  #header #searchheader #login_box2 .leftbox dl dd {
    font-size: 1.1rem
  }

  #maincategory_section {
    width: 17.5%
  }

  #maincategory_section ul.maincategory_list>li>a {
    font-size: 8px
  }
}

#header #searchheader #login_box2 .rightbox a p.web_cpn {
  color: inherit;
  background: none;
  padding: 1px 0;
  font-size: 13px;
  margin-right: 1em
}

#header #searchheader #login_box2 .rightbox a p.web_cpn:hover {
  color: inherit;
  text-decoration: #ec0303;
  text-decoration: underline
}

#header a p.web_point:hover {
  text-decoration: underline
}

#header #searchheader #login_box2 .rightbox dl dd a:hover {
  text-decoration: underline
}

.suggest {
  position: absolute;
  background-color: #FFF;
  border: 1px solid #CCF;
  font-size: 14px;
  width: 60%;
  border-radius: 5px;
  z-index: 10
}

.suggest div {
  display: block;
  width: 95%;
  font-size: 18px;
  overflow: hidden;
  white-space: nowrap;
  text-align: left;
  padding: 5px
}

.suggest div.select {
  color: #FFF;
  background-color: #36F
}

.suggest div.over {
  background-color: #9CF
}

.suggest div small {
  color: #EB8400;
  font-weight: 700;
  font-size: 10pt;
  margin-left: 15px
}

@media screen and (max-width: 1000px) {
  .suggest div {
    width:100%;
    margin-top: 7px
  }

  .suggest div.select {
    color: #FFF;
    background-color: #36F
  }
}

.logo_hitomachi {
  margin: 5px auto;
  box-sizing: border-box;
  padding: 0;
  display: block;
}

.logo_hitomachi_sp {
  box-sizing: border-box;
  padding: 2px;
}

.logo_hitomachi_sp img {
  margin: 2px auto;
  box-sizing: border-box;
  padding: 0;
  display: block;
  filter: invert(50%) sepia(0%) saturate(11%) hue-rotate(143deg) brightness(50%) contrast(93%);
}
