.maindesign {
  font-size: 16px;
  margin-bottom: 40px
}
/*h1特集タイトル*/
.maindesign h1 {
  position: relative;
}
/*description*/
.maindesign .description {
  font-size: 1em;
  background: #cfcfcf;
  text-align: left;
  line-height: 1.6;
  padding: 10px 20px;
  text-align: justify;
  margin: 0;
}
@media screen and (max-width:767px) {
  .maindesign .description {
    font-size: 0.8em;
  }
}
/*h2 見出し 共通ボーダー*/
.maindesign h2.headingMiddle {
  position: relative;
  padding-bottom: 0.8em;
  border-bottom: 3px solid #DDD;
  font-size: 1.25em;
  font-weight: bold;
  margin: 40px 0 30px 0;
  text-align: left
}
.maindesign h2.headingMiddle::after {
  position: absolute;
  content: " ";
  border-bottom: solid 3px #E5002D;
  bottom: -3px;
  width: 6.5%;
  display: block;
}
@media screen and (max-width:767px) {
  .maindesign h2.headingMiddle {
    margin: 30px 0 20px 0
  }
  .maindesign h2.headingMiddle::after {
    width: 10.5%;
  }
}
/*h2見出しコメント*/
.maindesign h2.ander_text {
  margin-bottom: 1em;
}
.maindesign .h2comment {
  margin-bottom: 30px;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
/* tableタグ　縦方向中央初期化*/
.maindesign th {
  vertical-align: middle;
}
.maindesign td {
  vertical-align: middle;
}
/* ボタンリンク */
/*角丸基本*/
.maindesign a.btnRadius01 {
  border-radius: 40px;
  font-weight: bold;
  color: #000;
  /*padding: 15px;*/
  display: flex;
  border: 1px solid;
  box-sizing: border-box;
  text-align: center;
  opacity: 1.0;
  height: 100%;
  align-items: center;
  justify-content: center;
}
.maindesign a.btnRadius01:hover {
  border-color: #E5002D;
  transition: 0.6s;
}
.maindesign a.btnRadius02 {
  border-radius: 40px;
  font-weight: bold;
  width: auto;
  height: 100%;
  margin: 0;
  color: #FFF;
  display: flex;
  cursor: pointer;
  text-decoration: none;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.maindesign a.btnRadius02:hover {
  opacity: 0.75;
  transition: 0.6s;
}
/*-- 文字サイズおよびパディング --*/
.maindesign .fsSmall {
  font-size: 0.8em;
  padding: 0.8em 1.2em;
}
.maindesign .fsMedium {
  font-size: 1.0em;
  padding: 0.75em 2.85em;
}
.maindesign .fslarge {
  font-size: 1.62em;
  padding: 1.05em 1em;
}
/*ホバー設定*/
.maindesign a.btnRadius:hover {
  transition: 0.6s;
  opacity: 0.75
}
/*ボタンカラー*/
.maindesign a.monoBtn {
  background: #969494;
} /*グレー*/
.maindesign a.catchyBtn {
  background: #EA6D0D;
} /*赤*/
.maindesign a.decisionBtn {
  background: #535353;
} /*濃いグレー*/
.maindesign a.orangeBtn {
  background: #EA6D0D;
} /*オレンジ*/
.webfont {
  font-family: "Noto Sans JP", "ＭＳ Ｐゴシック", "MS PGothic", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, Sans-Serif;
}
.maindesign a.borderRadiusBtn {
  text-decoration: none;
  color: #000;
  padding: 18px 10px 18px 35px;
  display: block;
  border: 1px solid;
  border-radius: 6px;
  text-align: left;
  box-sizing: border-box;
}
.maindesign a.borderRadiusBtn:hover {
  border-color: #E5002D;
  transition: 0.6s;
}
.maindesign a.smallRadiusBtn {
  color: #333;
  text-decoration: none;
  display: block;
  box-sizing: border-box;
  padding: 10px 8px;
  border: 1px solid #CCC;
  border-radius: 5px;
}
.maindesign a.smallRadiusBtn:hover {
  border-color: #E5002D;
  transition: 0.6s;
}
/*pc sp 切り替え*/
@media screen and (min-width:768px) {
  .pc-only {
    display: block;
  }
  .sp-only {
    display: none;
  }
}
@media screen and (max-width:767px) {
  .pc-only {
    display: none;
  }
  .sp-only {
    display: block;
  }
}
/*ボタンメニュー*/
/*4col⇔2col*/
.botton_box {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 10px;
}
.botton_box li {
  width: calc(25% - 7.5px);
  margin-right: calc(30px / 3);
  margin-bottom: 10px;
}
.botton_box li:nth-child(4n) {
  margin-right: 0px;
}
@media screen and (max-width:767px) {
  .botton_box li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 10px;
  }
  .botton_box li:nth-child(2n) {
    margin-right: 0px;
  }
}
/*ボタンメニュー*/
/*3col⇔1col*/
.botton_box2 {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 10px;
}
.botton_box2 li {
  width: calc(33.33% - 7px);
  margin-right: calc(21px / 2);
  margin-bottom: 10px;
  text-align: center;
}
.botton_box2 li:nth-child(3n) {
  margin-right: 0px;
}
@media screen and (max-width:767px) {
  .botton_box2 li {
    width: 100%;
    margin-right: 0px;
    margin-bottom: 10px;
  }
}
/*画像付きリンク*/
.maindesign .links {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 30px;
  width: 90%;
  margin: 0 auto;
}
.maindesign .links li {
  box-sizing: border-box;
}
.maindesign .links li img {
  width: 100%;
}
.maindesign .links li .text-box {
  text-align: center;
  background-color: #fff;
}
.maindesign .border li {
  box-sizing: border-box;
  border: 1px solid #ccc;
}
.maindesign .border_radiuse li {
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 5px;
  overflow: hidden;
}
.bottom_img {
  width: 100%;
  display: block;
  position: relative;
  bottom: 0px;
}
.maindesign li a {
  color: #333;
  text-decoration: none;
  display: block;
}
/*4カラム<-->2カラム*/
.maindesign .links li {
  width: calc(25% - 7.5px);
  margin-right: calc(30px / 3);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .links.cols4-2 li:nth-child(4n) {
  margin-right: 0px;
}
.maindesign .links.cols4-2 .text-box {
  padding: 0.5em;
  line-height: 1.6em;
}
@media screen and (max-width:767px) {
  /*4カラム<-->2カラム*/
  .maindesign .links.cols4-2 li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 20px;
  }
  .maindesign .links.cols4-2 li:nth-child(2n) {
    margin-right: 0px;
  }
  .maindesign .links.cols4-2 .text-box {
    padding: 0.5em;
    line-height: 1.6em;
  }
}
/*商品ブロック*/
.maindesign .goods {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 30px;
}
.maindesign .goods li {
  box-sizing: border-box;
}
.maindesign .goods li img {
  width: 100%;
}
/*4カラム<-->2カラム*/
.maindesign .goods.cols4-2 li {
  width: calc(25% - 7.5px);
  margin-right: calc(30px / 3);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .goods.cols4-2 li:nth-child(4n) {
  margin-right: 0px;
}
.maindesign .goods.cols4-2 .text-box {
  padding: 0.5em;
  padding: 0.5em;
  line-height: 1.6em;
}
.maindesign .goods.cols4-2 .cover-btn {
  position: absolute;
  bottom: 0%;
  width: 100%;
}
@media screen and (max-width:767px) {
  /*4カラム<-->2カラム*/
  .maindesign .goods.cols4-2 li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 20px;
  }
  .maindesign .goods.cols4-2 li:nth-child(2n) {
    margin-right: 0px;
  }
  .maindesign .cols4-2 .cover-btn {
    width: 100%;
  }
}
/*3カラム<-->1カラム*/
.maindesign .cols3-1 li {
  width: calc(33.33% - 7px);
  margin-right: calc(21px / 2);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .cols3-1 li:nth-child(3n) {
  margin-right: 0px;
}
.maindesign .cols3-1 .text-box {
  padding: 0.5em;
  padding: 0.5em;
  line-height: 1.6em;
}
.maindesign .cols3-1 .cover-btn {
  position: absolute;
  bottom: 0%;
  width: 100%;
}
@media screen and (max-width:767px) {
  /*3カラム<-->1カラム*/
  .maindesign .cols3-1 li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .maindesign .cols3-2 .cover-btn {
    width: 100%;
  }
}
/*3カラム<-->2カラム*/
.maindesign .cols3-2 li {
  width: calc(33.33% - 7px);
  margin-right: calc(21px / 2);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .cols3-2 .text-box {
  padding: 0.5em;
  line-height: 1.6em;
}
.maindesign .cols3-2 .cover-btn {
  position: absolute;
  bottom: 0%;
  width: 100%;
}
@media screen and (min-width:768px) {
  /*3カラム<-->2カラム*/
  .maindesign .cols3-2 li:nth-child(3n) {
    margin-right: 0px;
  }
  .maindesign .banner_list2-1 li:nth-child(2n) {
    margin-right: 0px;
  }
  .maindesign .banner_list3-2 li:nth-child(3n) {
    margin-right: 0px;
  }
}
@media screen and (max-width:767px) {
  /*3カラム<-->2カラム*/
  .maindesign .links.cols3-2 li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 20px;
  }
  .maindesign .links.cols3-2 li:nth-child(2n) {
    margin-right: 0px;
  }
  .maindesign .links.cols3-2 .text-box {
    padding: 0.5em;
    line-height: 1.6em;
  }
}
/*2カラム<-->1カラム*/
.maindesign .cols2-1st li {
  width: calc(50% - 5px);
  margin-right: calc(10px / 1);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .cols2-1st li:nth-child(2n) {
  margin-right: 0px;
}
.maindesign .cols2-1st .text-box {
  padding: 0.5em;
  padding: 0.5em;
  line-height: 1.6em;
}
.maindesign .cols2-1st .cover-btn {
  position: absolute;
  bottom: 0%;
  width: 100%;
}
@media screen and (max-width:767px) {
  /*2カラム<-->1カラム*/
  .maindesign .cols2-1st li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .maindesign .cols2-1st .cover-btn {
    width: 100%;
  }
}
.maindesign .cols2-1ex li {
  width: calc(50% - 5px);
  margin-right: calc(10px / 1);
  margin-bottom: 20px;
  position: relative;
}
.maindesign .cols2-1ex .pd {
  /*購入ボタン退避領域*/
  padding-bottom: calc(2em + 6px);
}
.maindesign .cols2-1ex li:nth-child(2n) {
  margin-right: 0px;
}
.maindesign .cols2-1ex .text-box {
  padding: 0.5em;
  padding: 0.5em;
  line-height: 1.6em;
}
.maindesign .cols2-1ex .cover-btn {
  position: absolute;
  bottom: 0%;
  width: 100%;
}
@media screen and (max-width:767px) {
  /*2カラム<-->1カラム*/
  .maindesign .cols2-1ex li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .maindesign .cols2-1ex .cover-btn {
    width: 100%;
  }
}
/*バナーグループ（2カラム⇔1カラム）*/
.maindesign .banner_list2-1 {
  display: flex;
  flex-wrap: wrap;
}
.maindesign .banner_list2-1 li {
  width: calc(50% - 5px);
  margin-right: calc(10px / 1);
  margin-bottom: 20px;
}
.maindesign .banner_list2-1 a img {
  width: 100%;
  border: 0px;
}
@media screen and (min-width:767px) {
  .maindesign .banner_list2-1 li:nth-child(2n) {
    margin-right: 0px;
  }
}
@media screen and (max-width:767px) {
  .maindesign .banner_list2-1 li {
    width: 100%;
    margin-right: 0;
  }
}
/*バナーグループ（3カラム⇔2カラム）*/
.maindesign .banner_list3-2 {
  display: flex;
  flex-wrap: wrap;
}
.maindesign .banner_list3-2 li {
  width: calc(33.33% - 7px);
  margin-right: calc(21px / 2);
  margin-bottom: 20px;
}
.maindesign .banner_list3-2 a img {
  width: 100%;
  border: 0px;
}
@media screen and (min-width:767px) {
  .maindesign .banner_list3-2 li:nth-child(3n) {
    margin-right: 0px;
  }
}
@media screen and (max-width:767px) {
  .maindesign .banner_list3-2 li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 20px;
  }
  .maindesign .banner_list3-2 li:nth-child(2n) {
    margin-right: 0px;
  }
}
#wrap h1 {
  margin-top: 0;
  margin-bottom: 0;
}
#contents {
  width: 1060px;
  text-align: center;
}
#contents img {
  float: none;
}
#contents .obj_box {
  padding-bottom: 0;
}
#contents .obj_box ul {
  list-style: none;
}
#contents .obj_box li {
  float: left;
  position: relative;
  margin: 0;
  padding: 0;
}
#contents .obj_box li div {
  overflow: hidden;
}
#separat ul {
  width: 100%;
  display: inline;
  margin: 0 auto;
}
/*--- 特徴を比較して選ぶ ---*/
#contents .obj_box2 {
  padding-bottom: 0;
}
#contents .obj_box2 ul {
  list-style: none;
}
#contents .obj_box2 li {
  float: left;
  position: relative;
  margin: 0;
  padding: 0;
}
#contents .obj_box2 li a {
  display: block;
  overflow: hidden;
  width: 96px;
  height: 96px;
}
#contents .obj_box2 li div img {
  width: 96px;
  height: 192px;
}
#contents .obj_box2 li a:hover img {
  opacity: 1.0;
  filter: alpha(opacity=100);
  -ms-filter: alpha(opacity=100);
  background-color: transparent;
  margin-top: -96px;
}
#contents .obj_box2 li a:hover {
  z-index: 9999;
}
.mt10 {
  margin-top: 10px;
}
.mt20 {
  margin-top: 20px;
}
.mt30 {
  margin-top: 30px;
}
.mt40 {
  margin-top: 40px;
}
.mt50 {
  margin-top: 50px;
}
.mb10 {
  margin-bottom: 10px;
}
.mb20 {
  margin-bottom: 20px;
}
.mr10 {
  margin-right: 10px;
}
.mr20 {
  margin-right: 20px;
}
.mgb20 {
  margin-bottom: 20px;
}
.tbl01 {
    border-collapse: collapse;
    margin: 0 auto;
    padding: 0;
    width: 94%;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 0 15px -6px #00000073;
}
.tbl01 tr {
    text-align: center;
    padding: 20px 0;
}
.tbl01 th, .tbl01 td {
    padding: 20px 0;
    border: 1px solid #ccc;
}
.tbl01 th {
	width: 34%;
    background-color: #f08e92;
    color: #FFF;
    padding: 15px;
	vertical-align: middle;
}
.tbl01 td {
    background-color: #fff;
}