@charset "UTF-8";
/*
Theme Name: Lightning
Text Domain: lightning
Theme URI: https://lightning.nagoya
Description: Lightning is a very simple & easy to customize theme which is based on the Bootstrap. It is also very friendly with custom post types and custom taxonomies. When you add a new one, the breadcrumbs will be adjusted and posts will look beautifully without editing or adding a template files.
Author: Vektor,Inc.
Author URI: https://www.vektor-inc.co.jp
Version:10.0.7
Requires at least: 5.0
Tested up to: 5.4.2
Requires PHP: 5.6.0
Tags: blog, two-columns, one-column, right-sidebar, custom-colors, custom-menu, editor-style, e-commerce
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Lightning WordPress theme, Copyright (C) 2015-2019 Vektor,Inc.
Lightning WordPress theme is licensed under the GPL.
*/
* {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  line-height: 180%;
}

h2 {
  display: block;
  padding: 10px 15px;
  position: relative;
  color: white;
  font-size: 18px;
  background: #0066ff;
  border: solid 0px transparent;
  border-left: solid 5px #002d6f;
}
@media screen and (min-width: 960px) {
  h2 {
    margin: 100px 0px 10px 0px;
  }
}
@media screen and (max-width: 960px) {
  h2 {
    margin: 50px 0px 10px 0px;
  }
}

h3 {
  display: block;
  margin: 10px 0px 10px 0px;
  padding: 10px 5px;
  color: #0066ff;
  font-size: 16px;
  font-weight: bold;
  border: solid 0px transparent;
  border-bottom: solid 1px #0066ff;
}
h3::before {
  content: "■";
  color: #0066ff;
}

a:hover {
	text-decoration: none;
}

.midashi {
  margin-bottom: 20px;
  color: #0066ff;
  font-size: 20px;
  font-weight: bold;
}

@media screen and (max-width: 960px) {
  .mob_off {
    display: none !important;
  }
}

@media screen and (min-width: 960px) {
  .mob_on {
    display: none !important;
  }
}
.align_right {
  display: block;
  text-align: right;
}

.align_center {
  display: block;
  text-align: center;
}

@media screen and (max-width: 960px) {
  h3.slide-text-title {
    font-size: 24px;
    text-shadow: 1px 1px 4px black;
  }
}

@media screen and (max-width: 960px) {
  .slide-text-title {
    font-size: 15px;
    text-shadow: 1px 1px 4px black;
  }
}

@media screen and (max-width: 960px) {
  .btn.btn-ghost {
    font-size: 14px !important;
    text-shadow: 1px 1px 4px black !important;
  }
}

div.prBlock_icon_outer {
  color: #0066ff;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 50%;
}
.prBlock_title {
  color: #333;
}
.prBlock_summary {
  color: #333;
}
@media screen and (max-width: 960px) {
  div.prBlock_icon_outer {
    float: left;
    margin-top: 15px;
    margin-right: 15px;
  }
}

@media screen and (max-width: 960px) {
  .comment_area {
    position: relative;
    padding: 15px 25px;
    height: 640px;
  }
  .comment_area img {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    z-index: 1;
  }
  .comment_area .comment {
    padding: 15px;
    position: absolute;
    top: 280px;
    left: 30px;
    width: 90%;
    z-index: 3;
    color: white;
    font-size: 12px;
    background: rgba(0, 0, 0, 0.6);
  }
}
.anchor {
  display: block;
  padding-top: 100px;
  margin-top: -100px;
}

@media screen and (min-width: 960px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

.breadSection .breadcrumb li * {
  line-height: 100%;
}

.footer_contact_frame {
  display: block;
  margin: 50px auto;
  padding: 20px;
  width: 60%;
  background: white;
  border: solid 4px #c3c3c3;
  border-radius: 5px;
}
@media screen and (min-width: 960px) {
  .footer_contact_frame {
    width: 60%;
  }
}
@media screen and (max-width: 960px) {
  .footer_contact_frame {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .footer_contact_frame .tel_frame {
    padding: 0px 15px;
    padding-bottom: 10px;
  }
}
.footer_contact_frame .tel {
  color: #0066ff;
  font-size: 28px;
}
.footer_contact_frame .tel i {
  margin-right: 8px;
  font-size: 24px;
}
.footer_contact_frame .mail {
  display: block;
  padding: 15px 20px;
  text-align: center;
  color: white;
  background: #0066ff;
  border-radius: 5px;
  transition: all 1s ease;
}
.footer_contact_frame .mail:hover {
  color: white;
  text-decoration: none;
  background: #80a0ff;
  transition: all 0.5s ease;
}
.footer_contact_frame .mail .here {
  font-size: 18px;
}
.footer_contact_frame .mail .here i {
  font-size: 20px;
}

.fa_v5_css .entry-meta_items.published::before {
  color: #0066ff;
}

.entry-meta_items_term_button {
  background: #75acff !important;
}

.company .container {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .company .container {
    padding: 10px 30px;
  }
}
@media screen and (max-width: 960px) {
  .company .container {
    padding: 10px;
  }
}
.company table.about {
  margin: 30px 0px;
  border: none;
}
.company table.about th {
  font-weight: bold;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .company table.about th {
    display: table-cell;
    padding: 10px 30px;
    text-align: right;
    border-bottom: solid 2px #0066ff;
  }
}
@media screen and (max-width: 960px) {
  .company table.about th {
    display: block;
    padding: 10px 20px;
    border-bottom: solid 2px #0066ff;
  }
}
.company table.about td {
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .company table.about td {
    display: table-cell;
    padding: 10px 50px;
    border-bottom: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .company table.about td {
    display: block;
    padding: 10px 20px;
    padding-bottom: 30px;
  }
}
@media screen and (min-width: 960px) {
  .company .about_photo {
    padding: 10px;
  }
}
@media screen and (max-width: 960px) {
  .company .about_photo {
    padding: 10px 0px;
    text-align: center;
  }
}
.company iframe {
  padding: 10px;
  background: white;
}
.company .feature {
  padding: 20px;
  width: 100%;
  height: 300px;
  background: white;
}
.company .feature h4 {
  display: block;
  padding: 5px 5px 15px 5px;
  text-align: center;
  color: black;
  font-size: 18px;
  font-weight: bold;
  border: solid 0px transparent;
  border-bottom: dotted 2px #c2c2c2;
}
.company .feature a {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
.company .feature a:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}
.company .feature table {
  border: solid 0px transparent;
}
.company .feature table th, .company .feature table td {
  padding: 0px;
  text-align: center;
  border: solid 0px transparent;
}
.company .network img {
  display: block;
  margin: 0px auto;
}
.company .network .center {
  display: block;
  margin: 0px auto;
  max-width: 800px;
}
.company a.area_link {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
@media screen and (min-width: 960px) {
  .company a.area_link {
    width: 60%;
  }
}
@media screen and (max-width: 960px) {
  .company a.area_link {
    width: 100%;
  }
}
.company a.area_link:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}

table.machine {
  margin-top: 50px;
}
table.machine th {
  padding: 10px 5px;
  text-align: center;
  background: #75acff;
  border-top: solid 1px #337ab7;
  border-bottom: solid 1px #337ab7;
}
@media screen and (max-width: 960px) {
  table.machine th {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  table.machine td {
    padding: 10px 5px;
    border-top: solid 1px #337ab7;
    border-bottom: solid 1px #337ab7;
  }
}
@media screen and (max-width: 960px) {
  table.machine td {
    display: block;
    padding: 0px;
    border: solid 0px transparent;
  }
  table.machine td::before {
    content: attr(data-attr);
    display: block;
    margin-right: 10px;
    width: 50%;
    float: left;
    text-align: center;
    color: #333;
    background: #75acff;
  }
}
@media screen and (max-width: 960px) {
  table.machine tr {
    display: block;
    margin-top: 30px;
  }
}
table.machine .right {
  text-align: right;
}

.works .container {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .works .container {
    padding: 10px 30px;
  }
}
@media screen and (max-width: 960px) {
  .works .container {
    padding: 10px;
  }
}
.works .container .feature {
  padding: 20px;
  width: 100%;
  height: 200px;
  background: white;
}
.works .container .feature h4 {
  display: block;
  padding: 5px 5px 15px 5px;
  text-align: center;
  color: black;
  font-size: 18px;
  font-weight: bold;
  border: solid 0px transparent;
  border-bottom: dotted 2px #c2c2c2;
}
.works .container a {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
@media screen and (min-width: 960px) {
  .works .container a {
    width: 60%;
  }
}
@media screen and (max-width: 960px) {
  .works .container a {
    width: 100%;
  }
}
.works .container a:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}

.injection-molding .container {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .injection-molding .container {
    padding: 10px 30px;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding .container {
    padding: 10px;
  }
}
.injection-molding div.contact_frame {
  display: block;
  text-align: center;
  font-weight: bold;
  background: white;
  border: solid 4px #c3c3c3;
  border-radius: 10px;
}
@media screen and (min-width: 960px) {
  .injection-molding div.contact_frame {
    margin: 30px 50px;
    padding: 20px;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding div.contact_frame {
    margin: 30px 0px;
    padding: 20px 10px;
  }
}
.injection-molding div.contact_frame a {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
@media screen and (min-width: 960px) {
  .injection-molding div.contact_frame a {
    width: 40%;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding div.contact_frame a {
    width: 100%;
  }
}
.injection-molding div.contact_frame a:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}
@media screen and (min-width: 960px) {
  .injection-molding ul.resin {
    column-count: 3;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding ul.resin {
    column-count: 1;
  }
}
.injection-molding a.link-btn {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
@media screen and (min-width: 960px) {
  .injection-molding a.link-btn {
    width: 60%;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding a.link-btn {
    width: 100%;
  }
}
.injection-molding a.link-btn:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}
.injection-molding table.table th {
  font-weight: bold;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .injection-molding table.table th {
    display: table-cell;
    padding: 10px 30px;
    width: 20%;
    text-align: right;
    border-bottom: solid 2px #0066ff;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding table.table th {
    display: block;
    padding: 10px 20px;
    border-bottom: solid 2px #0066ff;
  }
}
.injection-molding table.table td {
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .injection-molding table.table td {
    display: table-cell;
    padding: 10px 50px;
    border-bottom: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding table.table td {
    display: block;
    padding: 10px 20px;
    padding-bottom: 30px;
  }
}
.injection-molding table.machine th {
  padding: 10px;
  color: white;
  background: #0066ff;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .injection-molding table.machine th {
    display: table-cell;
    text-align: center;
    border-left: solid 1px #002d6f;
    border-right: solid 1px #002d6f;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding table.machine th {
    display: block;
  }
}
.injection-molding table.machine td {
  padding: 10px;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .injection-molding table.machine td {
    display: table-cell;
    text-align: center;
    border-bottom: solid 1px #797979;
    border-left: solid 1px #797979;
    border-right: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .injection-molding table.machine td {
    display: block;
    padding-bottom: 30px;
  }
}

.mold-making .container {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .mold-making .container {
    padding: 10px 30px;
  }
}
@media screen and (max-width: 960px) {
  .mold-making .container {
    padding: 10px;
  }
}
.mold-making div.contact_frame {
  display: block;
  padding: 20px;
  text-align: center;
  font-weight: bold;
  background: white;
  border: solid 4px #c3c3c3;
  border-radius: 10px;
}
@media screen and (min-width: 960px) {
  .mold-making div.contact_frame {
    margin: 30px 50px;
  }
}
@media screen and (max-width: 960px) {
  .mold-making div.contact_frame {
    margin: 30px 0px;
  }
}
.mold-making div.contact_frame a {
  display: block;
  margin: 0px auto;
  margin-top: 30px;
  padding: 5px;
  text-align: center;
  color: #0066ff;
  font-size: 16px;
  background: white;
  border: solid 1px #0066ff;
  border-radius: 10px;
  box-shadow: 3px 3px 5px lightgray;
  transition: all 1s ease;
}
@media screen and (min-width: 960px) {
  .mold-making div.contact_frame a {
    width: 40%;
  }
}
@media screen and (max-width: 960px) {
  .mold-making div.contact_frame a {
    width: 100%;
  }
}
.mold-making div.contact_frame a:hover {
  text-decoration: none;
  box-shadow: 0px 0px 0px transparent;
  transition: all 0.5s ease;
}
.mold-making table.table th {
  font-weight: bold;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .mold-making table.table th {
    display: table-cell;
    padding: 10px 30px;
    text-align: right;
    border-bottom: solid 2px #0066ff;
  }
}
@media screen and (max-width: 960px) {
  .mold-making table.table th {
    display: block;
    padding: 10px 20px;
    border-bottom: solid 2px #0066ff;
  }
}
.mold-making table.table td {
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .mold-making table.table td {
    display: table-cell;
    padding: 10px 50px;
    border-bottom: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .mold-making table.table td {
    display: block;
    padding: 10px 20px;
    padding-bottom: 30px;
  }
}
.mold-making table.machine th {
  padding: 10px;
  color: white;
  background: #0066ff;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .mold-making table.machine th {
    display: table-cell;
    text-align: center;
    border-left: solid 1px #002d6f;
    border-right: solid 1px #002d6f;
  }
}
@media screen and (max-width: 960px) {
  .mold-making table.machine th {
    display: block;
  }
}
.mold-making table.machine td {
  padding: 10px;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .mold-making table.machine td {
    display: table-cell;
    text-align: center;
    border-bottom: solid 1px #797979;
    border-left: solid 1px #797979;
    border-right: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .mold-making table.machine td {
    display: block;
    padding-bottom: 30px;
  }
}

.contact .container {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .contact .container {
    padding: 10px 30px;
  }
}
@media screen and (max-width: 960px) {
  .contact .container {
    padding: 10px;
  }
}
.contact input[type=text], .contact input[type=email], .contact input[type=tel], .contact textarea {
  max-width: 100% !important;
}
.contact input[type=text].error,
.contact input[type=email].error,
.contact input[type=tel].error,
.contact textarea.error {
	background: #ffcfcf;
	border: 1px solid #ffafaf;
}
.contact table.tel th {
  padding: 10px;
  font-weight: bold;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .contact table.tel th {
    display: table-cell;
    text-align: right;
    border-bottom: solid 2px #0066ff;
  }
}
@media screen and (max-width: 960px) {
  .contact table.tel th {
    display: block;
    border-bottom: solid 2px #0066ff;
  }
}
.contact table.tel td {
  padding: 10px;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .contact table.tel td {
    display: table-cell;
    border-bottom: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .contact table.tel td {
    display: block;
    padding-bottom: 30px;
  }
}
.contact table.mail th {
  position: relative;
  padding: 10px;
  font-weight: bold;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .contact table.mail th {
    display: table-cell;
    text-align: right;
    border-bottom: solid 2px #0066ff;
  }
}
@media screen and (max-width: 960px) {
  .contact table.mail th {
    display: block;
    border-bottom: solid 2px #0066ff;
  }
}
.contact table.mail th .need {
  display: block;
  padding: 2px 5px;
  position: absolute;
  color: red;
  background: transparent;
  border: solid 1px red;
  border-radius: 5px;
  filter: drop-shadow(3px 3px 2px darkgray);
}
@media screen and (min-width: 960px) {
  .contact table.mail th .need {
    margin-top: -17px;
    top: 50%;
    left: 5px;
  }
}
@media screen and (max-width: 960px) {
  .contact table.mail th .need {
    margin-top: -17px;
    top: 50%;
    right: 5px;
  }
}
.contact table.mail td {
  padding: 10px;
  border-color: transparent;
}
@media screen and (min-width: 960px) {
  .contact table.mail td {
    display: table-cell;
    border-bottom: solid 1px #797979;
  }
}
@media screen and (max-width: 960px) {
  .contact table.mail td {
    display: block;
    padding-bottom: 30px;
  }
}
.contact input[type=submit] {
  display: block;
  margin: 20px auto;
  padding: 10px 50px;
  background: linear-gradient(to bottom, #80a0ff, #0066ff);
  border: 1px solid #797979;
  border-radius: 5px;
}
.contact input[type=submit]:hover {
  background: linear-gradient(to bottom, #0066ff, #80a0ff);
}

#alert {
	display: block;
	padding: 5px 10px;

	line-height: 120%;
	background: #ffcfcf;
	border: 1px solid #ffafaf;
	border-radius: 5px;
}

#success {
	display: block;
	padding: 5px 10px;

	line-height: 120%;
	background: #ffffcf;
	border: 3px solid #ffffaf;
	border-radius: 5px;
}