@charset "UTF-8";
/* 共通 */

body {
  font-family: Meiryo;
}
h1 {
  font-size: 12px;
  color: #666666;
  font-weight: normal;
  font-style: normal;
  margin: 8px 0 0 0;
  text-align: center;
}

p {
  margin: auto;
  font-size: 14px;
}

.bold {
  font-weight: bold;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

ul {
  margin: 0;
}

.center {
  text-align: center;
  font-weight: bold;
  color: #ac2280;
  font-size: 1.2em;
}

.mainte {
  text-align: center;
  font-size: 18px;
}

#figure p {
  font-size: 12px;
}

/* 間隔を空けるため */
.space {
  margin-bottom: 10px;
}
.space40 {
  margin-bottom: 40px;
}
.space80 {
  margin-bottom: 80px;
}
.space_top20 {
  margin-top: 20px;
}
.p_index {
  margin-top: 20px;
}

.p_product p:last-child {
  margin-top: 20px;
}

/* index.htmlの文章 */
.p_index p {
  font-size: 13px;
  line-height: 20px;
  letter-spacing: 1px;
}

h2 {
  font-weight: bold;
  letter-spacing: 2px;
  font-size: 16px;
  /* font-size: 1.4em;  */
  /* font-size: 1.2em; */
  /* padding-left: 18px; */
  padding: 8px 0 2px 18px;
  border-right-width: 1px;
  border-bottom-width: 1px;
  border-right-style: solid;
  border-bottom-style: solid;
  border-right-color: #004080;
  border-bottom-color: #004080;
  background-image: url(images/bar_00.gif);
  background-repeat: repeat;
  margin: 18px 0;
}

#h3_red {
  color: #ff0000;
  text-align: center;
}

nav ul {
  list-style: none;
  overflow: hidden;
}

/* 画像のサイズ調節 */
.container img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.container a img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

#tel_block {
  margin-top: 10px;
  margin-bottom: 20px;
}

.sub_list,
.sub_list2 {
  list-style-type: none;
  width: 180px;
  padding: 0;
  font-size: 15px;
  border: 1px solid #353573;
  background-color: white;
}

.product-photos {
  max-width: 746px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
}
.product-photos img {
  max-width: 100%;
}

/* サブメニューお問い合わせの位置調整 */
.space_sub {
  margin-bottom: 8px;
}

/* テーブル */
table {
  border: 1px solid grey;
  border-collapse: collapse;

  margin: 0 auto;
  width: 90%;
  font-size: 13px;
}

table th {
  padding-top: 4px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 4px;
  line-height: 19px;
  letter-spacing: 1px;
}

table tr td {
  padding-top: 4px;
  padding-left: 6px;
  padding-right: 6px;
  padding-bottom: 4px;
  line-height: 19px;
  letter-spacing: 1px;
}

table th {
  border: 1px solid grey;
  background-color: #cccccc;
  color: #333333;
  font-weight: normal;
}

table tr:nth-child(even) td {
  background-color: #f2f2f2;
}

table td {
  padding: 1px;
  border: 1px solid grey;
  color: #333333;
}
/* テーブルここまで */

/* フッターここから */
footer {
  font-size: 12px;
  color: #333333;
  border-top: 1px solid #999999;
  text-align: center;
  padding-top: 6px;
}

.footer_nav {
  width: 100%;
  font-size: 0.6em;
  border-top: 3px solid #400080;
  margin-top: 50px;
}

.footer_nav ul {
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  list-style-type: none;
  padding-left: 0;
  text-align: center;
  padding-inline-start: 0;

  padding: 5px 0;
}

.footer_nav ul li {
  border-left: 1px solid grey;
  padding: 0 4px;
}

.footer_nav ul li:last-child {
  border-right: 1px solid grey;
}
/* フッターここまで */
/* 共通ここまで */

/* レスポンシブ用 */
@media only screen and (max-width: 768px) {
  .space_responsibe {
    margin: 0 0 10px 0;
  }

  .container {
    margin: 0 auto;

    max-width: 90%;
    /* text-align: center; */
    height: auto;
  }

  /* pc用の見出し非表示にする */
  .container_nav_pc {
    display: none;
  }
  /* pc用のヘッダー非表示にする */
  #pc_header {
    display: none;
  }

  /* index.htmlの有限会社 堀川工業　代表取締役　堀川 和彦 */
  .p_index .p_strong {
    text-align: right;
    font-weight: bold;
    /* font-size: 16px; */
    font-size: 3vmin;
  }

  /* タイトル画像 */
  .container_mainimg {
    margin: 0 auto;
    max-width: 90%;
    text-align: center;
  }

  .container_mainimg img {
    width: 80%;
  }

  /* product.htmlの画像 */
  .container_product {
    margin: 0 auto;
    max-width: 90%;
    text-align: center;
  }

  /* 子ページの見出し画像用 */
  .container_wide {
    max-width: 100%;
  }

  .container_small_left,
  .container_small_right {
    margin: 0 auto;
    max-width: 100%;
    text-align: center;
  }

  .container_small_left ul {
    display: inline-block;
    margin: 0;
    text-align: center;
  }

  .sub div:first-child {
    margin-top: 8px;
  }

  .container_small_right ul {
    margin: 8px 0;
  }

  /* ナビ */

  .nav_image {
    width: 100%;
    margin-right: 5px;
  }

  .container_nav div:first-child {
    margin-left: 5px;
  }

  .nav_image img {
    width: 100%;
  }

  .container_nav {
    list-style-type: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-evenly;
    padding: 0;
  }

  .container_nav li {
    margin-right: 10px;
  }

  .container_nav li:first-child {
    margin-left: 10px;
  }

  .container img {
    width: 100%;
  }

  /* 画像の説明文 */
  figcaption {
    font-size: 0.4em;
  }

  .navlist li {
    width: 100px;
    margin: 14px 8px;
    box-sizing: border-box;
  }

  /* index.htmlの横並び画像 */
  #imageblock {
    margin: 0 auto;
    max-width: 90%;
    border: 1px solid #cccccc;
    text-align: center;
  }

  #imageblock .container {
    padding: 10px 0;
    display: flex;
    justify-content: space-evenly;
  }

  #imageblock figure {
    margin: 0;
  }

  #figure img {
    width: 100%;
  }

  #imageblock figure:first-child {
    margin-right: 10px;
  }

  #imageblock img {
    width: 80%;
  }

  #imageblock img:first-child {
    margin-right: 10px;
  }

  .sub_list,
  .sub_list2 {
    list-style-type: none;
    width: 50%;
    padding: 0;
    font-size: 15px;
    border: 1px solid grey;
  }
  /* index.htmlの横並び画像ここまで */

  /* product.htmlの横並び画像 */
  .imageblock_product {
    margin: 0 auto;
    max-width: 90%;
    padding: 5px 0;
    display: flex;
    justify-content: space-evenly;
  }

  .imageblock_product p {
    margin: 0 5px;
  }

  .imageblock_product img {
    width: 100%;
  }

  .imageblock_product .img_cp007 img {
    width: auto;
  }

  .imageblock_product img:first-child {
    margin-left: 0;
  }

  .imageblock_product img {
    margin-left: 10px;
  }

  .product-photos {
    grid-template-columns: 1fr 1fr;
    margin: 0 auto;
    max-width: 90%;
  }

  /* product.htmlの横並び画像ここまで */

  .right {
    font-size: 12px;
    text-align: right;
    margin: 5px 0;
    padding-right: 8px;
    line-height: 16px;
    width: auto;
  }

  #profile {
    text-align: center;
  }

  /* 業務内容、お問い合わせ先 */
  .sub_list li {
    color: #353573;
    font-size: 12px;
    padding: 4px 4px 4px 10px;
    text-align: center;
  }

  .sub_list2 li {
    color: #333333;
    font-size: 12px;
    padding: 4px 4px 4px 10px;
    text-align: center;
  }

  .sub_list p,
  .sub_list2 p {
    margin-top: 0;
  }

  /* サブメニューお問い合わせの位置調整 */
  .space_sub {
    margin-bottom: 8px;
  }

  .list_title {
    background: linear-gradient(#618bd0 5%, #2d5bb8 15%, #353573 75%);
    background-color: #353573;
    color: #ffffff;
    font-size: 15px;
    padding: 4px 0;
  }

  /* product.html */

  #red {
    font-size: 16px;
    margin-bottom: 8px;
  }

  #tube .red {
    color: #ff0000;
    font-size: 12px;
    margin-right: 20px;
  }

  #small {
    font-size: 13px;
    padding-right: 10px;
    color: #333333;
  }

  #small2 {
    font-size: 12px;
    color: #666;
    text-align: center;
  }

  /* map.htmlのgoogleマップ */
  .container_map {
    max-width: 80%;
    margin: 0 auto;
    text-align: center;
  }

  /* map.htmlのgoogleマップここまで */
}

/* パソコンサイズ */
@media only screen and (min-width: 769px) {
  .container {
    margin: 0 auto;
    max-width: 746px;
    /* max-width: 90%;  */
  }

  .container img {
    object-fit: contain;
  }

  /* スマホ用の見出し非表示にする */
  .container_nav {
    display: none;
  }
  /* スマホ用のヘッダー非表示にする */
  #header {
    display: none;
  }

  /* h2の高さ */
  .h2_size {
    height: 31px;
  }

  /* pc用の見出し */
  .container_nav_pc {
    list-style-type: none;
    display: flex;
    margin-bottom: 20px;
    padding: 0;
  }

  .container_nav_pc li {
    width: 20%;
    padding-right: 1px;
  }

  /* pc用のヘッダー */
  #pc_header {
    margin: 0 auto;
    max-width: 746px;
    /* max-width: 90%; */
  }

  #pc_header .container {
    display: flex;
    border: 1px solid #cccccc;
    border-bottom: 2px solid #333333;
    justify-content: space-between;
  }

  #pc_header_right {
    width: 414px;
    text-align: right;
  }

  .right {
    font-size: 12px;
    text-align: right;
    margin: 2px 0;
    padding-right: 8px;
    width: auto;
  }

  #pc_header_right p:first-child {
    margin-top: 15px;
  }

  /* pc用の電話番号、ファックスの赤字 */
  .pc_right {
    font-size: 17px;
    font-weight: bold;
    color: #ac2280;
    margin: 5px 0 0 0;
    padding-right: 8px;
    letter-spacing: -2px;
  }
  /* pc用のヘッダーここまで */

  /* 業務内容、お問い合わせ先 */
  #product .sub,
  #company .sub,
  #equipment .sub,
  #map .sub {
    margin-top: 18px;
  }

  .sub {
    background-color: rgb(251, 251, 251);
  }

  .sub_list li {
    color: #353573;
    font-size: 12px;
    padding-left: 8px;
    padding-right: 4px;

    padding-bottom: 4px;
    text-align: left;
  }

  .sub_list2 li {
    color: #333333;
    font-size: 12px;
    padding-left: 8px;
    padding-right: 4px;

    padding-bottom: 4px;
    text-align: left;
  }

  .sub_list li:last-child,
  .sub_list2 li:last-child {
    padding-bottom: 8px;
  }

  .list_title_first {
    padding-top: 8px;
  }

  .sub_list .list_title_red {
    font-size: 15px;
    color: #ac2280;
    font-weight: bold;
    line-height: 19px;
    padding-bottom: 2px;
  }

  .sub_list2 .list_title_red {
    font-size: 15px;
    color: #ac2280;
    font-weight: bold;
    line-height: 19px;
    padding-bottom: 2px;
  }
  .sub_list,
  .sub_list2 {
    text-align: center;
    list-style-type: none;
    padding: 0;
    border: 1px solid grey;
  }

  .sub_list2 .horikawa {
    font-size: 16px;
    color: #333333;
    font-weight: bold;
    line-height: 45px;
    text-align: center;
  }
  /* 業務内容、お問い合わせ先ここまで */

  /* タイトル画像 */
  .container_mainimg {
    margin: 0 auto;
    max-width: 70%;
    text-align: center;
  }

  .container_mainimg a {
    text-align: center;
  }

  .container_mainimg img {
    width: 100%;
  }

  /* メインとサブ2列にする*/
  #block {
    margin: 0 auto;
    max-width: 746px;
    display: flex;
    justify-content: space-around;
    /* max-width: 90%; */
  }

  /* index.htmlのメインとサブ2列にする */
  #index #block {
    justify-content: space-around;
  }

  /* images/bar_top02.jpgの位置調整 */
  #img_top2 {
    margin: 0 0 20px 0;
    border: 1px solid #551a8b;
    height: 100px;
  }

  .main {
    width: 528px;
    /* width: 70%; */
  }

  .sub {
    /* width: 30%; */
    width: 184px;
  }

  .sub .container_small_left {
    margin: 0 30px 0 0;
  }

  /* .sub .container_small_right {
  margin: 0 0 0 30px;
  
} */

  .main .container a {
    width: 70%;
  }
  #figure {
    margin: 0 auto;
  }

  #order1 {
    order: 1;
  }
  #order2 {
    order: 2;
  }

  .sub_list p,
  .sub_list2 p {
    margin-top: 0;
  }

  .list_title {
    background: linear-gradient(#618bd0 5%, #2d5bb8 15%, #353573 75%);
    background-color: #353573;
    color: #ffffff;
    font-size: 15px;
    padding: 8px 0;
    text-align: center;
  }

  /* index.htmlのメインとサブ2列にする、ここまで*/

  /* index.htmlの横並び画像 */
  #imageblock {
    border: 1px solid #cccccc;
    text-align: center;
  }

  #imageblock .container {
    margin: 0 auto;
    /* padding:10px ;  */
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    text-align: center;
    gap: 20px;
  }

  #imageblock figure {
    margin: 0;
  }

  #imageblock figure img {
    width: 100%;
  }

  #imageblock figure:first-child {
    margin-right: 10px;
  }

  /* #imageblock img {
  width: 80%;
}

#imageblock img:first-child {
  margin-right: 10px;
} */
  /* index.htmlの横並び画像ここまで */

  /* product.html */
  /* .container_small_right  ul:first-child {
   margin-top: 18px;
} */

  #small {
    font-size: 13px;
    color: #333333;
    margin-bottom: 10px;
  }

  #small2 {
    font-size: 12px;
    color: #333;
    text-align: center;
  }

  /* index.htmlの有限会社 堀川工業　代表取締役　堀川 和彦 */
  .p_index .p_strong {
    text-align: right;
    font-size: 14px;
    font-weight: bold;
  }

  /* product.htmlの横並び画像 */
  .imageblock_product {
    margin: 0 auto;
    max-width: 746px;
    padding: 5px 0;
    display: flex;
    justify-content: space-between;
  }

  .imageblock_product p {
    margin: 0 5px;
  }

  .imageblock_product img {
    width: 100%;
  }

  .imageblock_product img:first-child {
    margin-left: 0;
  }

  .imageblock_product img {
    margin-left: 10px;
  }

  .imageblock_product .p_product {
    width: 70%;
  }

  .imageblock_product .img_cp007 {
    width: 40%;
  }

  /* product.htmlの横並び画像ここまで */
  #tube {
    width: 510px;
    height: 197px;
  }

  #tube .red {
    /* margin: 20px 0; */
    color: #ff0000;
    text-align: right;
  }

  /* map.htmlのgoogleマップ */
  .container_map {
    max-width: 80%;
    margin: 0 auto;
    text-align: center;
  }

  /* map.htmlのgoogleマップここまで */

  /* フッターここから */
  .footer_nav {
    width: 100%;
    font-size: 12px;
    border-top: 3px solid #400080;
    margin-top: 50px;
    line-height: 17px;
  }

  .footer_nav ul {
    padding: 5px 1px;
  }

  .footer_nav ul li a {
    padding: 0 8px;
  }
  /* フッターここまで */
} /* パソコンサイズの閉じタグ */

/* product.html */
@media only screen and (max-width: 600px) {
}

/* googleマップのレスポンシブ用 */
@media only screen and (max-width: 600px) {
  .container_map iframe {
    max-height: 250px;
  }
}

/*product.htmlの画像用  */
@media only screen and (max-width: 500px) {
  #tube {
    display: block;
  }

  #tube .img_cp007 {
    width: 80%;
    margin: 0 auto;
    padding: 10px;
    text-align: center;
  }

  .imageblock_product img {
    width: 100%;
  }
}
