.modern-header{
  position: relative;
  width: 100%;
  margin-bottom: 10px;
}

.modern-header *{
  margin: 0;
  padding: 0;
}

.modern-header img{
  vertical-align: middle;
}

.modern-header a{
  user-select: none;
}

.modern-header select{
  background: #fff;
}

.mh-alert{
  position: absolute;
  display: none;
  top: 0;
  left: 0;
  border: 2px solid #f00;
  color: #f00;
  padding: 2px;
  background: #fff;
  z-index: 8;
  white-space: nowrap;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.mh-container{
  position: relative;
  margin: 0 auto;
}

.mh-link{
  background: #000;
}
.mh-link a{
  margin: 2px;
}
.mh-link a,
.mh-link a:visited{
  text-decoration: none;
  color: #fff;
}

.mh-util{
  background: #fff;
  width: 100%;
  display: flex;
}

.mh-brand{
  flex: 0 1 180px;
  max-width: 180px;
  min-width: 50px;
  width: 100%;
  align-self: center;
  display: block;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  padding: 5px;
}
.mh-brand > a{
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 45px;
  width: 100%;
  text-align: center;
  margin-bottom: 5px;
}
.mh-brand img{
  flex: 0 0 auto;
  width: 100%;
}

.mh-select-brand{
  position: relative;
  display: block;
  width: 100%;
  height: 20px;
}
.mh-select-brand::after{
  content: "";
  position: absolute;
  display: block;
  width: 20px;
  height: 20px;
  top: 0;
  right: 0;
  z-index: 6;
  background-color: #999;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../commonfiles/images/mh-select-arrow.svg);
  background-size: 50% 50%;
  pointer-events: none;
}
.mh-select-brand select{
  cursor: pointer;
  display: block;
  width: 100%;
  height: 20px;
  z-index: 5;

  border: 1px solid #999;
  padding: 1px;
  box-sizing: border-box;

  color: #7b7b7b;
  font-size: 12px;

  outline: none;
  text-transform: none;
  -webkit-appearance: menulist-button;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.mh-search{
  flex: 1 1 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 5px;
  box-sizing: border-box;
  text-align: center;
}
.mh-search > div:last-of-type{
  flex: 0 0 auto;
  margin: 0px 5px;
  white-space: nowrap;
}
.mh-searchbox{
  white-space: nowrap;
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
}
.mh-searchbox > *{
  display: block;
}

.mh-select-category{
  flex: 1 1 150px;
  position: relative;
  width: 100%;
  max-width: 150px;
  height: 30px;
  margin-right: 2px;
}
.mh-select-category::after{
  content: "";
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: 0;
  right: 0;
  z-index: 6;
  background-color: #999;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../commonfiles/images/mh-select-arrow.svg);
  background-size: 50% 50%;
  pointer-events: none;
}
.mh-select-category select{
  cursor: pointer;
  display: block;
  width: 100%;
  height: 30px;
  z-index: 5;

  border: 1px solid #999;
  padding: 1px;
  box-sizing: border-box;

  color: #7b7b7b;
  font-size: 12px;

  outline: none;
  text-transform: none;
  -webkit-appearance: menulist-button;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.mh-input-keyword{
  flex: 1.5 1 auto;
  border-radius: 0px 4px 4px 0px;
  position: relative;
  width: 100%;
  height: 30px;
  line-height: 30px;
  margin-right: 2px;
  background: #fff;
  border: 1px solid #999;
}
.mh-input-submit{
  cursor: pointer;
  white-space: nowrap;
  border-radius: 4px;
  align-items: center;
  position: absolute;
  display: inline-block;
  width: auto;
  height: 30px;
  line-height: 30px;
  padding: 0px 5px;
  margin: -1px -1px 0px 0px;
  top: 0;
  right: 0;
  z-index: 6;
  color: #222 !important;
  border: 1px solid #999;
  background: #fff;
  background-position: 0 0;
}
.mh-input-keyword input{
  display: block;
  width: calc(100% - 40px);
  height: 28px;
  z-index: 5;

  border: none;
  box-sizing: border-box;

  color: #7b7b7b;
  font-size: 12px;

  outline: none;
  text-transform: none;
  -webkit-appearance: menulist-button;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.mh-myinfo{
  flex: 0 0 110px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 110px;
  max-width: 110px;
  font-size: 12px;
  text-align: center;
  margin: 2px 0px;
}
.mh-myinfo > a,
.mh-myinfo > a:visited{
  text-decoration: none;
  cursor: pointer;
  flex: 0 1 auto;
  justify-self: center;
  margin: 1px 0px;
  padding: 4px;
  background: #fff;
  color: #222;
  border: 1px solid #7b7b7b;
  box-sizing: border-box;
  vertical-align: bottom;
}

.mh-myinfo > a:hover,
.mh-myinfo > a:active{
  background: #eee;
}

.mh-cart{
  flex: 0 1 160px;
  width: 100%;
  align-self: center;
  text-align: center;
  padding: 5px;
}
.mh-cart > a,
.mh-cart > a:visited{
  position: relative;
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  width: 100%;
  padding: 10px;
  background: #fff;
  color: #222;
  white-space: nowrap;
  border: 1px solid #7b7b7b;
}
.mh-cart > a:hover,
.mh-cart > a:active{
  background: #eee;
}
.mh-cart > a::before{
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23222222;%7D%0A%3C/style%3E%3Cpath class='st0' d='M200,0h-60v37.5H15v100h16.25h112.5H160V20h40V0L200,0z M35,117.5v-60h105v60H35L35,117.5z'/%3E%3Cpath class='st0' d='M143.75,157.5c6.203,0,11.25,5.047,11.25,11.25S149.953,180,143.75,180s-11.25-5.047-11.25-11.25 S137.547,157.5,143.75,157.5 M143.75,137.5c-17.259,0-31.25,13.991-31.25,31.25S126.491,200,143.75,200S175,186.009,175,168.75 S161.009,137.5,143.75,137.5L143.75,137.5z'/%3E%3Cpath class='st0' d='M31.25,157.5c6.203,0,11.25,5.047,11.25,11.25S37.453,180,31.25,180S20,174.953,20,168.75 S25.047,157.5,31.25,157.5 M31.25,137.5C13.991,137.5,0,151.491,0,168.75S13.991,200,31.25,200s31.25-13.991,31.25-31.25 S48.509,137.5,31.25,137.5L31.25,137.5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.mh-incart{
  position: absolute;
  display: block;
  text-align: center;
  top: -10px;
  right: 0px;
  pointer-events: none;
  user-select: none;
}
.mh-incart > span{
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background: #f00;
  color: #fff;
  z-index: 7;
}
.mh-switch{
  flex: 0 0 auto;
  align-self: center;
}

.mh-switch-wrap{
  margin-right: 5px;
  text-align: center;
  width: 100%;
}
.mh-switch-wrap > span{
  font-weight: bold;
  font-size: 12px;
  color: #ff246d;
}

.mh-switch-main{
  cursor: pointer;
  user-select: none;
  display: block;
  position: relative;
  background: #aaa;
  width: 50px;
  height: 20px;
  padding: 2px;
  box-sizing: border-box;
  border-radius: 10px;
  transition: background 0.1s;
}
.mh-switch-main.mh-switch-on{
  background: #ff246d;
}
.mh-switch-text{
  display: block;
  position: absolute;
  color: #fff;
  font-size: 12px;
  width: 23px;
  height: 18px;
  line-height: 18px;
  text-align: center;
  margin: 1px;
  top: 0;
}
.mh-switch-main .mh-switch-text:nth-of-type(1){
  display: block;
  right: 5px;
}
.mh-switch-main .mh-switch-text:nth-of-type(2){
  display: none;
  left: 5px;
}
.mh-switch-main.mh-switch-on .mh-switch-text:nth-of-type(1){
  display: none;
}
.mh-switch-main.mh-switch-on .mh-switch-text:nth-of-type(2){
  display: block;
}

.mh-switch-circle{
  display: block;
  position: absolute;
  width: 18px;
  height: 18px;
  margin: 1px;
  top: 0;
  left: 0;
  background: #fff;
  border-radius: 10px;
  z-index: 7;
  transition: left 0.1s;
}
.mh-switch-main.mh-switch-on .mh-switch-circle{
  left: 30px;
}
.mh-index{
  display: flex;
  width: 100%;
  background: #ffdfba;
  border: 2px solid #ffdfba;
  box-sizing: border-box;
}

.mh-index > a,
.mh-index > a:visited{
  text-decoration: none;
  border-radius: 5px;
  cursor: pointer;
  height: 30px;
  line-height: 30px;
  flex: 1 1 auto;
  text-align: center;
  margin: 2px;
  background: #f80;
  color: #fff;
  font-size: 14px;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-f: ellipsis;
}
@media screen and (min-width:767px) and (max-width:835px) {
  /* 書籍のラベルを「コミック・ラノベ」に変更した際に追加 */
  .mh-index > a,
  .mh-index > a:visited{
    font-size: 12px;
  }
}
.mh-index > a:hover,
.mh-index > a:active,
.mh-index > a.mh-index-focus{
  overflow: visible;
  background: #fa0;
}
.mh-index > a.mh-index-focus{
  pointer-events: none;
}
.mh-index > a.mh-index-aqua,
.mh-index > a.mh-index-aqua:visited{
  color: #fff;
  background: #108ccf;
}
.mh-index > a.mh-index-aqua:hover,
.mh-index > a.mh-index-aqua:active{
  background: #209cdf;
}

.mh-hotword{
  background: #ffdfba;
  color: #222;
  text-align: center;
  padding-bottom: 2px;
  word-break: keep-all;

}
.mh-hotword *{
  display: inline-block;
  margin: 0px 2px;
}
.mh-hotword a,
.mh-hotword a:visited{
  color: #222;
}

.mh-icon-signup > span{
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ff8800;%7D%0A%3C/style%3E%3Cpath class='st0' d='M139.205,38.829L69.701,143.085l-16.641,6.934l0-18.028l69.504-104.256L139.205,38.829 M166.94,33.282 L117.017,0L33.06,125.936l0,54.083l49.923-20.801L166.94,33.282L166.94,33.282z'/%3E%3Crect y='180' class='st0' width='200' height='20'/%3E%3C/svg%3E");
}
.mh-icon-login > span{
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ff8800;%7D%0A%3C/style%3E%3Cpath class='st0' d='M137.119,107.121C151.048,96.134,160,79.118,160,60c0-33.137-26.863-60-60-60S40,26.863,40,60 c0,19.118,8.952,36.134,22.881,47.121C26.032,121.861,0,157.889,0,200h200C200,157.889,173.968,121.861,137.119,107.121z M60,60 c0-22.056,17.944-40,40-40s40,17.944,40,40c0,22.056-17.944,40-40,40S60,82.056,60,60z M100,120c37.209,0,68.565,25.534,77.468,60 H22.532C31.435,145.534,62.791,120,100,120z'/%3E%3C/svg%3E");
}
.mh-icon-mypage > span{
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ff8800;%7D%0A%3C/style%3E%3Cpath class='st0' d='M137.119,107.121C151.048,96.134,160,79.118,160,60c0-33.137-26.863-60-60-60S40,26.863,40,60 c0,19.118,8.952,36.134,22.881,47.121C26.032,121.861,0,157.889,0,200h200C200,157.889,173.968,121.861,137.119,107.121z M60,60 c0-22.056,17.944-40,40-40s40,17.944,40,40c0,22.056-17.944,40-40,40S60,82.056,60,60z M100,120c37.209,0,68.565,25.534,77.468,60 H22.532C31.435,145.534,62.791,120,100,120z'/%3E%3C/svg%3E");
}
.mh-icon-star > span{
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ff8800;%7D%0A%3C/style%3E%3Cpath class='st0' d='M100,50.085l12.967,26.274l4.653,9.429l10.405,1.512l28.995,4.213l-20.981,20.451l-7.529,7.339l1.777,10.363 l4.953,28.878l-25.934-13.634L100,140.018l-9.307,4.893l-25.934,13.634l4.953-28.878l1.777-10.363l-7.529-7.339L42.979,91.513 L71.974,87.3l10.405-1.512l4.653-9.429L100,50.085 M100,4.894L69.098,67.508L0,77.549l50,48.738l-11.803,68.819L100,162.614 l61.803,32.492L150,126.287l50-48.738l-69.098-10.041L100,4.894L100,4.894z'/%3E%3C/svg%3E");
}
.mh-icon-cart > span{
  background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 200 200' style='enable-background:new 0 0 200 200;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23ff8800;%7D%0A%3C/style%3E%3Cpath class='st0' d='M200,0h-60v37.5H15v100h16.25h112.5H160V20h40V0L200,0z M35,117.5v-60h105v60H35L35,117.5z'/%3E%3Cpath class='st0' d='M143.75,157.5c6.203,0,11.25,5.047,11.25,11.25S149.953,180,143.75,180s-11.25-5.047-11.25-11.25 S137.547,157.5,143.75,157.5 M143.75,137.5c-17.259,0-31.25,13.991-31.25,31.25S126.491,200,143.75,200S175,186.009,175,168.75 S161.009,137.5,143.75,137.5L143.75,137.5z'/%3E%3Cpath class='st0' d='M31.25,157.5c6.203,0,11.25,5.047,11.25,11.25S37.453,180,31.25,180S20,174.953,20,168.75 S25.047,157.5,31.25,157.5 M31.25,137.5C13.991,137.5,0,151.491,0,168.75S13.991,200,31.25,200s31.25-13.991,31.25-31.25 S48.509,137.5,31.25,137.5L31.25,137.5z'/%3E%3C/svg%3E");
}

@media(max-width: 766px){
  .mh-spmenu{
    flex: 1 1 120px;
    padding: 5px 5px 5px 0px;
    display: flex;
    flex-direction: column;
  }
  .mh-select-brand{
    height: 30px;
  }
  .mh-select-brand::after{
    width: 30px;
    height: 30px;
  }
  .mh-select-brand select{
    height: 30px;
  }
  .mh-icon{
    flex: 1 1 0px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 2px;
  }
  .mh-icon > div{
    flex: 0 1 auto;
    height: 100%;
  }
  .mh-icon > div > a,
  .mh-icon > div > a:visited,
  .mh-icon > div > a:hover,
  .mh-icon > div > a:active{
    color: #f80;
  }
  .mh-icon > div > a{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    max-width: 100%;
    margin-left: 10px;
    box-sizing: border-box;
    position: relative;
    cursor: pointer;
    font-size: 12px;
    text-decoration: none;
  }
  .mh-icon > div > a > span{
    flex: 1 1 auto;
    height: 100%;
    max-height: 30px;
    width: 100%;
    display: block;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
  .mh-icon > div > a > div{
    flex: 0 1 auto;
    width: 100%;
    max-width: 50px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .mh-incart{
    top: -5px;
    left: -5px;
    right: unset;
  }
  .mh-incart > span{
    width: 16px;
    height: 16px;
    font-size: 12px;
  }
  .mh-category{
    flex: 0 0 auto;
  }
  .mh-select-index{
    position: relative;
    width: 100%;
    min-width: 80px;
    height: 30px;
    margin-right: 2px;
  }
  .mh-select-index::after{
    content: "";
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    top: 0;
    right: 0;
    z-index: 6;
    background-color: #999;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url(../commonfiles/images/mh-select-arrow.svg);
    background-size: 50% 50%;
    pointer-events: none;
  }
  .mh-select-index select{
    cursor: pointer;
    display: block;
    width: 100%;
    height: 30px;
    z-index: 5;

    border: 1px solid #999;
    padding: 1px;
    box-sizing: border-box;

    color: #7b7b7b;
    font-size: 12px;

    outline: none;
    text-transform: none;
    -webkit-appearance: menulist-button;
    -webkit-appearance: none;
    -moz-appearance: none;
  }
  .mh-hotword{
    background: #fff;
    color: #222;
    margin: 0px;
    padding: 0px;
  }
  .mh-hotword a,
  .mh-hotword a:visited{
    color: #222;
  }
  .mh-search {
    padding: 54px 4px 6px 4px;
    background: #f80;
    box-sizing: border-box;
  }
  .mh-search a{
    color: #fff;
  }
}

.mh-spuser{
  display: none;
  position: absolute;
  z-index: 100;
  top: 50px;
  width: 100%;
  height: auto;
  background: #fff;
  border: 2px solid #f80;
  padding: 5px 2px;
  box-sizing: border-box;
}

.mh-splogin{
  display: flex;
}

.mh-splogin > *{
  flex: 1 0 50%;
  max-width: 50%;
  padding: 2px;
}

.mh-splogin > * a,
.mh-splogin > * a:visited{
  text-decoration: none;
  display: block;
  text-align: center;
  padding: 10px 0px;
  width: 100%;
  background: #f80;
  color: #fff;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.mh-splogin > * a:hover,
.mh-splogin > * a:active{
  background: #fa0;
}

.mh-spmyinfo{
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
}

.mh-spmyinfo > *{
  flex: 1 0 50%;
  max-width: 50%;
  padding: 2px;
}

.mh-spmyinfo > * a,
.mh-spmyinfo > * a:visited{
  background: #dedede;
  text-decoration: none;
  display: block;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding: 10px 0px 10px 5px;
  font-size: 12px;
}
.mh-spmyinfo > * a:hover,
.mh-spmyinfo > * a:active{
  background: #eeeede;
}

.mh-spclose{
  width: 100%;
  text-align: center;
  margin-top: 10px;
  box-sizing: border-box;
  padding: 2px;
}
.mh-spclose > a,
.mh-spclose > a:visited{
  cursor: pointer;
  text-decoration: none;
  width: 100%;
  display: block;
  text-align: center;
  box-sizing: border-box;
  padding: 10px 0px;
  background: #aaa;
  color: #fff;
}
.mh-spclose > a:hover,
.mh-spclose > a:active{
  background: #bbb;
}

.mhLoginTrue{
  display: none;
}

@media(min-width: 767px){
  .mh-container{
    padding: 0 10px;
  }
}

.ui-widget-overlay {
  background-color: black;
  transition: all .2s ease-out;
  -moz-opacity: 0.30;
  opacity: .30;
  filter: Alpha(Opacity=30);
}

.ui-dialog .ui-dialog-title {
  text-align: -webkit-center;
  text-align: -moz-center;
  text-align: center;
}

.ui-dialog-buttonset {
  width: 100%;
  display: flex;
  display: -webkit-flex;
  text-align: center;
  justify-content: space-around;
  -webkit-justify-content: space-around;
}

.dialog-btn-yes {
  background-color: #f80 !important;
  color: #fff !important;
}

.dialog-btn-confirm-yes {
  background-color: #f80 !important;
  color: #fff !important;
  padding-left: 35px;
  padding-right: 35px;
}

.dialog-btn-no {
  background-color: #fff !important;
  color: #f80 !important;
}

.ui-widget-header {
  background: #f80 !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: large !important;
}

.ui-dialog .ui-dialog-content {
  /* overflow: visible; */
  /* height: 100px !important; */
  min-width: 320px;
}

.SideBySide p {
  display: inline-block;
  vertical-align: top;
}

.ui-draggable .ui-dialog-titlebar {
  /*  pointer-events: none; */
}


.mh-incart-db{
  position: absolute;
  display: block;
  text-align: center;
  top: -10px;
  right: 30px;
  pointer-events: none;
  user-select: none;
}
.mh-incart-db > span{
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  background: blue;
  color: #fff;
  z-index: 7;
}

@media(max-width: 766px){
  .mh-incart-db{
    position: absolute;
    right:30px;
    top: 0px;
    left: auto;
  }
  .mh-incart-db > span{
    background: blue;
  }
}
