/* CSS Document */

/* ==============
base@smacss
============== */
.top,
.nav,
.contents {
  font:normal 16px;
  font-family: メイリオ, Meiryo, 游ゴシック, "Yu Gothic", YuGothic, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, sans-serif;
  line-height:1.6;
  letter-spacing:.1em;
}
.top img,
.nav img,
.contents img {
    max-width: 100%;
    height: auto;
}
.clearfix::after {
  content:"";
  display:block;
  clear:both;
}
/* ==============
lauout@smacss
============== */

/*フレックス*/
.flexBox {
  display: flex;
  justify-content: space-between;
}
.flexBox-center {
    display: flex;
    align-items: center;
    justify-content: center;
  }
.flexBox-case_items {
  width: 25%;
}
.flexBox-about_left {
  width: 30%;
  padding-right: 3%;
}
.flexBox-about_right {
  width: 70%;
}
.flexBox-merit {
  align-items: flex-start;
}
.flexBox-merit+.flexBox-merit {
  margin-top: 20px;
}
.icon-merit {
  width: 10%;
  margin-right: 24px;
}
.flexBox-merit_right {
  width: 90%;
}
.labelBox-blue {
  width: 32%;
}
.flexBox-lineUp li{
  flex-basis: 49%; 
}
.flexBox-option li{
  width: 25%;
}
.flexBox-option li img {
  margin-top: 8px;
}
.flexBox-option li+li {
  margin-left: 8px;
}
.flexBox-supplies {
  margin-bottom: 16px;
  align-items: flex-start;
}
.flexBox-supplies_left {
  flex-basis: 70%;
}
.flexBox-supplies_right {
  flex-basis: 30%;
}
.flexBox-items {
  flex-wrap: wrap;
}
.flexBox-items li {
  width: 49%;
  margin-bottom: 4%;
}
.flexBox-card {
  margin-bottom: 16px;
}
.flexBox-card_itemBox {
  width: 20%;
}
.flexBox-card_item {
  text-align: center;
  display: block;
}
.flexBox-card_itemBox+.flexBox-card_itemBox {
  margin-left: 8px;
}
.flexBox-card_item img {
  display: block;
  padding: 0 8px;
  margin-bottom: 8px;
  
}

/*大きいブロック*/
.contents {
  margin: 16px 0 16px 0;
}
.left {
  float: left;
  width: 18%;
}
.right {
  float: right;
  width: 80%;
}
.contents-merit {
  padding: 0 32px;
}
.contents-inner {
  width: 98%;
  margin: 0 auto;
}
/* ==============
module@smacss
============== */
/*ボックス*/
.scrollBox {
  width: 95%;
  height: 7em;
  overflow-y: scroll;
  margin: 0 2.5% 0 2.5%;
  border: thin solid #a6a6a6;
  font-size: 14px;
  padding: 8px 24px;
  list-style: disc;
}
.scrollBox li{
    list-style: disc;
}
.scrollBox a {
  color: #052674;
}
.scrollBox a:hover {
  color: #005580;
  text-decoration: underline;
}
.flexBox-case {
  padding: 0 24px;
}
.flexBox-option_item {
  display: flex;
}
.flexBox-option_item_inner {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
}
.flexBox-option li{
  text-align: center;
  width: 25%;
  font-size: 13px;
}
.ttl-flexBox-option {
  font-size: 12px;
}
.capture {
  padding: 0 4px;
  margin-top: 10px;
}
.threeSteps_items {
  text-align: center;
  width: 30%;
}
.labelBox {
  border-radius: 8px;
}
.labelBox-blue {
  border: 5px solid #8494d8;
  flex-basis: 33%;
  margin: 16px 0;
  letter-spacing: 0.02em;
}
.labelBox-blue+.labelBox-blue {
  margin-left: 16px;
}
.labelBox-gray {
  border: 1px solid #4343c9;
  text-align: center;
  margin: 20px 0
}
.labelBox_top {
  padding: 8px;
}
.labelBox_top-blue {
  background-color: #b3bbe5;
  min-height: 7em;
}
.labelBox_top-gray {
  background-color: #cdd1e3;
  font-size: 15px;
  padding: 16px 8px;
}
.labelBox_link{
  display: block;
  width: 100%;
  height: auto;
  transition: .3s;
}
.labelBox_link:hover{
  opacity: .7;
}
.labelBox_bottom {
  padding: 16px;
  text-align: center;
}
.list-labelBox_bottom-blue {
  text-align: left;
  list-style: disc;
  padding-left: 12px;
  margin-bottom: 8px;
  font-size: 11px;
  letter-spacing: 0.01em;
}
.suppliesBox {
  background: linear-gradient(to bottom, #fff, #b3bbe5);
  width: 50%;
  padding: 8px;
  font-size: 14px;
}
.suppliesBox_top {
  margin-bottom: 16px;
}
.flexBox-card_item {
  text-align: center;
}
.flexBox-card_item:hover {
  opacity: 0.5;
}

/*ボタン*/
.btn {
  display: block;
  padding: 8px 4px;
  border-radius: 5px;
  text-align: center;
}
.btn-nav {
  width: 100%;
  background-color: #8292d6;
  color: #fff;
  font-size: 15px;
  letter-spacing: 0.05em;
}
.btn-nav:hover {
  opacity: 0.5;
}
.btn-lineUp {
  background-color: #e4211b;
  color: #ffffff;
  width: 40%;
  margin: 0 30%;
}
.btn-lineUp:hover {
  opacity: 0.5;
}

/*ナビ*/
.leftNav li a{
  font-size: 12px;
  font-weight: bold;
  padding: 12px 0 12px 16px;
  display: block;
  letter-spacing: 0.02em;
}
.leftNav li a:hover {
  background-color: #f2f2f2;
}
.leftNav li {
  border-bottom: thin solid #b1b1b1;
}
.leftNav li:first-child {
  border-top: thin solid #b1b1b1;
}

.flexBox-nav { margin: -5px; }
.flexBox-nav_item {
  /*width: 15.75%;*/
  flex: 1;
  padding: 5px;
}

/*アイコン*/
.flexBox-case_items p {
  position: relative;
}

.flexBox-case_items p::before {
  position: absolute;
  content: url("../img/mark_check.png");
  left: -20px;
}
.icon-merit {
    padding-top: 8px;
}
.arrow {
  padding: 15% 8px 0 8px;
}
.arrow-toBottom {
  display: none;
}

/* 左ナビバナー */
.bannerBox {}
.bannerBox > a { display: block; }
.bannerBox > a:hover { opacity: .6; }

/*見出し*/

/* #relatedProductは既存CSSの上書き用 */
.heading,
#relatedProducts{
  padding-left: 8px;
  margin: 24px 0 24px 0;
  position: relative;
  font-size: 24px;
}


.heading-merit {
  font-weight: bold;
  font-size: 20px;
  color: #4343c9;
}
#news {
  margin-top: 0;
}
.heading::before,
#relatedProducts::before{
  position: absolute;
  content: '';
  background-color: #cdd1e3;
  height: 15px;
  width: 100%;
  top: 50%;
  left: 0;
  z-index: -1;
}
.heading-case {
  font-size: 18px;
  font-weight: bold;
  color: #ffffff;
  padding-bottom: 12px;
}
.heading-lineup {
  font-size: 21px;
  font-weight: bold;
  border-bottom: 4px solid #cdd1e3;
  display: inline-block;
  margin: 20px 0 12px 0;
}
.heading-lineup-1 {
  margin-top: 0;
}

/*文字*/
.flexBox-about {
  font-size: 14px;
}
.flexBox-about_right {
  font-size: 14px;
  line-height: 1.8;
}
.flexBox-case_items p, .section-price>p, .section-cardSample>p, .section-itemsAndService p, .section-lineUP_text{
  font-size: 16px;
}
.blueLetter {
  color: #4343c7;
}
.violetLetter {
  color: #8494d8;
  font-size: 20px;
  font-weight: bold;
}
.redLatter {
  color: #ff0000;
}
.boldLatter{
  font-weight: bold;
  word-break: break-all;
}
.threeSteps {
  font-weight: bold;
  font-size: 23px;
  text-align: center;
  margin: 32px 0 12px 0;
}
.threeSteps-underLine {
  text-decoration: underline;
}
.stepsText {
  font-size: 14px;
  letter-spacing: 0.01em;
}
.flexBox-merit_right {
  font-size: 14px;
}
.price {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.01em;
  word-break: break-all;
}
.totalPrice {
  font-weight: bold;
  font-size: 12px;
    letter-spacing: 0.01em;
}
.itemName-big {
  font-size: 23px;
}
.itemName-small {
  font-size: 18px;
}
.label {
  width: 100%;
  font-size: 12px;
  background-color: #cfd3e5;
  border-radius: 10px;
  letter-spacing: 0.01em;
  padding: 2px 4px;
}

/* フッター関連リンク */
.relatedProductsList{
  letter-spacing: -.5em;
}
.relatedProductsList_item{
  display: inline-block;
  width: 25%;
  padding: 30px 10px;
}
.relatedProductsList_item > img{
  max-width: 100%;
  height: auto;
  border: 1px solid rgb(238,238,238);
}

@media screen and (max-width: 768px){/*タブレット用*/
  
  /* ==============
  lauout@smacss
  ============== */
  .left {
    display: none;
  }
  .right {
    width: 100%;
  }
}

@media screen and (max-width: 599px){/*スマホ用*/
  /* ==============
  lauout@smacss
  ============== */
  
  /*フレックスボックス*/
  .flexBox-case, .flexBox-about, .flexBox-price, .flexBox-lineUp, .flexBox-threeSteps, .flexBox-items {
    display: block;
  }
  .flexBox-nav {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  .flexBox-nav li{
    width: 32%;
    margin-bottom: 8px;
  }
  .flexBox-nav li+li {
    margin-left: 2%;
  }
  .flexBox-nav li:nth-child(3n+1) {
    margin-left: 0;
  }
  .flexBox-case_items {
    width: 100%;
    text-align: center;
  }
  .flexBox-case_items+.flexBox-case_items {
    margin-top: 16px;
  }
  .flexBox-about_left {
    width: 100%;
    text-align: center;
  }
  .flexBox-about_right {
    width: 100%;
  }
  .threeSteps_items {
    width: 60%;
    text-align: center;
    margin: 0 20%;
  }
  .labelBox {
    width: 100%;
  }
  .labelBox-blue+.labelBox-blue {
    margin-left: 0;
    margin-top: 16px;
  }
  .flexBox-option {
    flex-wrap: wrap;
  }
  .flexBox-option li {
    width: 49%;
  }
  .flexBox-option li+li {
    margin-left: 0;
  }
  .flexBox-option li:nth-child(2n+1) {
    margin-right: 2%;
  }
  .flexBox-option_item_inner {
    width: 100%;
  }
  .flexBox-supplies_right{
    display: block;
    text-align: center;
    flex-basis: 100%;
  }
  .flexBox-items li {
    width: 100%;
  }
  .flexBox-supplies_left {
    flex-basis: 80%;
  }
  .flexBox-supplies_right {
    flex-basis: 20%;
  }
  .flexBox-card {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .flexBox-card li {
    width: 30%;
  }
  .flexBox-card_item+.flexBox-card_item {
    margin-left: 2.9%;
  }
  .flexBox-card:nth-child(3n+1) {
    margin-left: 0;
  }
  /* ==============
  module@smacss
  ============== */
  
  /*見出し*/
  .heading {
    font-size: 19px;
  }
  .heading-lineup {
    font-size: 18px;
  }
  /*文字*/
  .threeSteps {
    font-size: 17px;
    letter-spacing: 0.03em;
  }
  .list-labelBox_bottom-blue, .totalPrice {
    font-size: 16px;
  }
  .threeSteps {
    font-size: 14px;
  }
  /*アイコン*/
  .arrow {
    display: none;
  }
  .arrow-toBottom {
    display: block;
    text-align: center;
    margin-top: 16px;
  }
  /*ボタン*/
  .btn-lineUp {
    font-size: 10px;
  }
  /*文字*/
  .label {
    margin-bottom: 8px;
  }
  
  
}