@charset "utf-8";

#contents {
    margin-top: 50px;
}
.detail {
  display: flex;
  align-items: center;
  line-height: 1;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
  margin-bottom: 10px;
}
.detail .cate {
  margin-left: 5px;
}
.detail .cate a {
  border-right: 1px solid #000000;
  padding: 0 5px;
  border-left: 1px solid #000000;
  text-decoration: none;
  color: #000000;
  display: block;
}
.pagetitle {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
  border-bottom: 3px solid #bfbfbf;
}
.post-content .eyecatch {
  margin-bottom: 30px;
}
.post-content .eyecatch img {
  margin: 0;
}
.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5, .post-content h6 {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #121212;
  z-index: 1;
}
.post-content h2 {
  text-align: center;
}
.post-content h3 {
  border-left: 4px solid #1773ba;
}
.post-content h4 {
  border-bottom: 1px solid #d2d2d2;
}
.post-content h5 {
  position: relative;
  padding-left: 1.2em;
}
.post-content h5:before {
  display: block;
  position: absolute;
  left: 0px;
  border-radius: 50px;
  background-color: #121212;
  content: "";
}
.post-content h6 {
  font-weight: 700;
}
.post-content h1:first-child, .post-content h2:first-child, .post-content h3:first-child, .post-content h4:first-child, .post-content h5:first-child, .post-content h6:first-child, .post-content p:first-child, .post-content ul:first-child, .post-content ol:first-child {
  margin-top: 0px;
}
.post-content table ul {
  margin: 0;
}
.post-content ul > li {
  position: relative;
  padding-left: 0.75em;
  margin-bottom: 10px;
  font-weight: bold;
}
.post-content ul > li:before {
  display: block;
  background-color: #1a1a1a;
  border-radius: 50px;
  content: "";
  vertical-align: bottom;
  position: absolute;
  left: 0px;
  top: 6px;
  width: 10px;
  height: 10px;
}
.post-content ol {
  counter-reset: number;
}
.post-content ol > li {
  position: relative;
  padding: 0 1.5em 0 1em;
  margin-bottom: 10px;
  font-weight: bold;
}
.post-content ol li:before {
  counter-increment: number;
  content: counter(number)"";
  position: absolute;
  left: 0;
  top: 0;
}
.post-content table {
  border-collapse: collapse;
  border-spacing: 0px 0px;
  width: 100%;
  margin: 30px 0;
}
.post-content table:last-child {
  margin-bottom: 0px;
}
.post-content table th {
  border: 1px solid #d5d5d5;
  background-color: #ececec;
  padding: 15px;
  font-weight: normal;
}
.post-content table td {
  padding: 15px;
  border: 1px solid #d5d5d5;
}
.post-content blockquote {
  background-color: #f0f0f0;
  position: relative;
}
.post-content blockquote:before {
  display: inline-block;
  position: absolute;
  top: 10px;
  left: -10px;
  width: 50px;
  height: 50px;
  text-align: center;
  content: "\f10d";
  font-family: 'Font Awesome 5 Free';
  color: #fff;
  line-height: 50px;
  background: #258c9f;
  font-weight: 900;
}
blockquote p:first-child {
  margin-top: 0px;
}
blockquote p:last-child {
  margin-bottom: 0px;
}
.post-content code {
  display: block;
  word-wrap: break-word;
  word-break: break-all;
  overflow-y: hidden;
  background-color: #f0f0f0;
  border-left: 5px solid #575858;
  padding: 1em;
  overflow-x: auto;
}
.post-content .bold {
  font-weight: bold;
}
.post-content a {
  color: #1773ba;
  text-decoration: underline;
}
.post-content section:last-child {
  padding-bottom: 100px;
}
.post-content section:nth-child(even) {
  background-color: #f8f8f8;
}
#eccblog .eyecatch {
  margin: 0 0 20px;
}
#eccblog .post-content section:last-child {
  margin: 0 0 50px;
  padding: 50px 0;
}
#eccblog .container > p {
  padding: 0 2rem;
}
#eccblog .post-content section {
  background-color: #fff;
  /*padding: 0;*/
}
@media screen and (min-width: 768px) {
  #eccblog .post-content h5:first-child {
    font-size: 1.8rem;
    margin: 0 0 10px;
  }
}
#eccblog .post-content section:nth-child(even) {
  background-color: #f8f8f8;
}
#eccblog .post-content .fl_block {
  /*background-color: #fff;*/
  margin: 1rem 0 0;
  padding: 2rem 2rem 1rem;
}
#eccblog .post-content .fl_block:nth-child(even) {
  /*background-color: #f8f8f8;*/
}
.post-content ul.flexbox.col3 {
  margin-top: 0px;
}
.post-content ul.flexbox.col3 > li {
  padding: 0;
  list-style: none;
  font-weight: normal;
}
.post-content ul.flexbox.col3 > li:before {
  display: none;
}
.post-content ul.flexbox.col3 img {
  margin: 0;
}
.post-content .lead {
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.post-content .fl_block img {
  margin: 0;
}
.post-content .step_ttl {
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 1px solid #b7b7b7;
  background-color: #FFFFFF;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 500;
  font-style: normal;
  overflow: hidden;
}
.post-content .step_ttl dt {
  color: #ffffff;
  background-color: #0057a2;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 0;
}
.post-content .step_ttl dt:after {
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  box-sizing: border-box;
  z-index: -1;
  background-image: url(/img/products/arrow.png);
  background-size: 100% 100%;
  background-position: center left;
  background-repeat: no-repeat;
}
body#products .post-content img {
  max-width: 100%;
  height: auto;
  width: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

pcSetting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (min-width: 768px), print {
  .pagetitle {
    font-size: 3rem;
    padding-bottom: 15px;
    margin-bottom: 25px;
  }
  .post-content ul, .post-content ol, .post-content dl, .post-content table, .wp-caption, .post-content code, .post-content blockquote {
    margin: 30px 0;
  }
  .post-content h2 {
    margin: 50px 0;
    font-size: 3.5rem;
  }
  .post-content h3 {
    margin: 50px 0 30px;
    font-size: 2.5rem;
    padding-left: 20px;
  }
  .post-content h4 {
    padding-bottom: 15px;
    margin: 40px 0 20px;
    font-size: 2rem;
  }
  .post-content h5 {
    font-size: 1.8rem;
    margin: 30px 0 10px;
  }
  .post-content h5:before {
    width: 16px;
    height: 16px;
    top: 9px;
  }
  #eccblog .post-content h5,
  #eccblog .post-content h5:first-child {
    margin: 0 0 10px;
  }
  .post-content h6 {
    margin: 30px 0 10px;
  }
  .post-content p {
    line-height: 2;
  }
  body#products .post-content p {
    letter-spacing: 2px;
  }
  .float_l {
    float: left;
  }
  .float_r {
    margin: 0px 0px 10px 10px;
    float: right;
    width: 250px;
    text-align: center;
  }
  .float_l img, .float_r img {
    max-width: 100%;
    height: auto;
    width: auto;
  }
  .post-content p + p, ul + p {
    margin-top: 30px;
  }
  .post-content p + ul {
    margin-top: 0px;
  }
  .post-content p + ul.flexbox {
    margin-top: 30px;
  }
  .post-content blockquote {
    margin: 50px 0;
    padding: 50px;
  }
  .post-content img {
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .wp-caption {
    margin: 50px 0;
    text-align: center;
  }
  .wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
  }
  .post-content .aligncenter {
    margin: 25px auto;
    display: block;
  }
  .post-content .alignright {
    float: right;
    margin: 0px 0px 0px 1em;
  }
  .post-content .alignleft {
    float: left;
    margin: 0px 1em 0px 0px;
  }
  .wp-caption .wp-caption-text {
    padding: 5px 0 0;
  }
  .post-content code {
    padding: 25px;
  }
  .post-content .container {
    max-width: 900px;
  }
  .post-content ul.flexbox.col3 {
    margin-left: -1.5%;
    margin-right: -1.5%;
  }
  .post-content ul.flexbox.col3 > li {
    margin: 20px 1.5% 0;
    flex-basis: 30.333333%;
  }
  .post-content ul.flexbox.col3 img + span {
    margin-top: 10px;
    display: block;
  }
  .post-content section {
    padding: 50px 0;
  }
  .post-content section:first-child {
    padding-top: 0px;
  }
  .post-content .lead {
    margin: 30px 0;
    font-size: 2rem;
  }
  .post-content .fl_block .img {
    float: right;
    width: 280px;
  }
  #eccblog .post-content .fl_block .img {
    float: right;
    margin: 0 0 0 30px;
    width: 280px;
  }
  #eccblog .btn.back {
    margin: 0 0 30px;
  }
  .post-content .fl_block img + span {
    margin-top: 10px;
    display: block;
    text-align: left;
  }
  .post-content .fl_block .float_l {
    width: 580px;
  }
  .post-content .fl_block .float_l:only-child {
    width: 100%;
  }
  .post-content .step_ttl dt {
    font-size: 1.6rem;
    margin-right: 3%;
    padding: 15px 0;
    flex-basis: 11%;
  }
  .post-content .step_ttl dt:after {
    width: 30%;
    right: -29%;
  }
  .post-content .step_ttl dd {
    font-size: 2.5rem;
    padding: 10px 0;
    flex-basis: 82%;
    margin: 0 2%;
  }
  body#topics .btn {
    margin: 65px 0 100px;
  }
  body#topics .post-content img {
    width: auto;
    max-width: 732px;
  }
  body#topics .post-content .eyecatch img {
    width: 100%;
  }
}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

spSetting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (max-width: 767px) {
  .post-content {
    margin-bottom: 30px;
  }
  .pagetitle {
    font-size: 6vw;
    letter-spacing: 0;
    line-height: 1.5;
    padding-bottom: 10px;
    margin-bottom: 30px;
  }
  .post-content .alignright, .post-content .alignleft {
    float: none;
    display: block;
    margin: 30px auto;
  }
  .post-content h2 {
    margin: 30px 0;
    font-size: 6vw;
  }
  .post-content h3 {
    font-size: 5.5vw;
    padding-left: 10px;
    margin: 30px 0;
    line-height: 1.5;
  }
  .post-content h4 {
    margin: 30px 0 15px;
    font-size: 5vw;
    padding-bottom: 10px;
  }
  .post-content h5 {
    margin: 20px 0 15px;
    font-size: 5vw;
  }
  .post-content h5:before {
    width: 4.5vw;
    height: 4.5vw;
    top: 2vw;
  }
  .post-content h6 {
    margin: 15px 0;
  }
  .post-content ul, .post-content ol, .post-content dl, .post-content table, .wp-caption, .post-content code, .post-content blockquote {
    margin: 15px 0;
  }
  .post-content p {
    line-height: 1.8;
  }
  .post-content p + p, ul + p {
    margin-top: 15px;
  }
  .post-content p img {
    margin: 0;
  }
  .post-content img {
    margin: 30px 0;
  }
  .post-content ul > li:before {
    top: 1.5vw;
    width: 3vw;
    height: 3vw;
  }
  .post-content .aligncenter {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .wp-caption {
    max-width: 96%;
    text-align: center;
  }
  .wp-caption.alignnone {
    margin: 5px 20px 20px 0;
  }
  .wp-caption.alignleft {
    margin: 5px 20px 20px 0;
  }
  .wp-caption.alignright {
    margin: 5px 0 20px 20px;
  }
  .wp-caption img {
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
  }
  .wp-caption .wp-caption-text {
    padding: 5px 0 0;
  }
  .post-content code {
    padding: 25px;
  }
  .post-content blockquote {
    -webkit-margin-before: auto;
    -webkit-margin-after: auto;
    -webkit-margin-start: auto;
    -webkit-margin-end: auto;
    padding: 30px;
  }
  .post-content section {
    padding: 30px 6%;
  }
  .post-content ul.flexbox.col3 {
    margin-left: -2%;
    margin-right: -2%;
  }
  .post-content ul.flexbox.col3 > li {
    margin: 15px 2% 0;
    flex-basis: 46%;
  }
  .post-content ul.flexbox.col3 img + span {
    margin-top: 5px;
    display: block;
  }
  .post-content .lead {
    margin: 15px 0;
    font-size: 4.5vw;
  }
  .post-content .fl_block .float_r {
    margin: 15px 0;
  }
  .post-content .fl_block .img {
    margin: 15px 0;
  }
  .post-content .fl_block img + span {
    margin-top: 5px;
    display: block;
  }
  .post-content .step_ttl {
    margin: 30px 0 15px;
  }
  .post-content .step_ttl dt {
    flex-basis: 20vw;
    margin-right: 5vw;
    padding: 10px 0;
    font-size: 3.5vw;
  }
  .post-content .step_ttl dt:after {
    width: 30%;
    right: -29%;
  }
  .post-content .step_ttl dd {
    padding: 10px 0;
    font-size: 5vw;
    margin: 0 3vw;
    flex-basis: 56vw;
  }
  .prdct_mov iframe {
    width: auto;
    height: auto;
  }
}