.pager {
  overflow: hidden;
}

input[type="checkbox"].check-to-open {
  display: none;
}

input[type="checkbox"].check-to-open + label {
  cursor: pointer;
}

input[type="checkbox"].check-to-open.qf + label > span::after {
  content: "➕";
}

input[type="checkbox"].check-to-open.qf:checked + label > span::after {
  content: "➖";
}

input[type="checkbox"].check-to-open.plusminus + label > span::before {
  content: "➕ ";
}

input[type="checkbox"].check-to-open.plusminus + label > span::after {
  content: "";
}

input[type="checkbox"].check-to-open.plusminus:checked + label > span::before {
  content: "➖ ";
}

input[type="checkbox"].check-to-open.plusminus:checked + label > span::after {
  content: "";
}

input[type="checkbox"].check-to-open + label > span::after {
  content: "▽";
}

input[type="checkbox"].check-to-open:checked + label > span::after {
  content: "△";
}

input[type="checkbox"].check-to-open + label + .foldable {
  display: none;
}

input[type="checkbox"].check-to-open:checked + label + .foldable {
  display: block;
}

input[type="checkbox"].check-to-open + .foldable {
  display: none;
}

input[type="checkbox"].check-to-open:checked + div.foldable {
  display: block;
}

input[type="checkbox"].check-to-open:checked + .foldable {
  display: block;
}

input[type="checkbox"].check-option {
  display: none;
}

select.dconf {
  background-color: white;
  border: thin solid;
  width: 9em;
  margin-top: 2px;
  padding: 1px 1px;
}

select.dconf option {
  padding: 1px 0;
}

select.dconf option + option {
  border-top: 1px dashed #666;
}

.search-container .search-controller div.search-header {
  border: none;
}

.search-container .search-controller .contrl-title {
  background-color: #eeeeee;
  border-color: #666666;
}
.search-container .search-controller .contrl-title:hover {
  background-color: #dddddd;
}

.search-header .shd01 {
  display: table-cell;
  width: 55%;
}
.search-header .shd02 {
  display: table-cell;
  text-align: right;
  width: 45%;
}

.search-header .cshd01 {
  display: table-cell;
  width: 45%;
}
.search-header .cshd02 {
  display: table-cell;
  text-align: right;
  width: 55%;
}

/* sample
input.search-word-field {
  margin-top: 2px;
  padding-top: 4px;
  padding-bottom: 2px;
  border: thin solid;
  font-size: 1.05em;
}
*/

input.q {
  border-color: #09c;
}

.search-sel-kwlabel {
  border: 1px solid #09c;
  background: white;
  color: black;
}

div.facet-menu {
  padding: 0;
}

a.sfacet {
  color: #a00066;
  pointer-events: none;
}

.aggregation-list  {
  display: block;
  font-size: 1.2em;
  overflow: hidden;
}

.aggregation-list.hier ul {
  display: block;
}

div.aggregation-list li.fclose {
  display: none;
}

.aggregation-list.hier li {
  display: block;
}

.aggregation-list li.fmore a {
  text-align: right;
  padding-right: 1em;
  color: #333;
}

.aggregation-list.hier li.oc_tgl > a > span {
  width: auto;
  margin-right: 2em;
}

.aggregation-list.hier li.oc_tgl > a div.mark {
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  width: 2em;
  height: 100%;
  pointer-events: auto;
}

.aggregation-list.hier li.oc_tgl > a div.mark::before {
  position: absolute;
  color: #666;
  content: "▽";
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}

.aggregation-list.hier li.oc_tgl > a div.open.mark::before {
  content: "△";
}

.aggregation-list .facet-title {
  overflow: hidden;
  padding: .1em .3em;
}

.aggregation-list > .indented-list > li {
  background-color: white;
}

.aggregation-list ul.agg-leftmost > li a {
  padding-left: 1em;
}

.aggregation-list ul li, .aggregation-list ul.list-tree li {
  border-top: 1px dashed #d8d8d8;
  margin-top: -1px;
  margin-bottom: -1px;
  background-color: white;
}

.aggregation-list ul li a {
  padding-top: .5em;
  padding-bottom: .5em;
  display: inline-block;
  width: 100%;
}

.aggregation-list ul li.wrightelem span {
  display: inline-block;
  width: 85%;
}

.foldable-solid-border {
  border: solid #666666;
  border-width: 0 1px 1px 1px;
}

.padding-required {
  padding: 1em;
}

.search-btn {
  display: block;
  text-align: center;
  margin: 0 auto 0;
}

.search-btn button {
  width: 100%;
  text-align: center;
  vertical-align: middle;
  background-color: #09c;
  border: thin solid;
  color: white;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0;
  padding: .5em;
  border-radius: 4px;
  cursor: pointer;
}
.search-btn button:hover {
  background-color: #20a9d4;
}

/*
.search-select-doctype {
  width: 70%;
}

select.search-select-doctype {
  width: 70%;
}

.search-select-field-left {
  width: 20%;
  max-width: 20em;
  min-width: 10em;
}

.search-word-field {
  min-width: 5em;
  width: 50%;
}

.heading-emphasis {
  text-decoration: underline;
}

ul li.inlineblock {
  display: inline-block;
  padding: 0.5em;
  max-width: 10em;
}

.search-form-fields li {
  margin-top: 1em;
}

.default-hidden {
  display: none;
}

span.force-appear-no-js-inline {
  display: inline
}
*/

#search-option-toggler-label {
  margin-top: .5em;
  display: block;
}

div.search-options {
  margin: 0px 0px;
  padding: 4px;
}

.langlist {
  font-size: 0.6em;
}

.langlist span.label {
  font-size: 0.5em;
}

.special {
  float: left;
}

.enum-list {
  list-style-type: disc;
  line-style-position: inside;
}

.enum-list dt {
  margin-left: 0.5em;
  display: list-item;
  list-style-type: circle;
  line-style-position: inside;
}

.enum-list li {
  margin-left: 1em;
}

.enum-list dd {
  display: list-item;
  list-style-type: square;
  line-style-position: outside;
  margin-left: 1em;
}

.item-list > li .item-wrap .item-header .title .title-text {
  margin-top: 4px;
}

.item-list > li .item-wrap .item-header .artist {
  margin: 4px 0;
}

.item-list > li .item-wrap .item-body {
  padding: 0 4px 0 10px;
}

.item-list > li .item-wrap .item-body .spec .special {
  margin-top: 3px;
}

.item-list > li .item-wrap.prodbutton {
  padding: 0 1em 0 0;
}

.item-wrap {
  display: inline-block;
}

.item-list > .item > .item-wrap .item-header::after {
  clear: none;
}

.item-list > li .item-wrap:hover {
  background: none;
}

.item-list > li a.item-wrap:hover {
  background-color: #e9f7ff;
}

.item-list > li.item:hover {
  background: none;
}

.item-list > li.item {
  padding-top: 0.4em;
  padding-bottom: 2px;
  overflow: hidden;
}

.item-list > li .item-wrap {
  padding: 0;
}

.item-list > li .item-wrap .item-header .title .item-top-heading.artist {
  font-size: 1.0em;
  display: inline-block;
}

.item-list > li .item-wrap .item-body .spec ul.spec-list li {
  font-size: 90%;
  margin: 0;
  padding: 0;
}

.item-list > .item .item-header .title .summary-item {
  font-size: 0.8em;
}

.item-list > .item > .item-wrap .item-body {
  padding-top: 0;
}

.item-list > li .item-wrap .item-body .buttons form {
  height: auto;
}

.item-list > li .item-wrap .item-body .buttons form button {
  padding: .3em 1.5em;
}

.item-list > li .item-wrap .item-body .buttons form button i {
  font-size: 2.2em;
}

.item-list > li .buttons form {
  display: inline;
}

.item-list > li .buttons::after {
  display: table;
  content: " ";
  clear: both;
}

.item-list .noprod a.item-wrap {
  padding: .8em 0;
}

.item-list .noprod a.item-wrap .thumbnail, .item-list .noprod a.item-wrap .item-header {
  height: auto;
  vertical-align: middle;
}

.item-list .noprod a.item-wrap .thumbnail .col-media {
  display: block;
  padding: 0;
  margin: 0 auto;
  height: auto;
  width: min-content;
}

.item-list .noprod a.item-wrap .thumbnail .psmedia {
  display: block;
  margin: 0 auto;
}

.item-list .noprod a.item-wrap .item-header {
  display: table-cell;
  width: 80%;
}

.item-list .noprod a.item-wrap .item-header .title {
    display: block;
    padding: 0;
    margin: 0 auto;
    height: auto;
}

.item-list .noprod a.item-wrap .item-body, .item-list .noprod a.item-wrap .item-header .artist, .item-list .noprod a.item-wrap .item-header .title .media {
  display: none;
}

.fallback {
  width: 100%;
  padding: 1em 2em;
  background-color: #f8f8f8;
  border: 1px solid #999;
  margin: 0.5em auto;
}

.fallback li {
  padding: .3em 0;
}

.fallback .fbstr1 {
  font-weight: bold;
}

.fallback .fbstr2 {
  color: #ff6600;
  font-weight: bold;
}

.fallback .fbword {
  padding-left: .3em;
}

#search-result {
  width: 100%;
  min-height: 800px;
  margin: 0 auto;
  padding: 0 .2em;
}

.search-result .item-body .buttons form.mail-form {
  text-align: center;
  font-size: 0.9em;
}

.search-result .item-body .buttons form.mail-form button.btn {
  padding: 1em;
  margin: 0.3em;
}
.search-result .item-body .buttons form.mail-form button.btn i {
  font-size: 2.5em;
}
.search-result .item-body .buttons form.mail-form button.btn span {
  font-size: 1.5em;
}

.keyword-help {
  text-align: left;
  padding: 1em;
}

.keyword-help ul li {
  margin-bottom: 0.5em;
}

.sc-modal {
  display: none;
}

.sc-modal-wrap {
  position: relative;
  background: black;
  color: white;
  text-align: left;
  display: block;
  z-index: 999;
  margin: 0 10%;
  width: 80%;
  padding: 1em;
}

.sc-modal-wrap h3 {
  color: #fff;
}

.hidden-desktop {
  margin-bottom: 2em;
}

.hidden-desktop h4, .hidden-desktop h3 {
  padding: 2px;
}

.hidden-desktop.bottom-border {
  border-bottom: 1px solid #eee;
}

.item-list .thumbnail .block-no-image {
  min-width: 94px;
}

.hrow2 .selector, .hrow2 .hcol {
  text-align: left;
}

.hrow2 .selector {
  display: table-cell;
  width: 100%;
}

.hrow2 .selector .scwide, .hrow2 .selector span {
  display: inline-block;
}

.selector select.qtype {
  background-color: white;
  border: thin solid;
  width: 18em;
  margin-top: 2px;
  padding: 4px 2px 3px;
  display: table-cell;
}

.selector select.qtype option {
  padding: 2px 0;
}

.selector select.qtype option + option {
  border-top: 1px dashed #666;
}

.selector div.scwide {
  text-align: left;
  padding-left: .3em;
  padding-right: .3em;
  width: calc(100% - 19em);
}

.selector span {
  text-align: center;
}

.header-search2 {
  padding-top: 1em;
}

.header-search2 form .hrow2 .search-button, .header-search2 form .hrow2 .sc_btn {
  width: 60px;
  cursor: pointer;
}

.order-body {
  border: solid 1px #888888;
  display: block;
  padding: 5px;
  color: #2B2B2B;
  background-color: #fff;
  width: 100%;
  white-space: normal;
  overflow: hidden;
  word-wrap: break-word;
  white-space: nowrap;
  position: relative;
  padding-right: 8px;
  font-size: 0.75rem;
}

#search-result select, .header-search2 select {
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}

.header-search2 form div.rwords {
  text-align: left;
  font-size: 80%;
}

.rwords ul, .rwords li {
  display: inline-block;
}

.rwords li:first-child {
  margin: 0;
  background-color: transparent;
}

.rwords li:last-child {
  margin-right: 0;
}

.rwords li {
  padding: 0 1px;
  margin: 1px .7em 0 .2em;
  background-color: #f5f5f5;
  border-radius: 3px;
}

ul.opt_list {
  padding: 0;
}

ul.opt_list li {
  padding: 0.9em 0;
}

ul.opt_list li input {
  vertical-align: middle;
}

ul.opt_list li span {
  padding: 0 .6em 0 1px;
}

ul.opt_list li {
  border-bottom: 1px solid #999;
}

.item-list .item-link {
  display: inline-block;
  height: 3em;
}

.item-list .item-link.col-media {
  padding: 1em 1.5em 0 1.2em;
  display: table-cell;
  width: 8em;
}

.item-list .item-link.col-title {
  padding-right: 1em;
}

.item-wrap .media {
  margin-top: 10px;
  font-size: 0.85em;
}

.noprod .item-wrap .item-header .title .media {
  border-color: rgba(0,0,0,0);
}

.item-wrap .media.psmedia {
  font-size: 1.1em;
  padding: 5px 8px 4px;
  margin-top: 2.5em;
}

.item-thumb .noprod a.item-wrap .thumbnail {
  border: 1px solid #aaa;
}

.item-thumb .item-link {
  display: block;
}

.item-thumb .item-link.col-media {
  padding: .5em 0 1em 0;
  text-align: center;
}

.item-thumb .item-link.col-title {
  text-align: center;
  height: 6em;
  padding: 0 .3em;
}

.item-thumb .item-top-heading, .item-thumb .summary-item {
  display: block;
  padding: .2em;
}

.item-thumb .prodbutton .item-body {
  height: 2.9em;
}

#unsch3 {
  font-size: 16px;
}

button.btn.js-clear-filter, a.btn.js-facet-menu {
  font-size: 1em;
  padding: 0.7em 0.8em 0.6em;
  vertical-align: baseline;
  border-radius: 3px;
  color: #555;
}

.js-clear-str, .js-select-str {
  display: inline;
}

a.btn.js-facet-menu {
  display: inline-block;
  float: right;
}

div.aggregation-list li.cnarrow a {
  color: #333;
  padding: .3em .5em;
  background-color: #ececec;
}

div.aggregation-list li.cnarrow a:hover {
  background-color: #dcdcec;
}

div.aggregation-list li.cnarrow a .btmark {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  border: 1px solid rgba(0,0,0,.2);
  vertical-align: middle;
  margin-right: 0.3em;
  background: #fff;
}

div.aggregation-list li.cnarrow a .btmark > span::before, div.aggregation-list li.cnarrow a .btmark > span::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 84%;
  height: 16%;
  margin: -8% 0 0 -42%;
  background: #000;
}

div.aggregation-list li.cnarrow a .btmark > span::before {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
}

div.aggregation-list li.cnarrow a .btmark > span::after {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.closeButton::after {
  position: absolute;
  content: '\0d7';
  font-size: 1.5em;
  color: #fff;
  top: .2em;
  right: .2em;
  padding: .2em;
  margin: 0;
  cursor: pointer;
}

h5 span.cdjh5 {
  font-size: 1.25em;
}

@media only screen and ( max-width: 539px) {
/*
  .search-result .block-no-image {
    width: 72px;
    height: 72px;
  }

  .search-select-field-left, select.search-select-field-left {
    width: 30%;
    min-width: 30%;
  }

  #container {
    padding-left: 8px;
    padding-right: 8px;
    width: auto;
  }

  #container #content {
    width: auto;
  }

  #container #content:after {
    content: " ";
    display: block;
    clear: both;
  }
*/

  .item-list-recent {
    padding-bottom: 2px;
  }

  .keyword-help {
    font-size: 0.9em;
  }

  .pager {
    font-size: 1.3em;
    padding-bottom: 2px;
  }

  .pager li.current a, .pager li a {
    padding: 0.8em 0.8em 0.5em;
  }

}

@media only screen and ( min-width: 540px ) and ( max-width: 799px) {

  #container {
    padding-left: 16px;
    padding-right: 16px;
    width: auto;
  }

  #container #content {
    width: auto;
  }

  #content:after {
    content: " ";
    display: block;
    clear: both;
  }
/*
  .search-result .block-no-image {
    width: 94px;
    height: 94px;
  }
*/
}

@media only screen and ( min-width: 800px ) and ( max-width: 1023px) {
  .item-body .buttons form button.btn {
//    padding: 0.2em 1.0em;
//    margin: 0.3em;
  }

  .aggregation-list {
    font-size: 0.8em;
  }

  .aggregation-list ul li span {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media only screen and ( min-width: 1024px ) {
  .item-body .buttons form button.btn {
//    padding: 0.2em 1.0em;
//    margin: 0.3em;
  }

  .aggregation-list {
    font-size: 0.8em;
  }

  .aggregation-list ul li span {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media only screen and ( min-width: 960px ) {
a.btn.js-facet-menu {
  display: none;
}
}

@media only screen and (min-width: 302px) and (max-width: 452px) {
.item-thumb > li {
  width: 50%;
}
}

@media only screen and (min-width: 453px) and (max-width: 654px) {
.item-thumb > li {
  width: 33%;
}
}

@media only screen and (max-width: 767px) {
.selector select.qtype {
  width: 15em;
}
.selector div.scwide {
  width: 100%;
}

.selector div.scwide .minidel {
  display: none;
}

.search-header .cshd01 {
  width: 55%;
}
.search-header .cshd02 {
  font-size: 1em;
  width: 45%;
}
}

@media only screen and ( min-width: 768px ) {
.cbr::before {
  content: "\A";
  white-space: pre;
}
}
