@charset "UTF-8";

main.fntW400 {
  font-weight: 400;
}

main .fntRed {
  color: #E6000D;
}

.sub-section .sub-title {
  background: #ecfeff;
  font-weight: 400 !important;
}

.products-sub-title,
.support-sub-title {
  font-weight: 400 !important;
}

.support-sub-title {
  font-size: 2.8rem;
}

.sub-section .item-link-area-fix,
.sub-section .item-link-area {
  margin-top: 40px;
}

.sub-section .item-link-block {
  width: 20%;
  text-align: center;
}

.sub-section .item-link {
  display: inline-block;
  padding: 0 0 0 1em;
}

.sub-section .item-link li {
  line-height: 1.3;
  text-align: left;
}

.sub-section .item-link a {
  font-size: 1.6rem;
  position: relative;
  display: block;
  line-height: 1.5;
  padding-left: 20px;
  text-decoration: none;
}

.sub-section .item-link a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105";
  display: inline-block;
  font-size: 1.2em;
  line-height: 1;
  position: absolute;
  left: 4px;
  top: 2px;
}

@media only screen and (max-width: 767px) {
  .sub-section .item-link a {
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    padding-left: 1.4em;
    font-size: 1.6rem;
  }

  .sub-section .item-link a::before {
    top: 50%;
    transform: translateY(-50%);
  }
}

.sub-section .item-link a:hover {
  text-decoration: underline;
}

.acd {
  display: none;
}

.acd span {
  font-size: 1.6rem;
}

/* clearfix */
.clrFix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
}

* html .clrFix {
  height: 1%;
}

.clrFix {
  zoom: 100%;
  min-height: 1%;
}

/* MENU (localmenuAdd) */
.localmenuIn .global-page-title-container {
  align-items: start;
  height: auto;
  margin-top: 15px;
}

.localmenuIn .links-outer-area {
  text-align: right;
}

.localmenuIn .localmenu-box {
  display: inline-block;
  position: relative;
  width: 250px;
  margin-bottom: 10px;
  z-index: 20;
  font-weight: 400;
}

.localmenuIn .localmenu-btn {
  position: relative;
  background: #fff;
  padding: 5px 25px;
  font-size: 1.4rem;
  text-align: center;
  border: 1px solid #000;
  display: block;
  width: 100%;
  color: #000;
}

.localmenuIn .localmenu-btn:hover {
  cursor: pointer;
}

.localmenuIn .localmenu-btn:after {
  content: '';
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(135deg);
  position: absolute;
  right: 15px;
  top: -4px;
  bottom: 0;
  width: 8px;
  height: 8px;
  margin: auto;
}

.localmenuIn .localmenu-btn[aria-expanded="true"]::after {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  top: 4px;
}

.localmenuIn .localmenu-btn[aria-expanded="true"] {
  background: #000;
  color: #fff;
}

.localmenuIn .localmenu {
  display: none;
  width: 100%;
  position: absolute;
  left: 0;
  background: #fff;
}

.localmenuIn .localmenu li a {
  display: block;
  position: relative;
  padding: 10px 25px;
  font-size: 1.4rem;
  text-align: center;
  border: 1px solid #000;
  border-top: 0;
}

.localmenuIn .localmenu li a:after {
  content: '';
  border-top: 2px solid #000;
  border-left: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(135deg);
  position: absolute;
  right: 15px;
  top: 0;
  bottom: 0;
  width: 8px;
  height: 8px;
  margin: auto;
}

.localmenuIn .global-page-title-container ul.list-outer-links {
  justify-content: flex-end;
  font-weight: 400;
}


/* 製品の形名からさがす */
#typeSearch {
  margin-top: 0;
  background-color: #fff;
}

#typeSearch .formArea {
  background: unset;
  padding-left: 0;
  margin-top: 0;
}

.searchBox .formArea .fieldBlock {
  display: flex;
  width: 100%;
  max-width: 870px;
}

@media screen and (min-width: 768px) {
  .searchBox .formArea .fieldBlock {
    width: 80%;
  }
}

#typeSearch .formArea [type=text] {
  float: left;
  flex: 1 1 100px;
  box-sizing: border-box;
  padding: 5px;
  border: #000 1px solid;
  border-right: none;
  border-radius: 0;
  box-shadow: none;
  min-width: 0;
}

@media screen and (min-width: 768px) {
  #typeSearch .formArea [type=text] {
    padding: 12px 8px;
  }
}

.searchBox .formArea .fieldBlock .btnSearch {
  position: relative;
  float: none;
  flex: 0 0 80px;
  box-sizing: border-box;
  margin-top: 0;
  padding: 0.5rem 0 0.5rem 2rem;
  color: #ffffff;
  border: #444 1px solid;
  border-radius: 0;
  background: #444;
  font-size: 1.6rem;
  min-width: 0;
  cursor: pointer;
}

@media screen and (min-width: 768px) {
  .searchBox .formArea .fieldBlock .btnSearch {
    width: auto;
    padding: 12px 15px 12px 30px;
  }
}

.searchBox .formArea .fieldBlock .btnSearch:after {
  position: absolute;
  top: calc(50% - 0.5em);
  left: 0.5em;
  display: block;
  content: "\f002";
  font-family: "Font Awesome 5 Free";
  font-size: 1em;
  font-weight: 900;
  line-height: 1;
}

a.btn-show-list {
  position: relative;
  display: inline-block;
  width: 200px;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  padding: 1rem 2em 1rem 1em;
  text-decoration: none;
  color: #000;
  border: solid 1px #000;
  border-radius: 999px;
  background: #fff;
  font-weight: bold;
}

a.btn-show-list::before {
  position: absolute;
  top: 50%;
  right: 10px;
  display: inline-block;
  content: "\f105";
  transform: translateY(-46%);
  color: #b01681;
  font-family: "Font Awesome 5 Free";
  font-size: 1.2em;
  font-weight: 900;
  line-height: 1;
  left: unset;
  margin-top: unset;
}

/* 製品から選ぶ */
#productSelect {
  margin-top: 4rem;
}

#productSelect .page-navi-menu {
  margin-top: 3rem;
}

@media only screen and (max-width: 767px) {

  .sub-section .item-link-area-fix,
  .sub-section .item-link-area {
    padding-left: 1em;
  }

  .sub-section .item-link-block {
    width: 100%;
    text-align: left;
  }

  .sub-section .item-link {
    padding: 0;
  }

  .acd {
    background: #e7e7e7;
    text-align: center;
    color: #403d33;
    font-size: 1.3rem;
    padding: 5px;
    margin-top: 20px;
  }

  .acd span {
    position: relative;
    padding-left: 1em;
  }

  .acd._open {
    display: block;
  }

  .acd._open .icon::before,
  .acd._open .icon::after,
  .acd._close .icon::before,
  .acd._close .icon::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
  }

  .acd._open .icon::before {
    top: -1px;
    left: 0;
    width: 5px;
    height: 5px;
    border-bottom: 1px solid #403d33;
    border-left: 1px solid #403d33;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  .acd._close .icon::before {
    top: 2px;
    left: 0;
    width: 5px;
    height: 5px;
    border-bottom: none;
    border-left: none;
    border-top: 1px solid #403d33;
    border-right: 1px solid #403d33;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }

  .acd._close {
    display: none;
  }

  /* MENU (localmenuAdd) */
  .localmenuIn .global-page-title-container {
    position: relative;
    padding-top: 36px;
    margin-top: 0;
    height: auto;
  }

  .localmenuIn .links-outer-area {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }

  .localmenuIn .localmenu-box {
    width: 100%;
  }

  .localmenuIn .localmenu-btn {
    padding: 10px 25px;
  }

  .localmenuIn .localmenu li a {
    padding: 10px 25px;
  }

  .localmenuIn .global-page-title-container .global-page-title {
    padding: 10px 0;
  }

  /* 製品の形名からさがす */
  #typeSearch {
    padding-bottom: 0;
  }

  #typeSearch .formArea [type=text] {
    width: 80%;
    padding: 5px;
  }

  #typeSearch .formArea [type=text]::placeholder {
    font-size: 1.2rem;
  }

  #typeSearch .formArea {
    background-size: 35px auto;
    background-position: left top;
  }

  #typeSearch .formArea form #btnSch1 {
    width: 20%;
    font-size: 1.3rem;
    padding: 0.75rem 0;
  }

  #typeSearch .formArea ul.list-btn-show-list {
    float: right;
    display: block;
    margin: 0;
  }

  #typeSearch ul.list-btn-show-list li {
    display: block;
  }

  #typeSearch a.btn-show-list {
    margin-top: 14px;
  }

  #productSelect .page-navi-menu {
    margin-top: 1rem;
  }

  /* 製品の形名からさがす */
  h2.support-sub-title {
    flex-shrink: 0;
    font-size: 2.2rem;
  }
}

@media print,
screen and (min-width: 768px) {
  .btn-show-list:hover {
    background: #535353;
    color: #fff;
  }

  /* 製品の形名からさがす */
  #productSelect {
    padding-left: 1.5%;
    padding-right: 1.5%;
  }

  #productSelect .outer-base-width {
    padding-left: 0;
    padding-right: 0;
  }
}

#pageTop.default a {
  background: #535353;
  border: 1px solid #535353;
}

#pageTop.default a.hovering {
  opacity: unset;
}

#pageTop.default a:hover {
  background-color: #fff;
  transition: background-color .3s ease;
}

#pageTop.default a:hover .fa-chevron-up:before {
  color: #535353;
}

.lineup #menuNavi {
  padding-top: 3rem;
}

.product-title {
  font-weight: 400;
  font-size: 1.6rem;
}

@media print,
screen and (min-width: 768px) {
  .product-title {
    margin-top: 1em;
    padding: 0 1em;
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .product-title {
    margin-top: 1em;
    text-indent: 0;
    text-align: center;
  }

  .chatbot-intro {
    font-size: 1.6rem !important;
  }
}