@charset "utf-8";
body.zoom {
  overflow: hidden;
  height: 100%;
}
main {
  padding-bottom: 64px;
}
main #slide {
  text-align: center;
  padding-bottom: 16px;
}
main #slide.ready > ul {
  opacity: 0;
}
main #slide > div {
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}
main #slide > div ul {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -moz-transition: -moz-transform 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -o-transition: -o-transform 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -ms-transition: -ms-transform 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transition: transform 0.6s cubic-bezier(0.455, 0.03, 0.515, 0.955);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}
main #slide > div ul li {
  position: absolute;
  top: 0;
  width: 100%;
  padding-top: 56.25%;
  background: url("/store/techo/sp/ja/2017/images/loading3.gif") no-repeat 50% 50%;
  -webkit-background-size: 10% auto;
  -moz-background-size: 10% auto;
  background-size: 10% auto;
  -webkit-transform: translate(0, -100%);
  -moz-transform: translate(0, -100%);
  -o-transform: translate(0, -100%);
  -ms-transform: translate(0, -100%);
  transform: translate(0, -100%);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}
main #slide > div ul li.ready img {
  opacity: 0;
}
main #slide > div ul li:first-child {
  left: 0;
}
main #slide > div ul li.active {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
main #slide > div ul li:before {
  position: absolute;
  bottom: 9px;
  right: 9px;
  width: 25px;
  height: 25px;
  background: #fff;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  z-index: 1;
  font-size: 220%;
  color: #509be5;
  text-align: center;
  display: block;
  overflow: hidden;
  line-height: 1.14;
  overflow: hidden;
}
main #slide > div ul li img {
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  transition: opacity 0.6s;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
main #slide > ul {
  font-size: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  transition: opacity 0.6s;
}
main #slide > ul li {
  font-size: 10px;
  margin-top: 0.8em;
  display: inline-block;
  width: 2.5%;
  padding-top: 2.5%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #808080;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  transition: opacity 0.6s;
}
main #slide > ul li + li {
  margin-left: 3.75%;
}
main #slide > ul li.current {
  opacity: 0.4;
}
main #info {
  border-top: #e5e5e5 1px solid;
  font-size: 140%;
  color: #e60000;
  letter-spacing: 0.05em;
  padding: 0.71em 6%;
}
main #detail {
  border-top: #e5e5e5 1px solid;
}
main #detail header {
  margin: 0 3.13%;
  padding: 1em 0 2em;
  border-bottom: #e5e5e5 1px solid;
}
main #detail header h2 {
  margin-bottom: 1.6em;
}
main #detail header h2 span {
  font-size: 120%;
  line-height: 1.4;
  display: inline-block;
  vertical-align: bottom;
}
main #detail header h2 span img {
  display: block;
  margin-bottom: 0px;
  width: 75%;
}
main #detail header h2 strong {
  font-size: 200%;
  line-height: 1.4;
  display: block;
}
main #detail header h2 small {
  font-size: 140%;
  line-height: 1.4;
  display: block;
}
main #detail header div {
  padding-left: 2.67%;
}
main #detail header div:before,
main #detail header div:after {
  content: "";
  display: table;
}
main #detail header div:after {
  clear: both;
}
main #detail header div img {
  float: left;
  width: 23.97%;
  max-width: 70px;
}
main #detail header div img + img {
  margin-left: 1px;
}
main #detail > a.open span {
  opacity: 0;
}
main #detail > a span {
  background: -webkit-linear-gradient(top, rgba(255,255,255,0.5), #fff);
  background: -moz-linear-gradient(top, rgba(255,255,255,0.5), #fff);
  background: -o-linear-gradient(top, rgba(255,255,255,0.5), #fff);
  background: -ms-linear-gradient(top, rgba(255,255,255,0.5), #fff);
  background: linear-gradient(to bottom, rgba(255,255,255,0.5), #fff);
  display: block;
  height: 2.8em;
  position: absolute;
  top: -2.8em;
  left: 50%;
  width: 106.67%;
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: opacity 0.45s;
  -moz-transition: opacity 0.45s;
  -o-transition: opacity 0.45s;
  -ms-transition: opacity 0.45s;
  transition: opacity 0.45s;
}
main #products {
  margin-top: 6.4em;
  border-top: #e5e5e5 1px solid;
  border-bottom: #e5e5e5 1px solid;
}
main #products dl {
  background: #f5f5f5;
  padding: 0 3.13% 1.8em;
}
main #products dl dt {
  padding: 1em 0 1.8em;
}
main #products dl dt span {
  font-size: 120%;
  line-height: 1.4;
  display: inline-block;
  vertical-align: bottom;
}
main #products dl dt span img {
  display: block;
  margin-bottom: 0px;
  width: 75%;
}
main #products dl dt strong {
  font-size: 200%;
  line-height: 1.4;
  display: block;
}
main #products dl dt small {
  font-size: 140%;
  line-height: 1.4;
  display: block;
}
main #products #item-image {
  padding-bottom: 2.4em;
}
main #products #item-image:before,
main #products #item-image:after {
  content: "";
  display: table;
}
main #products #item-image:after {
  clear: both;
}
main #products #item-image figure {
  width: 65.33%;
  float: left;
  display: block;
  padding-top: 65.33%;
  position: relative;
}
main #products #item-image figure.book:after {
  content: "ほぼ日ストア購入特典";
  position: absolute;
  bottom: 0;
  left: 0;
  min-width: 100%;
  white-space: nowrap;
  -webkit-transform: translate(0, 100%);
  -moz-transform: translate(0, 100%);
  -o-transform: translate(0, 100%);
  -ms-transform: translate(0, 100%);
  transform: translate(0, 100%);
  text-align: center;
  font-weight: normal;
  font-size: 120%;
  line-height: 1.25;
  padding-top: 0.17em;
}
main #products #item-image figure.cover:after {
  content: "ほぼ日ストア購入特典";
  position: absolute;
  bottom: 0;
  left: 0;
  min-width: 100%;
  white-space: nowrap;
  -webkit-transform: translate(0, 100%);
  -moz-transform: translate(0, 100%);
  -o-transform: translate(0, 100%);
  -ms-transform: translate(0, 100%);
  transform: translate(0, 100%);
  text-align: center;
  font-weight: normal;
  font-size: 120%;
  line-height: 1.25;
  padding-top: 0.17em;
}
main #products #item-image figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
main #products #item-image figure img.state-ready {
  opacity: 0;
}
main #products #item-image ul {
  float: left;
  width: 32%;
  margin-left: 1.33%;
}
main #products #item-image ul[class] {
  display: none;
}
main #products #item-image ul li {
  width: 46%;
  float: left;
  padding-bottom: 4%;
  margin-left: 4%;
}
main #products #item-image ul li[class] {
  display: none;
}
main #products #item-image ul li a {
  padding-top: 100%;
  position: relative;
}
main #products #item-image ul li a:after {
  content: "";
  width: 100%;
  display: block;
  position: absolute;
  height: 2px;
  overflow: hidden;
  bottom: -2px;
  left: 0;
  background: #e60000;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
main #products #item-image ul li a.current {
  cursor: default;
  pointer-events: none;
}
main #products #item-image ul li a.current:after {
  opacity: 1;
}
main #products #item-image ul li a img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
main #products #item-image ul li a img.state-ready {
  opacity: 0;
}
main #products .mdi-unfold-more {
  border: 1px #999 solid;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  position: relative;
  font-size: 160%;
  line-height: 2.5;
  font-weight: normal;
}
main #products .mdi-unfold-more:before {
  position: absolute;
  font-size: 125%;
  top: 50%;
  right: 2.01%;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
main #products .mdi-unfold-more select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0 10.07% 0 5.03%;
  position: relative;
  z-index: 1;
  width: 100%;
}
main #products .mdi-unfold-more select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
main #products .mdi-unfold-more select::-ms-value {
  background: none;
}
main #products .mdi-unfold-more select::-ms-expand {
  display: none;
}
main #products .mdi-unfold-more option {
  color: #000;
}
main #products #item-price {
  padding-top: 1em;
  letter-spacing: 0.05em;
}
main #products #item-price span {
  color: #e60000;
  font-size: 210%;
}
main #products #item-price span[class] {
  display: none;
}
main #products #item-price small {
  font-size: 140%;
}
main #products #item-notice {
  padding-bottom: 1.4em;
}
main #products #item-notice p {
  color: #e60000;
  font-size: 140%;
  letter-spacing: 0.05em;
  padding-top: 1.29em;
}
main #products #item-notice p[class] {
  display: none;
  padding-top: 1.29em !important;
}
main #products #item-notice p[class][style*="block"] ~ p {
  padding-top: 0.43em;
}
main #products #item-stock {
  border-top: #e5e5e5 1px solid;
  font-size: 0;
}
main #products #item-stock:before {
  font-size: 10px;
  content: "";
  height: 3.8em;
  display: inline-block;
  vertical-align: middle;
}
main #products #item-stock strong {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: inline-block;
  vertical-align: middle;
  width: 33.33%;
}
main #products #item-stock span {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 1.31;
  display: inline-block;
  vertical-align: middle;
  font-weight: normal;
  max-width: 66.67%;
}
main #products #item-stock span + span {
  font-weight: bold;
  color: #e60000;
}
main #products #item-amount {
  border-top: #e5e5e5 1px solid;
  display: table;
  width: 100%;
}
main #products #item-amount strong {
  font-size: 140%;
  line-height: 1.5;
  display: table-cell;
  vertical-align: middle;
  width: 33.33%;
}
main #products #item-amount ul {
  display: table-cell;
  vertical-align: middle;
  width: 66.67%;
  padding: 1em 0;
}
main #products #item-amount ul li {
  float: left;
  font-size: 100%;
}
main #products #item-amount ul li + li {
  width: 30.5%;
  border-left: 1px #fff solid;
  height: 4em;
  background: #509be5;
  position: relative;
  cursor: pointer;
  color: #fff;
  -webkit-transition: color 0.3s, background-color 0.3s;
  -moz-transition: color 0.3s, background-color 0.3s;
  -o-transition: color 0.3s, background-color 0.3s;
  -ms-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
}
main #products #item-amount ul li + li:before {
  font-size: 200%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
main #products #item-amount ul li + li.disabled {
  pointer-events: none;
  cursor: default;
  background: #d8d8d8;
  color: #808080;
}
main #products #item-amount ul li:first-child {
  width: 39%;
  height: 4em;
  border: 1px #999 solid;
  -webkit-border-radius: 6px 0 0 6px;
  border-radius: 6px 0 0 6px;
  background: #fff;
  text-align: center;
  overflow: hidden;
}
main #products #item-amount ul li:first-child var {
  font-size: 160%;
  line-height: 2.38;
  font-style: normal;
  letter-spacing: 0.05em;
}
main #products #item-amount ul li:first-child + li + li {
  -webkit-border-radius: 0 6px 6px 0;
  border-radius: 0 6px 6px 0;
}
main #products #item-btn {
  border-top: #e5e5e5 1px solid;
  padding: 0.8em 0 3em;
}
main #products #item-btn a {
  -webkit-border-radius: 6px;
  border-radius: 6px;
  display: none;
  text-align: center;
  color: #fff;
}
main #products #item-btn a:before {
  font-size: 240%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.33%;
}
main #products #item-btn a:after {
  content: "";
  height: 6em;
  display: inline-block;
  vertical-align: middle;
}
main #products #item-btn a span {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
  font-size: 160%;
  line-height: 1.31;
  letter-spacing: 0.05em;
}
main #products #item-btn a.btn-cart {
  background: #509be5;
}
main #products #item-btn a.btn-cart span:after {
  content: "カートに入れる";
}
main #products #item-btn a.btn-mail {
  margin-top: 1em;
  background: #509be5;
}
main #products #item-btn a.btn-lot {
  background: #189944;
}
main #products #item-btn a.btn-lot span:after {
  content: "抽選販売に申込む";
}
main #products .item-detail {
  padding-bottom: 0;
  border-top: #e5e5e5 1px solid;
  letter-spacing: 0.05em;
}
main #products .item-detail:before {
  content: "";
  height: 3.8em;
  display: inline-block;
  vertical-align: middle;
}
main #products .item-detail strong {
  font-size: 140%;
  line-height: 1.5;
  display: inline-block;
  vertical-align: middle;
  width: 46.67%;
}
main #products .item-detail strong ~ span {
  max-width: 53.33%;
  display: inline-block;
  vertical-align: middle;
  font-size: 160%;
  line-height: 1.31;
  font-weight: normal;
}
main #products .item-detail strong ~ span[class] {
  display: none;
}
main #products #item-summary {
  border-top: #e5e5e5 1px solid;
  padding-top: 1em;
}
main #products #item-summary p {
  display: none;
  font-size: 140%;
  font-weight: normal;
}
main #products .soldout #item-btn a.btn-cart {
  background: #ccc;
  cursor: default;
  pointer-events: none;
  color: #808080;
}
main #products .soldout #item-btn a.btn-cart:before {
  display: none;
}
main #products .soldout #item-btn a.btn-cart span:after {
  content: "在庫なし";
}
main #products .soldout #item-btn a[style*="block"] + a.btn-mail {
  display: block !important;
}
main #products .soldout #item-btn a.btn-lot {
  background: #d8d8d8;
  cursor: default;
  pointer-events: none;
  color: #808080;
}
main #products .soldout #item-btn a.btn-lot:before {
  display: none;
}
main #products .soldout #item-btn a.btn-lot span:after {
  content: "受付終了";
}
main #products > div ul {
  padding-bottom: 2em;
}
main #products > div ul li {
  border-top: #e5e5e5 1px solid;
  padding: 0.8em 0;
}
main #products > div ul li a {
  position: relative;
  font-size: 160%;
  line-height: 1.5;
  padding: 0 9% 0 3%;
}
main #products > div ul li a:before {
  font-size: 150%;
  position: absolute;
  top: 50%;
  right: 1.56%;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
main > section {
  position: relative;
  border-bottom: #e5e5e5 1px solid;
  padding-top: 1.6em;
}
main > section + section {
  padding-top: 5em;
}
main > section h3.title {
  padding: 1em 0;
  cursor: pointer;
}
main > section h3.title span {
  font-size: 200%;
}
main > section > div {
  padding: 0 3.13%;
}
main > section > div > p {
  text-align: center;
  font-size: 140%;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #808080;
}
main > section > a {
  width: 93.75%;
  height: 3.5em;
  border-left: #e5e5e5 1px solid;
  border-right: #e5e5e5 1px solid;
  border-bottom: #e5e5e5 1px solid;
  -webkit-border-radius: 0 0 7px 7px;
  border-radius: 0 0 7px 7px;
  background: #fff;
  position: absolute;
  left: 50%;
  bottom: -3.5em;
  -webkit-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  font-size: 100%;
  color: #000;
  z-index: 1;
}
main > section > a.open:before {
  -webkit-transform: translate(-50%, -50%) rotateZ(180deg);
  -moz-transform: translate(-50%, -50%) rotateZ(180deg);
  -o-transform: translate(-50%, -50%) rotateZ(180deg);
  -ms-transform: translate(-50%, -50%) rotateZ(180deg);
  transform: translate(-50%, -50%) rotateZ(180deg);
}
main > section > a:before {
  font-size: 240%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
main #comment > div {
  padding: 0;
}
main #comment > div > p {
  text-align: left;
  color: #000;
  font-weight: normal;
  padding: 0.8em 3.13% 0;
}
main #comment > div > p + div {
  display: none;
}
main #comment > div > div {
  margin-top: 1em;
  overflow: hidden;
}
main #comment > div > div div {
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform;
}
main #comment > div > div div:before,
main #comment > div > div div:after {
  content: "";
  display: table;
}
main #comment > div > div div:after {
  clear: both;
}
main #comment > div > div div dl {
  float: left;
  letter-spacing: 0.05em;
}
main #comment > div > div div dl.active dd:first-child p {
  opacity: 1;
}
main #comment > div > div div dl dd:first-child {
  border: 1px #e5e5e5 solid;
  background: #f5f5f5;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  padding: 0.6em 0;
  margin: 0 1.92%;
  position: relative;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  min-height: 16.8em;
  position: relative;
}
main #comment > div > div div dl dd:first-child:before {
  content: "";
  position: absolute;
  left: 10.08%;
  bottom: -26px;
  width: 16px;
  height: 26px;
  background-image: url("/store/techo/pc/ja/2017/images/comment/comment_arrow.svg");
  background-repeat: no-repeat;
  -webkit-background-size: 100% 100%;
  -moz-background-size: 100% 100%;
  background-size: 100% 100%;
  z-index: 1;
}
main #comment > div > div div dl dd:first-child p {
  width: 100%;
  font-size: 140%;
  line-height: 1.5;
  font-weight: normal;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
  -o-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0 4%;
  letter-spacing: 0.05em;
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  -ms-transition: opacity 0.6s;
  transition: opacity 0.6s;
}
main #comment > div > div div dl dd:first-child + dd {
  text-align: right;
  font-size: 120%;
  color: #808080;
  padding-right: 1.92%;
}
main #comment > div > div div dl dt {
  font-size: 140%;
  line-height: 1.5;
  padding-left: 11.92%;
  margin-top: -0.43em;
}
main #comment > div > div div dl dt i {
  display: inline-block;
  vertical-align: middle;
  width: 17.47%;
  padding-top: 17.47%;
  margin-left: 26px;
  position: relative;
}
main #comment > div > div div dl dt i img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
main #comment > div > div div dl dt span {
  display: inline-block;
  vertical-align: middle;
  word-wrap: break-word;
  width: 63.32%;
  padding-left: 4.37%;
  line-height: 1.7;
}
main #comment > div ul {
  text-align: center;
  padding: 1em 3.13% 3em;
}
main #comment > div ul li:nth-child(1) {
  width: 40%;
  display: inline-block;
  margin-bottom: 1.5em;
}
main #comment > div ul li:nth-child(2) {
  width: 40%;
  display: inline-block;
  margin-left: 6.67%;
  margin-bottom: 1.5em;
}
main #comment > div ul li.disabled a {
  background: #d8d8d8;
  cursor: default;
  color: #808080;
}
main #comment > div ul li a {
  -webkit-transition: background 0.6s, color 0.6s;
  -moz-transition: background 0.6s, color 0.6s;
  -o-transition: background 0.6s, color 0.6s;
  -ms-transition: background 0.6s, color 0.6s;
  transition: background 0.6s, color 0.6s;
  margin: 0;
}
main #spec > div section {
  padding: 0.8em 0 1.8em;
}
main #spec > div section h4 {
  text-align: center;
  font-size: 160%;
  line-height: 1.56;
  letter-spacing: 0.05em;
  padding-bottom: 1em;
}
main #spec > div section dl {
  font-size: 140%;
  letter-spacing: 0.05em;
  border-bottom: #e5e5e5 1px solid;
}
main #spec > div section dl dt {
  border-top: #e5e5e5 1px solid;
  line-height: 1.79;
  padding-top: 0.71em;
}
main #spec > div section dl dd {
  font-weight: normal;
  padding-bottom: 0.57em;
}
main #spec > div section dl dd strong {
  display: block;
  font-weight: bold;
}
main #spec > div section a.btn-round {
  margin: 1em 0 0;
}
main #spec > div section div {
  margin-top: 2.2em;
}
main #spec > div section div figure + figure {
  margin-top: 0.8em;
}
main #spec > div section div ol {
  margin-top: 1.8em;
}
main #spec > div section div ol li {
  font-size: 140%;
  line-height: 1.96;
  letter-spacing: 0.05em;
  font-weight: normal;
}
main #spec > div section div ol li:before {
  padding-right: 0.5em;
}
main #spec > div section div ol li:nth-child(1):before {
  content: '1.';
}
main #spec > div section div ol li:nth-child(2):before {
  content: '2.';
}
main #spec > div section div ol li:nth-child(3):before {
  content: '3.';
}
main #spec > div section div ol li:nth-child(4):before {
  content: '4.';
}
main #spec > div section div ol li:nth-child(5):before {
  content: '5.';
}
main #spec > div section div ol li:nth-child(6):before {
  content: '6.';
}
main #spec > div section div ol li:nth-child(7):before {
  content: '7.';
}
main #spec > div section div ol li:nth-child(8):before {
  content: '8.';
}
main #spec > div section div ol li:nth-child(9):before {
  content: '9.';
}
main #spec > div section div ol li:nth-child(10):before {
  content: '10.';
}
main #spec > div section div ol li:nth-child(11):before {
  content: '11.';
}
main #spec > div section div ol li:nth-child(12):before {
  content: '12.';
}
main #spec > div section div ol li:nth-child(13):before {
  content: '13.';
}
main #spec > div section div ol li:nth-child(14):before {
  content: '14.';
}
main #spec > div section div ol li:nth-child(15):before {
  content: '15.';
}
main #demerit > div > p {
  text-align: left;
  font-size: 160%;
  line-height: 1.53;
  color: #000;
  font-weight: normal;
  padding-top: 0.5em;
}
main #demerit > div > p + p {
  font-weight: bold;
  padding-top: 1.13em;
}
main #demerit > div dl {
  margin-top: 1.8em;
}
main #demerit > div dl dt {
  font-size: 160%;
  line-height: 1.56;
  color: #000;
}
main #demerit > div dl dt:before {
  display: inline-block;
  vertical-align: middle;
  font-size: 150%;
  position: relative;
  top: -0.02em;
}
main #demerit > div dl dt.mdi-plus-box {
  color: #509be5;
  cursor: pointer;
}
main #demerit > div dl dt.mdi-minus-box {
  cursor: pointer;
}
main #demerit > div dl dd p {
  font-size: 140%;
  line-height: 1.79;
  font-weight: normal;
  padding-top: 0.29em;
}
main #demerit > div dl dd p img {
  font-size: 10px;
  margin: 0.8em 0;
}
main #demerit > div dl dd + dt {
  margin-top: 1em;
}
main #demerit > div ul {
  padding: 2.2em 0 1.8em;
}
main #demerit > div ul:before,
main #demerit > div ul:after {
  content: "";
  display: table;
}
main #demerit > div ul:after {
  clear: both;
}
main #demerit > div ul li + li {
  margin-top: 1em;
}
main #demerit > div ul li a {
  margin: 0;
}
main #magazine > div > p {
  padding: 0.57em 0 1.43em;
}
main #magazine > div ul {
  padding-bottom: 2.8em;
}
main #magazine > div ul li + li {
  margin-top: 1.8em;
}
main #magazine > div ul li dl dt {
  padding-top: 56.17%;
  position: relative;
  background: url("/store/techo/sp/ja/2017/images/loading3.gif") no-repeat 50% 50%;
  -webkit-background-size: 10.67% auto;
  -moz-background-size: 10.67% auto;
  background-size: 10.67% auto;
}
main #magazine > div ul li dl dt img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
main #magazine > div ul li dl dd {
  font-size: 140%;
  line-height: 1.75;
  letter-spacing: 0.05em;
  position: relative;
  padding: 0.29em 5% 0 1.67%;
  font-weight: normal;
}
main #magazine > div ul li dl dd strong {
  font-size: 100%;
  font-weight: bold;
}
main #recommend > div ul {
  padding: 0.8em 0 3em;
}
main #recommend > div ul:before,
main #recommend > div ul:after {
  content: "";
  display: table;
}
main #recommend > div ul:after {
  clear: both;
}
main #recommend > div ul > li {
  width: 48.33%;
}
main #recommend > div ul > li:nth-child(2n+1) {
  float: left;
  clear: both;
}
main #recommend > div ul > li:nth-child(2n) {
  float: right;
}
main #recommend > div ul > li:nth-child(2) ~ li {
  margin-top: 1.8em;
}
main #recommend > div ul > li dl dt {
  -webkit-background-size: 16.55% auto;
  -moz-background-size: 16.55% auto;
  background-size: 16.55% auto;
}
main #lot > div > p {
  font-size: 140%;
  padding-top: 0.29em;
  color: #e60000;
  text-align: left;
  line-height: 1.75;
}
main #lot > div dl {
  font-size: 140%;
  letter-spacing: 0.05em;
  padding-top: 1.29em;
}
main #lot > div dl dt {
  border-top: #e5e5e5 1px solid;
  line-height: 1.79;
  padding-top: 1em;
}
main #lot > div dl dd {
  padding-bottom: 1.29em;
  font-weight: normal;
}
main #lot > div dl dd strong {
  display: block;
  font-weight: bold;
}
main #benefit > div > p {
  padding: 0.57em 0 1.14em;
}
main #benefit > div div {
  text-align: center;
  padding-bottom: 1.8em;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
main #benefit > div div dl {
  width: 31%;
  letter-spacing: 0.05em;
}
main #benefit > div div dl + dl {
  margin-left: 3.33%;
}
main #benefit > div div dl dd {
  padding-top: 100%;
  position: relative;
  background: url("/store/techo/sp/ja/2017/images/loading3.gif") no-repeat 50% 50%;
  -webkit-background-size: 25.81% auto;
  -moz-background-size: 25.81% auto;
  background-size: 25.81% auto;
}
main #benefit > div div dl dd img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
main #benefit > div div dl dt {
  font-size: 120%;
  line-height: 1.5;
  font-weight: normal;
  padding-top: 0.33em;
}
main #benefit > div > a {
  clear: both;
  margin: 0 0 3em;
}
main #staff > div dl {
  font-size: 140%;
  line-height: 1.5;
  padding: 0.57em 0;
  letter-spacing: 0.05em;
}
main #staff > div dl dd {
  font-weight: normal;
}
main #staff > div dl dd a {
  display: inline;
}
main #staff > div dl dd + dt {
  margin-top: 1em;
}
.ua-desktop main #slide > div ul li {
  -webkit-background-size: 32px auto;
  -moz-background-size: 32px auto;
  background-size: 32px auto;
}
.ua-desktop main #slide > ul li {
  cursor: pointer;
}
#detail_toolstoys main #item-image ul {
  height: 0;
  overflow: hidden;
}
#alert {
  width: 100%;
  padding: 2.6em 6.25% 1.8em;
  text-align: center;
}
#alert p {
  text-align: left;
  font-size: 140%;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: normal;
  padding: 1.29em 0 1.86em;
}
#alert p a {
  color: #509be5;
  display: inline;
}
#alert > a {
  text-align: center;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  background: #509be5;
}
#alert > a:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 4.4em;
}
#alert > a span {
  display: inline-block;
  vertical-align: middle;
  font-size: 160%;
  color: #fff;
}
#intro {
  position: relative;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  margin-top: 1.8em;
  height: 16.8em;
}
#intro > *:last-child {
  margin-bottom: 1.8em;
}
#intro > div {
  width: 93.75%;
  margin: 3em auto 0;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
#intro > div:first-child {
  margin-top: 0;
}
#intro > div.bg {
  background: #f5f5f5;
  border: 2px #f5f5f5 solid;
  padding: 1.8em 1.88%;
}
#intro > div.border {
  border: 2px #d9d9d9 solid;
  padding: 1.8em 1.88%;
}
#intro > div *:first-child {
  margin-top: 0;
}
#intro > div h4 {
  font-size: 200%;
  line-height: 1.4;
  font-weight: bold;
  border-bottom-color: #000;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  display: inline-block;
  letter-spacing: 0.05em;
}
#intro > div p {
  font-size: 160%;
  line-height: 1.75;
  margin-top: 1.5em;
  font-weight: normal;
  letter-spacing: 0.05em;
  word-wrap: break-word;
}
#intro > div p br {
  display: none;
}
#intro > div p b {
  font-weight: bold;
}
#intro > div p i {
  font-style: italic;
}
#intro > div p u {
  text-decoration: underline;
}
#intro > div p del {
  text-decoration: line-through;
}
#intro > div p small {
  font-size: 87.5%;
  line-height: 2;
}
#intro > div p em {
  font-size: 125%;
  line-height: 1.4;
  font-style: normal;
}
#intro > div p a {
  color: #509be5;
  display: inline;
}
#intro > div p img {
  display: inline-block;
  vertical-align: bottom;
  font-size: 62.5%;
}
#intro > div p img[src*="icon"] {
  width: 6em;
  height: 6em;
}
#intro > div p .color-red {
  color: #e60000;
}
#intro > div p .color-gray {
  color: #808080;
}
#intro > div p + * {
  margin-top: 2.4em !important;
}
#intro > div p + p {
  margin-top: 1.13em !important;
}
#intro > div dl {
  margin-top: 3em;
  display: table;
  table-layout: fixed;
  width: 100%;
}
#intro > div dl dt {
  display: table-cell;
  width: 5.31em;
  vertical-align: top;
  text-align: left;
  font-size: 160%;
  line-height: 1.25;
  font-weight: bold;
  padding: 0.25em 1em 0.25em 0;
}
#intro > div dl dt img {
  font-size: 62.5%;
  width: 6em;
  height: 6em;
  margin: -0.4em 0;
}
#intro > div dl dd {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
#intro > div dl dd p {
  margin: 0;
}
#intro > div dl + * {
  margin-top: 2.4em !important;
}
#intro > div dl + dl {
  margin-top: 2.8em !important;
}
#intro > div ol {
  margin-top: 2.4em;
}
#intro > div figure {
  margin-top: 3em;
}
#intro > div a.btn-round {
  display: block;
  text-align: center;
  padding: 0.4em 3.33%;
  margin-top: 3em;
}
#intro > div a.btn-round + a {
  margin-top: 1em;
}
#intro > div a.btn-round:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 4.8em;
}
#intro > div a.btn-round span.mdi-arrow-right {
  display: inline-block;
  vertical-align: middle;
  font-size: 160%;
  line-height: 1.25;
  text-align: left;
  padding-right: 1.63em;
  position: relative;
  letter-spaing: 0;
}
#intro > div a.btn-round span.mdi-arrow-right:before {
  font-size: 150%;
  position: absolute;
  bottom: -0.08em;
  right: 0;
}
#intro > div ul {
  margin-top: 3em;
}
#intro > div ul.dir-vert li + li {
  margin-top: 1em;
}
#intro > div ul.dir-vert li a {
  color: #509be5;
  display: table;
  table-layout: fixed;
}
#intro > div ul.dir-vert li a span {
  font-weight: bold;
  display: table-cell;
  vertical-align: middle;
  font-size: 160%;
  line-height: 1.5;
  padding-right: 1.63em;
  word-wrap: break-word;
  position: relative;
}
#intro > div ul.dir-vert li a span[class^="w"] {
  padding-right: 0;
}
#intro > div ul.dir-vert li a span[class^="w"].w80 {
  max-width: 80px;
}
#intro > div ul.dir-vert li a span[class^="w"].w80 + span {
  padding-left: 0.63em;
}
#intro > div ul.dir-vert li a span[class^="w"].w160 {
  max-width: 160px;
  display: block;
}
#intro > div ul.dir-vert li a span[class^="w"].w160 + span {
  margin-top: 0.5em;
  position: relative;
  display: inline-block;
}
#intro > div ul.dir-vert li a span.mdi-arrow-right:before {
  font-size: 150%;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -0.5em;
}
#intro > div ul.dir-vert li a span br {
  display: none;
}
#intro > div ul.dir-horz {
  margin-top: 3em;
}
#intro > div ul.dir-horz li + li {
  margin-top: 2.4em;
}
#intro > div ul.dir-horz li a {
  position: relative;
  display: block;
  color: #509be5;
}
#intro > div ul.dir-horz li a span {
  display: block;
}
#intro > div ul.dir-horz li a span.mdi-arrow-right {
  font-size: 160%;
  line-height: 1.5;
  font-weight: bold;
  padding: 0.38em 1.63em 0 0;
  word-wrap: break-word;
}
#intro > div ul.dir-horz li a span.mdi-arrow-right:before {
  font-size: 150%;
  position: absolute;
  bottom: 0;
  right: 0;
}
#intro > div ul.dir-horz li a span.mdi-arrow-right br {
  display: none;
}
#intro > div div[class^="yt"] {
  margin-top: 3em;
  position: relative;
  padding-top: 75%;
}
#intro > div div[class^="yt"] iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
#intro > div.lo-col-2 {
  margin-top: 3em;
}
#intro > div.lo-col-2 div + div {
  margin-top: 2.4em;
}
#intro > div.lo-col-2 div p {
  margin-top: 0.63em;
}
#intro > div.lo-col-2 div p:first-child {
  margin-top: -0.87em;
}
#intro > div.lo-col-2 + * {
  margin-top: 2.4em !important;
}
#intro > div.lo-col-2-s div:first-child {
  max-width: 164px;
  margin-bottom: 1em;
}
#intro > div.lo-col-2-s p strong {
  display: block;
  margin-bottom: 0.25em;
}
#intro > div.lo-col-3 {
  margin-top: 3em;
}
#intro > div.lo-col-3 div + div {
  margin-top: 2.4em;
}
#intro > div.lo-col-3 div p {
  font-size: 140%;
  margin-top: 0.63em;
}
#intro > div.lo-col-3 div p:first-child {
  margin-top: -0.87em;
}
/*# sourceMappingURL=dev/store/techo/sp/ja/2017/styl/detail.css.map */