@charset "UTF-8";
.sp, .spOnly, .tbOnly {
  display: none !important; }

.pc, .pc-tb {
  display: inline-block !important;
  vertical-align: top !important; }

.pc-sp {
  display: inline-block !important;
  vertical-align: top !important; }

@media screen and (max-width: 991px) {
  /*.sp,.spOnly,.tbOnly{ display:none !important;}
  .pc,.pc-tb{ display:inline-block !important; vertical-align:top !important;}
  .pc-sp{ display:inline-block !important; vertical-align:top !important;}*/ }
@media screen and (max-width: 767px) {
  .pc, .spOnly {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; }

  .sp, .tbOnly, .pc-tb {
    display: inline-block !important;
    vertical-align: top !important; }

  .pc-sp {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; } }
@media screen and (max-width: 400px) {
  .pc, .tbOnly, .pc-tb {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; }

  .sp, .spOnly {
    display: inline-block !important;
    vertical-align: top !important; }

  .pc-sp {
    display: inline-block !important;
    vertical-align: top !important; } }
/*============================
21.5.25 お問い合わせページ修正
============================*/
.contact-us-page section .section-content {
  padding-top: 30px; }
  .contact-us-page section .section-content .heading {
    margin-bottom: 30px; }
    .contact-us-page section .section-content .heading .icon {
      display: none; }
.contact-us-page section .section-content .block-question {
  padding: 0 0px; }
  .contact-us-page section .section-content .block-question .question-item a {
    padding: 12px 7px; }
.contact-us-page section .section-content .button-wrapper {
  text-align: center; }
  .contact-us-page section .section-content .button-wrapper .btn-link {
    width: auto;
    padding: 10px 55px 10px 40px;
    position: relative;
    border-radius: 50px;
    font-size: 16px; }
    @media screen and (max-width: 360px) {
      .contact-us-page section .section-content .button-wrapper .btn-link {
        padding: 12px; } }
    .contact-us-page section .section-content .button-wrapper .btn-link::before {
      width: 11px;
      height: 15px; }
    .contact-us-page section .section-content .button-wrapper .btn-link::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 25px;
      background: url("assets/images/icon-mail.png") no-repeat;
      background-size: cover;
      width: 18px;
      height: 13px; }
      @media screen and (max-width: 360px) {
        .contact-us-page section .section-content .button-wrapper .btn-link::after {
          content: none; } }

/*#tekigo{
table{ background: rgba($skyblue, .0);
p{ margin: 0;}
}
}*/
.common-template-page .common-template-content #tekigo table p, .common-template-page .common-template-content #manual table p {
  margin: 0; }
.common-template-page .common-template-content #tekigo table a, .common-template-page .common-template-content #manual table a {
  background: none;
  color: #0063A4;
  text-decoration: underline;
  margin: 0;
  padding: 0; }
.common-template-page .common-template-content #tekigo table td.manual_td2, .common-template-page .common-template-content #manual table td.manual_td2 {
  text-align: center; }
  .common-template-page .common-template-content #tekigo table td.manual_td2 a, .common-template-page .common-template-content #manual table td.manual_td2 a {
    margin: 10px auto 10px; }

/*============================
21.6.1 会社概要ページ修正
============================*/
.about-us-page .page-banner {
  display: none; }
.about-us-page .page-content {
  max-width: 620px; }
.about-us-page .signature-wrapper .signature-content .logo img {
  width: 320px;
  position: relative;
  left: -.75%; }
  @media screen and (max-width: 400px) {
    .about-us-page .signature-wrapper .signature-content .logo img {
      width: 260px;
      left: -2.5%; } }
.about-us-page .signature-wrapper .signature-content .text-1 {
  font-size: 24px; }
  @media screen and (max-width: 400px) {
    .about-us-page .signature-wrapper .signature-content .text-1 {
      font-size: 20px; } }
.about-us-page .signature-wrapper .signature-content .text-2 {
  font-size: 16px; }
@media screen and (max-width: 767px) {
  .about-us-page .signature-wrapper .signature-content .text-2 {
    text-align: left; } }

/*============================
21.6.3 カタログページ追加
============================*/
#catalog {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 74%;
  margin: 0 auto; }
  @media screen and (max-width: 991px) {
    #catalog {
      width: 100%; } }
  @media screen and (max-width: 767px) {
    #catalog {
      width: 100%; } }
  @media screen and (max-width: 400px) {
    #catalog {
      width: 100%; } }
  #catalog img {
    width: 100%;
    height: auto; }
  #catalog::after {
    content: "";
    width: 31%;
    display: block; }
  #catalog .list {
    width: 31%;
    border: 1px solid #000;
    margin-bottom: 3.5%;
    padding: 20px 27px 27px;
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 991px) {
      #catalog .list {
        width: 32%;
        padding: 22px; } }
    @media screen and (max-width: 767px) {
      #catalog .list {
        width: 48%;
        padding: 22px;
        margin-bottom: 4%; } }
    @media screen and (max-width: 400px) {
      #catalog .list {
        width: 90%;
        padding: 20px 27px 27px;
        margin: 0 auto 10%; } }
    #catalog .list .ttl {
      margin: 0;
      background: none;
      padding: 0;
      font-size: 16px;
      line-height: 1.5;
      margin-bottom: 0px; }
    #catalog .list .ph {
      box-shadow: 1px 1px 4px 0px #777777;
      margin-bottom: 18px; }
      #catalog .list .ph a {
        background: none;
        color: inherit;
        margin: 0;
        height: 100%;
        padding: 0; }
    #catalog .list .btn {
      font-size: 14px;
      text-align: center;
      margin: auto auto 0;
      width: 100%; }
      #catalog .list .btn a {
        background: -moz-linear-gradient(0% 50% 0deg, #005996 0%, #1b87b7 100%);
        background: -webkit-linear-gradient(0deg, #005996 0%, #1b87b7 100%);
        background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0, #005996), color-stop(1, #1b87b7));
        background: -o-linear-gradient(0deg, #005996 0%, #1b87b7 100%);
        background: -ms-linear-gradient(0deg, #005996 0%, #1b87b7 100%);
        -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#005996', endColorstr='#1B87B7' ,GradientType=0)";
        background: linear-gradient(90deg, #005996 0%, #1b87b7 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#005996',endColorstr='#1B87B7' , GradientType=1);
        color: #fff;
        padding: 4px 0;
        display: block;
        margin: 0 auto; }

/*============================
21.6.8 サイトマップページ追加（html化）
============================*/
#sitemap_original a {
  color: inherit !important;
  background: transparent !important;
  padding: 0px;
  margin: 0px;
  display: block;
  width: 100%; }
#sitemap_original ul li {
  list-style: none; }
#sitemap_original ul.mainWrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0; }
  #sitemap_original ul.mainWrap::after {
    content: "";
    display: block;
    width: calc((100% / 3) - 30px); }
    @media screen and (max-width: 767px) {
      #sitemap_original ul.mainWrap::after {
        width: calc((100% / 2) - 15px); } }
    @media screen and (max-width: 400px) {
      #sitemap_original ul.mainWrap::after {
        width: 0%; } }
  #sitemap_original ul.mainWrap li.main {
    font-size: 16px;
    width: calc((100% / 3) - 30px);
    margin-bottom: 25px; }
    @media screen and (max-width: 767px) {
      #sitemap_original ul.mainWrap li.main {
        width: calc((100% / 2) - 15px); } }
    @media screen and (max-width: 400px) {
      #sitemap_original ul.mainWrap li.main {
        width: 100%;
        margin-bottom: 10px; } }
    #sitemap_original ul.mainWrap li.main span {
      border-bottom: 2px solid #000;
      display: block;
      padding: 5px 0;
      padding-left: 15px;
      margin-bottom: 10px;
      position: relative; }
      #sitemap_original ul.mainWrap li.main span::before {
        content: "";
        font-family: FontAwesome;
        font-weight: 400;
        left: 0;
        position: absolute;
        top: 0px;
        font-size: 22px; }
    #sitemap_original ul.mainWrap li.main ul.subWrap {
      padding: 0; }
      @media screen and (max-width: 400px) {
        #sitemap_original ul.mainWrap li.main ul.subWrap {
          margin-bottom: 10px; } }
      #sitemap_original ul.mainWrap li.main ul.subWrap li.tit {
        font-size: 16px; }
      #sitemap_original ul.mainWrap li.main ul.subWrap li.sub {
        font-size: 14px; }
        #sitemap_original ul.mainWrap li.main ul.subWrap li.sub a {
          padding: 1px 0;
          padding-left: 15px;
          position: relative; }
          @media screen and (max-width: 400px) {
            #sitemap_original ul.mainWrap li.main ul.subWrap li.sub a {
              padding: 4px 0;
              padding-left: 15px; } }
          #sitemap_original ul.mainWrap li.main ul.subWrap li.sub a::before {
            content: "";
            font-family: FontAwesome;
            font-weight: 400;
            left: 0;
            position: absolute;
            top: -1px;
            font-size: 18px;
            height: 100%; }
            @media screen and (max-width: 400px) {
              #sitemap_original ul.mainWrap li.main ul.subWrap li.sub a::before {
                top: 2px; } }
    #sitemap_original ul.mainWrap li.main.product {
      width: 100%;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #sitemap_original ul.mainWrap li.main.product > a {
        margin-bottom: 15px; }
      #sitemap_original ul.mainWrap li.main.product ul.subWrap {
        width: calc((100% / 3) - 30px);
        margin-bottom: 25px; }
        @media screen and (max-width: 767px) {
          #sitemap_original ul.mainWrap li.main.product ul.subWrap {
            width: calc((100% / 2) - 15px); } }
        @media screen and (max-width: 400px) {
          #sitemap_original ul.mainWrap li.main.product ul.subWrap {
            width: 100%;
            margin-bottom: 15px; } }
        #sitemap_original ul.mainWrap li.main.product ul.subWrap li.tit:not(:first-child) {
          margin-top: 25px; }
          @media screen and (max-width: 400px) {
            #sitemap_original ul.mainWrap li.main.product ul.subWrap li.tit:not(:first-child) {
              margin-top: 15px; } }

/*============================
21.6.25 404ページ修正 @media screen and (max-width: 400px){}
============================*/
@media screen and (max-width: 400px) {
  .error-404-myEdit .page-heading-common {
    margin-bottom: 30px; } }
.error-404-myEdit h1.page-title {
  font-size: 28px;
  font-weight: 500;
  text-align: center; }
  @media screen and (max-width: 400px) {
    .error-404-myEdit h1.page-title {
      font-size: 20px;
      text-align: left; } }
.error-404-myEdit .error-404-copy {
  width: 100%;
  text-align: center;
  margin: 0 auto 40px;
  font-size: 18px;
  line-height: 1.8; }
  @media screen and (max-width: 400px) {
    .error-404-myEdit .error-404-copy {
      width: 100%;
      font-size: 15px;
      margin-bottom: 30px;
      text-align: left; } }
.error-404-myEdit ul.error-404-list {
  list-style: none;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 auto 80px;
  padding: 0; }
  @media screen and (max-width: 400px) {
    .error-404-myEdit ul.error-404-list {
      margin-bottom: 50px;
      justify-content: space-between; } }
  .error-404-myEdit ul.error-404-list li {
    display: flex;
    justify-content: flex-start;
    font-size: 17px; }
    @media screen and (max-width: 400px) {
      .error-404-myEdit ul.error-404-list li {
        width: 50%; } }
    .error-404-myEdit ul.error-404-list li:not(:first-child)::before {
      content: "・"; }
      @media screen and (max-width: 400px) {
        .error-404-myEdit ul.error-404-list li:not(:first-child)::before {
          content: none; } }
    .error-404-myEdit ul.error-404-list li a {
      color: #3C8DB3;
      text-decoration: underline;
      width: 100%; }
    .error-404-myEdit ul.error-404-list li.shopLink {
      width: 100%;
      margin: 60px auto 0;
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap; }
      @media screen and (max-width: 400px) {
        .error-404-myEdit ul.error-404-list li.shopLink {
          margin-top: 50px;
          justify-content: space-between; } }
      .error-404-myEdit ul.error-404-list li.shopLink::before {
        content: none; }
      .error-404-myEdit ul.error-404-list li.shopLink em {
        font-style: normal;
        width: 100%;
        font-size: 22px;
        text-align: center;
        color: #3C8DB3;
        margin-bottom: 25px; }
        @media screen and (max-width: 400px) {
          .error-404-myEdit ul.error-404-list li.shopLink em {
            margin-bottom: 15px; } }
        .error-404-myEdit ul.error-404-list li.shopLink em small {
          color: #3C8DB3;
          font-size: 15px;
          text-align: center;
          font-weight: 400;
          display: block;
          margin-top: 18px;
          position: relative; }
          @media screen and (max-width: 400px) {
            .error-404-myEdit ul.error-404-list li.shopLink em small {
              margin-top: 10px; } }
          .error-404-myEdit ul.error-404-list li.shopLink em small::after {
            content: "";
            width: 50px;
            background: #3C8DB3;
            height: 3px;
            display: inline-block;
            position: absolute;
            top: -14px;
            text-align: center;
            left: 50%;
            margin-left: -25px; }
            @media screen and (max-width: 400px) {
              .error-404-myEdit ul.error-404-list li.shopLink em small::after {
                top: -8px; } }
      .error-404-myEdit ul.error-404-list li.shopLink span {
        width: 240px;
        height: 65px; }
        @media screen and (max-width: 400px) {
          .error-404-myEdit ul.error-404-list li.shopLink span {
            width: 48.5%;
            height: 55px;
            font-size: 15px; } }
        .error-404-myEdit ul.error-404-list li.shopLink span a {
          text-decoration: none;
          /*color: #fff;*/
          width: 100%;
          height: 100%;
          border-radius: 5px;
          display: flex;
          justify-content: center;
          align-items: center;
          border-width: 2px;
          border-style: solid;
          box-sizing: border-box;
          transition: .25s; }
          .error-404-myEdit ul.error-404-list li.shopLink span a:hover {
            border-width: 8px; }
        .error-404-myEdit ul.error-404-list li.shopLink span.rakuten {
          margin-right: 30px; }
          @media screen and (max-width: 400px) {
            .error-404-myEdit ul.error-404-list li.shopLink span.rakuten {
              margin-right: 0; } }
          .error-404-myEdit ul.error-404-list li.shopLink span.rakuten a {
            border-color: #c00000;
            color: #c00000; }
        .error-404-myEdit ul.error-404-list li.shopLink span.yahoo a {
          border-color: #ff0033;
          color: #ff0033; }
.error-404-myEdit #section-category {
  padding: 0;
  margin-bottom: 50px; }
  @media screen and (max-width: 400px) {
    .error-404-myEdit #section-category {
      margin-bottom: 30px; } }
  .error-404-myEdit #section-category .section-content-frame {
    /*.col-item { max-width: 16.66%;
    > div{ height: 220px;}
    }*/ }

/*============================
21.7.1 調整 @media screen and (max-width: 400px){}
============================*/
@media screen and (max-width: 767px) {
  .page-single-product .free-html video {
    width: 100%;
    height: auto; } }
@media print {
  .container {
    max-width: 100%; }

  .page-single-product .product-slider {
    /*max-width: 80%;*/ }
  .page-single-product .product-detail-wrapper {
    margin-bottom: 20px; }
    .page-single-product .product-detail-wrapper > div {
      flex-basis: 100%;
      margin-bottom: 30px; }
  .page-single-product .free-html video {
    width: 250px;
    height: auto; }

  @page {
    margin: .5cm;
    size: A4 portrait; }
  #homepage-slick {
    height: 270px;
    overflow: hidden; }
    #homepage-slick .slick-slide img {
      max-width: 400px; }
    #homepage-slick .slick-slide iframe {
      display: none; }

  .section-category {
    padding: 20px; }

  a[href]:after, abbr[title]:after {
    content: none; }

  #toTop, .footer-helper, .site-info {
    display: none !important; }

  .breadcrumb {
    padding: 10px 0 20px; }
    .breadcrumb span {
      font-size: 8pt; }
    .breadcrumb .space_char {
      background-size: 8px;
      padding: 0 10px; }

  .page-single-product .free-html h1, .page-single-product .free-html h2 {
    font-size: 14pt; } }

/*============================
22.3.17 調整 
============================*/
.page-product-cate .product-block .product-by-category .product-wrapper .product-item .name{
	word-break: break-all;
}

/*============================
23.7.28 調整 
============================*/
.product-detail a.btn_faq {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 80%;
	margin: auto;
	padding: 1rem 2rem;
	font-weight: bold;
	border: 2px solid #0099cd;
	background: #0099cd;
	color: #fff;
	font-size: 120%;
	border-radius: 10px;
	transition: 0.5s;
}
.product-detail a.btn_faq:hover {
	opacity: 0.7 ;
}