@charset "UTF-8";
/* タイトル
---------------------------*/
h1 {
  margin: 0px 0px 12px 0px;
  border-bottom: 1px solid #CCCCCC;
}

/*---------------------------
タイトル
---------------------------*/
h1 {
  border-bottom: 1px solid #CCCCCC;
  font-size: 1.7em;
  margin: 0 0 12px;
  padding-bottom: 5px;
}

/*---------------------------
メイン
---------------------------*/
#container {
  width: 100%;
}

/* メイン
---------------------------*/
#main-contents {
  float: right;
  width: 814px;
}

/* メニュー */
#menuList {
  background: #dddddd;
  margin: 0 0 23px 0;
}

#menuList ul {
  text-align: left;
  padding: 15px 0 15px 15px;
}

#menuList ul li {
  display: inline-block;
  position: relative;
  margin: 3px 6px;
  text-align: left;
  width: 47%;
  background-color: #FFF;
  box-shadow: 2px 2px 2px #999;
  height: 95px;
  vertical-align: top;
  border-bottom: 20px solid #2B5DA6;
}

#menuList ul li:nth-of-type(3),
#menuList ul li:nth-of-type(4) {
  margin: 10px 6px 3px;
}

#menuList ul li:hover {
  opacity: 0.6;
}

#menuList ul li:hover a {
  text-decoration: none;
}

#menuList ul li:hover a img {
  opacity: 1 !important;
}

#menuList ul li a {
  display: block;
  color: #343434;
}

#menuList ul li img.num {
  display: block;
  position: absolute;
  top: 13%;
  left: 3.5%;
  width: 8%;
}

#menuList ul li span {
  display: block;
  line-height: 140%;
  font-size: 0.85em;
  letter-spacing: -0.04em;
  margin: 4.3% 0 0 14%;
}

#menuList ul li span strong {
  display: block;
  font-size: 1.5em;
  line-height: 1.2;
  margin: 0 0 8px 0;
  color: #2B5DA6;
}

#menuList ul li img.exp {
  display: block;
  width: 44%;
  position: absolute;
  bottom: 0;
  right: 0;
}

#menuList ul li img.arrow {
  display: block;
  position: absolute;
  bottom: -17%;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 5%;
}

#menuList ul li#menu1 span {
  top: 28px;
  left: 48px;
}

#menuList ul li#menu2 span {
  top: 28px;
  left: 48px;
}

span.zeinuki {
  margin: 1.5% 0 0;
}

/* メニュー */
.cateBox#mado h3 {
  margin: 0 0 4%;
}

.cateBox h3 {
  line-height: 27px;
  height: 80px;
  border-top: 1px solid #2B5DA6;
  border-bottom: 9px solid #2B5DA6;
  border-right: 1px solid #2B5DA6;
  border-left: 1px solid #2B5DA6;
  position: relative;
}

.cateBox h3 img.num {
  display: block;
  position: absolute;
  top: 13%;
  left: 2%;
  width: 3.5%;
}

.cateBox h3 span {
  display: block;
  line-height: 1;
  font-size: 0.9em;
  font-weight: normal;
  margin: 1.6% 0 0 6.5%;
}

.cateBox h3 span strong {
  display: block;
  font-size: 1.75em;
  line-height: 1.2;
  margin: 0 0 8px 0;
  color: #2B5DA6;
}

.cateBox h3 ul li span strong {
  display: block;
  font-size: 1.5em;
  line-height: 1.2;
  margin: 0 0 8px 0;
  color: #2B5DA6;
}

.cateBox h3 img.exp {
  width: 29%;
  position: absolute;
  right: 0;
  bottom: 0;
}

.cateBox h3 a {
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 0;
}

p.pdf-link {
  padding: 1.3% 0 0;
  text-align: right;
}

.cateBox h3 img {
  padding: 0 7px 0 0;
}

.cateBox table.hm,
.cateBox table.ptb,
.cateBox table.guide {
  margin: 10px 0 55px 0;
  color: #000000;
  table-layout: fixed;
  border-collapse: collapse;
}

.cateBox table.hm tr td,
.cateBox table.ptb tr td,
.cateBox table.guide tr td {
  border: 1px solid #888888;
  border-collapse: collapse;
  font-size: 0.77em;
  text-align: center;
  line-height: 140%;
  padding: 8px 0 4px 0;
}

.cateBox table.hm tr th {
  text-align: left;
  font-weight: normal;
  font-size: 0.82em;
  line-height: 140%;
  padding: 8px 10px 4px;
}

.cateBox table.ptb tr th {
  text-align: left;
  font-weight: normal;
  font-size: 0.82em;
  line-height: 140%;
  padding: 8px 10px 4px;
}

.cateBox table.guide tr th {
  text-align: left;
  font-weight: normal;
  font-size: 0.82em;
  line-height: 140%;
  padding: 8px 10px 4px;
}

.cateBox table.hm tr.line2,
.cateBox table.ptb tr.line2,
.cateBox table.guide tr.line2 {
  background: #f5f9fc;
}

.cateBox table.hm tr.line3,
.cateBox table.ptb tr.line3,
.cateBox table.guide tr.line3 {
  background: #FCE5C3;
}

.cateBox table.hm tr th,
.cateBox table.ptb tr th,
.cateBox table.guide tr th {
  border: 1px solid #888888;
  border-collapse: collapse;
}

.cateBox table tr.sLine {
  position: sticky;
  top: -1px;
  border: 1px;
  background: #fff;
}

.cateBox table tr.sLine td {
  border: 1px solid #888888;
  position: relative;
}

.cateBox table tr.sLine td::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #888;
  width: 100%;
  height: 1px;
}

.cateBox table tr.sLine td::before {
  content: "";
  position: absolute;
  top: 0;
  left: -1px;
  background-color: #888;
  width: 1px;
  height: 100%;
}

.cateBox table.hm tr.sLine td img,
.cateBox table.ptb tr.sLine td img,
.cateBox table.guide tr.sLine td img {
  vertical-align: middle;
  padding: 0 0 2px 3px;
}

.cateBox table.hm tr.sLine td img.sImg,
.cateBox table.ptb tr.sLine td img.sImg,
.cateBox table.guide tr.sLine td img.sImg {
  width: 85px;
  height: 85px;
  display: block;
  text-align: center;
  margin: 0 auto 3px auto;
  padding: 0;
}

.cateBox table.hm tr.sLine td {
  font-weight: bold;
  vertical-align: top;
  width: 115px;
}

.cateBox table.ptb tr.sLine td {
  font-weight: bold;
  vertical-align: bottom;
  width: 135px;
}

.cateBox table.guide tr.sLine td {
  font-weight: bold;
  vertical-align: top;
  width: 161.5px;
}

.cateBox table.hm tr.sLine td a:hover img.sImg,
.cateBox table.ptb tr.sLine td a:hover img.sImg,
.cateBox table.guide tr.sLine td a:hover img.sImg {
  opacity: 0.6;
}

.cateBox table.hm tr.sLine td img.ya,
.cateBox table.ptb tr.sLine td img.ya,
.cateBox table.guide tr.sLine td img.ya {
  vertical-align: middle;
  padding: 0 2px 2px 0;
}

.cateBox table.ptb tr td.op,
.cateBox table.hm tr td.op,
.cateBox table.guide tr td.op {
  background: #777777;
  text-align: left;
  color: #ffffff;
  font-weight: bold;
  font-size: 85%;
  text-indent: 10px;
}

.cateBox table.hm tr.opBottom th a,
.cateBox table.ptb tr.opBottom th a,
.cateBox table.guide tr.opBottom th a {
  display: block;
  margin: 0;
  padding: 0;
}

.cateBox table.hm tr.opBottom th a:hover img.sImg2,
.cateBox table.ptb tr.opBottom th a:hover img.sImg2,
.cateBox table.guide tr.opBottom th a:hover img.sImg2 {
  opacity: 0.6;
}

.cateBox table.hm tr.opBottom th img.sImg2,
.cateBox table.ptb tr.opBottom th img.sImg2,
.cateBox table.guide tr.opBottom th img.sImg2 {
  width: 50px;
  height: 50px;
  padding: 0 0 10px 0;
  margin: 0 auto;
  display: block;
}

.cateBox table.hm tr.opBottom th div.oPr,
.cateBox table.ptb tr.opBottom th div.oPr,
.cateBox table.guide tr.opBottom th div.oPr {
  float: left;
}

.cateBox table.hm tr.opBottom th div.oPr p.opName,
.cateBox table.ptb tr.opBottom th div.oPr p.opName,
.cateBox table.guide tr.opBottom th div.oPr p.opName {
  font-weight: bold;
  line-height: 140%;
  color: #333333;
}

.cateBox table.hm tr.opBottom th div.oPr p.opSeihin,
.cateBox table.ptb tr.opBottom th div.oPr p.opSeihin,
.cateBox table.guide tr.opBottom th div.oPr p.opSeihin {
  font-weight: bold;
  line-height: 140%;
}

.cateBox table.hm tr.opBottom th div.oPr p.opSeihin img,
.cateBox table.ptb tr.opBottom th div.oPr p.opSeihin img,
.cateBox table.guide tr.opBottom th div.oPr p.opSeihin img {
  display: inline;
  width: 12px !important;
  height: 12px !important;
  vertical-align: middle;
  padding: 0 4px 2px 0;
}

.cateBox table.hm tr.opBottom th div.oPr p.opPrice,
.cateBox table.ptb tr.opBottom th div.oPr p.opPrice,
.cateBox table.guide tr.opBottom th div.oPr p.opPrice {
  line-height: 140%;
  color: #333333;
}

.cateBox table.hm tr.opBottom th div.oPr p.opPrice span.zeinuki,
.cateBox table.ptb tr.opBottom th div.oPr p.opPrice span.zeinuki,
.cateBox table.guide tr.opBottom th div.oPr p.opPrice span.zeinuki {
  display: block;
  white-space: nowrap;
}

tr.line2 td span.zeinuki {
  display: block;
  white-space: nowrap;
}

/* 商品紹介 */
.cateBox .kBox {
  margin: 0 auto 25px auto;
  background: #ffffff;
  clear: both;
  padding: 0;
}

.cateBox .noOp {
  margin: 0 auto 40px auto;
}

.cateBox .kBox:after {
  content: " ";
  display: block;
  clear: both;
  height: 0;
  max-height: 0;
  visibility: hidden;
}

.cateBox .kBox .kTxt {
  background: #2b5da6;
  padding: 6px 5px 4px 10px;
  margin: 0 0 10px 0;
}

.cateBox .kBox .kTxt p {
  padding: 6px 5px;
  font-weight: bold;
  line-height: 1.3;
  color: #ffffff;
}

.cateBox .kBox .leftArea {
  display: inline;
  float: left;
  width: 425px;
  background: #ffffff;
  padding: 0 0 8px 0;
}

.cateBox .kBox .leftArea img {
  border: 1px solid #bbbbbb;
  width: 200px;
  height: 200px;
  padding: 0;
  margin: 0 8px 0 0;
}

.cateBox .kBox .leftArea a + img {
  margin: 0;
}

.cateBox .kBox .rightArea {
  display: inline;
  float: left;
  width: 389px;
}

.cateBox .kBox .rightArea .rDeteil {
  padding: 0 0 0 10px;
}

.cateBox .kBox .rightArea .rDeteil .rName {
  font-weight: bold;
  line-height: 1.3;
  margin: 24px 0 10px 0;
}

.cateBox .kBox .rightArea .rDeteil .rSeihin {
  margin: 0 0 10px 0;
}

.cateBox .kBox .rightArea .rDeteil .rSeihin a {
  font-weight: bold;
  font-size: 1.0em;
  padding: 0 5px 0 0;
}

.cateBox .kBox .rightArea .rDeteil .rSeihin img {
  vertical-align: middle;
  padding: 0 5px 4px 0;
}

.cateBox .kBox .rightArea .rDeteil .rSeihin a img {
  vertical-align: middle;
  padding: 0 5px 2px 0;
}

.cateBox .kBox .rightArea .rDeteil .rPrice {
  margin: 0 0 17px 0;
}

.cateBox .kBox .rightArea .icon_area {
  margin: 0 0 6px 2px;
  background: #ffffff;
}

.cateBox .kBox .rightArea .icon_area p {
  float: left;
  margin: 0 0 0 7px;
}

.cateBox .kBox .rightArea .icon_area p img {
  vertical-align: middle;
  margin-bottom: 6px;
}

.cateBox .kBox .opBottom {
  clear: both;
  background: #f6f6f6;
  padding: 15px 0 10px 0;
  margin: 0 0 50px 0;
}

.cateBox .kBox .opBottom .opTitle {
  margin: 0 0 14px 15px;
  border-left: 7px solid #777777;
  font-size: 1.0em;
  height: 22px;
  line-height: 22px;
  text-indent: 5px;
  font-weight: bold;
  color: #333333;
}

.cateBox .kBox .opBottom .opList ul {
  margin: 0;
}

.cateBox .kBox .opBottom .opList ul li {
  float: left;
  width: 375px;
  margin: 0 0 8px 30px;
}

.cateBox .kBox .opBottom .opList ul li a.opLink {
  width: 88px;
  display: block;
  float: left;
  margin: 0 20px 0 0;
}

.cateBox .kBox .opBottom .opList ul li a img.opImg2 {
  width: 88px;
  height: 88px;
  border: 1px solid #e1e1e1;
}

.cateBox .kBox .opBottom .opList ul li .opbName {
  display: block;
  margin: 2px 0 6px 0;
  padding: 0 10px 0 0;
  font-size: 0.8em;
  font-weight: bold;
  line-height: 1.4;
}

.cateBox .kBox .opBottom .opList ul li .opbSeihin {
  display: block;
  margin: 0 0 6px 0;
  font-size: 0.85em;
  font-weight: bold;
}

.cateBox .kBox .opBottom .opList ul li .opbSeihin img {
  width: 12px;
  height: 12px;
  border: none;
  padding: 0 5px 1px 0;
}

.cateBox .kBox .opBottom .opList ul li .opbSeihin img.new,
.cateBox .kBox .opBottom .opList ul li .opbSeihin img.lim,
.cateBox .kBox .opBottom .opList ul li .opbSeihin img.abo {
  width: 28px !important;
  height: 14px !important;
  border: none;
  padding: 0 0 0 5px;
}

.cateBox table.hm tr.opBottom th div.oPr p.opSeihin img.new,
.cateBox table.ptb tr.opBottom th div.oPr p.opSeihin img.new,
.cateBox table.hm tr.opBottom th div.oPr p.opSeihin img.lim,
.cateBox table.ptb tr.opBottom th div.oPr p.opSeihin img.lim,
.cateBox table.hm tr.opBottom th div.oPr p.opSeihin img.abo,
.cateBox table.ptb tr.opBottom th div.oPr p.opSeihin img.abo {
  width: 28px !important;
  height: 14px !important;
  border: none;
  padding: 0 0 0 5px;
}

.cateBox .kBox .opBottom .opList ul li .opbPrice {
  display: block;
  font-size: 0.85em;
}

#presenBan {
  text-align: center;
  padding: 10px 0 0 0;
  margin: 0 0 40px 0;
}

#presenBan p {
  text-align: center;
  background: #cddef0;
  padding: 35px 0;
}

/*---------------------------
サイドメニュー
---------------------------*/
#sidemenu {
  float: left;
  width: 147px;
  height: 100%;
}

#sidemenu .side-search {
  margin: 0 0 10px 0;
}

h5.round {
  padding: 9px 7px 5px 7px;
  font-size: 0.82em;
  font-weight: bold;
  line-height: 1.2;
  text-align: left;
  letter-spacing: 1px;
  background: #f5f5f5;
  border-top: 1px solid #ADADAD;
  border-left: 1px solid #ADADAD;
  border-right: 1px solid #ADADAD;
  /* IE以外なら丸角も！ */
  border-radius: 3px 3px 0px 0px;
  -webkit-border-radius: 3px 3px 0px 0px;
  -moz-border-radius: 3px 3px 0px 0px;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f5f5f5', endColorstr='#dedede');
  /*INNER ELEMENTS MUST NOT BREAK THIS ELEMENTS BOUNDARIES*/
  /*Element must have a height (not auto)*/
  /*All filters must be placed together*/
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#f5f5f5', endColorstr = '#dedede')";
  /*Element must have a height (not auto)*/
  /*All filters must be placed together*/
  background-image: -moz-linear-gradient(top, #f5f5f5, #dedede);
  background-image: -ms-linear-gradient(top, #f5f5f5, #dedede);
  background-image: -o-linear-gradient(top, #f5f5f5, #dedede);
  background-image: -webkit-gradient(linear, center top, center bottom, from(#f5f5f5), to(#dedede));
  background-image: -webkit-linear-gradient(top, #f5f5f5, #dedede);
  background-image: linear-gradient(top, #f5f5f5, #dedede);
  /*--IE9 DOES NOT SUPPORT CSS3 GRADIENT BACKGROUNDS--*/
}

ul.naviR {
  zoom: 100%;
  padding: 0px 0px 0px 0px;
  border: 1px solid #ADADAD;
  margin-bottom: 13px;
}

ul.naviR li {
  margin: 0px 3px 0px 3px;
  text-indent: 0;
  padding: 10px 0 10px 5px;
  font-size: 0.76em;
}

ul.naviR li {
  border-top: 1px dotted #ADADAD;
}

ul.naviR li img.num {
  width: 12%;
}

ul.naviR li.none {
  border-top: none;
}

ul.naviR li.line {
  border-top: 1px solid #ADADAD;
}

ul.naviR li img {
  padding: 0px 0 0 0px;
  margin: 2px 4px 0 0px;
  float: left;
}

ul.naviR li img.sideya {
  padding: 0px 0 0 0px;
  margin: 5px 4px 0 2px;
  float: left;
}

#side-fixed ul.naviR li a {
  display: block;
  margin: 2px 0 0 18px;
  line-height: 1.4em;
  letter-spacing: 0.2px;
}

#side-fixed ul.naviR li.shortLi a {
  display: block;
  margin: 2px 0 0 14px;
  line-height: 1.4em;
  letter-spacing: 0.2px;
}

#sidemenu .side-banner {
  margin: 10px 0;
}

#sidemenu .side-banner img {
  width: 100%;
}

/*---- マウスオーバー時 ----*/
table.hyo th.hover {
  background-color: #FFE3B7;
}

table.hyo td.hover {
  background-color: #FFE3B7;
}
