@charset "utf-8";

/* << INDEX >> ----------------------------------------------------------------
*
* @ 共通
* @ トップページ
* @ サイトマップ
* @ 404
* @ 検索
* @ 投稿｜詳細
* @ 投稿｜製品詳細
* @ アーカイブ
* @ アーカイブ｜製品一覧
* @ ページ｜三木ネツレンの強み！
* @ ページ｜会社情報 > 企業理念・社是
* @ ページ｜会社情報 > 会社概要・沿革・事業所
* @ ページ｜会社情報 > 品質保証・災害補償
* @ ページ｜製造工程の紹介
* @ ページ｜ネツレン指定サービスショップ
* @ ページ｜製品情報
* @ ページ｜製品カタログ・取説ダウンロード
* @ ページ｜お問合せ・見積依頼フォーム
* @ ページ｜プライバシーポリシー
* @ ページ｜採用情報 > 新卒募集
* @ ページ｜採用情報 > 中途募集
*
* -------------------------------------------------------------------------- */

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 共通
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* @ キーイメージ（H2見出し）
---------------------------------------------------------------------------- */
#page_title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  width: 100%;
  max-width: 1200px;
  height: 250px;
  margin: 0 auto;
  background:#fff url(../img/keyimg-default.png) no-repeat center center;
  overflow: hidden;
}
#page_title::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 120px 0 0 725px;
  border-color: transparent transparent transparent #006cb8;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
#page_title h2 {
  position: relative;
  width: 100%;
  color: #fff;
  font-size: 1.75rem;
  margin: 0;
  padding: 0 16px 10px;
  line-height: 1.2em;
  text-shadow:
    1px 1px  0 #006cb8, -1px -1px 0 #006cb8,
    -1px 1px  0 #006cb8,  1px -1px 0 #006cb8,
    0px 1px  0 #006cb8,  0   -1px 0 #006cb8,
    -1px 0    0 #006cb8,  1px  0   0 #006cb8;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
@media screen and (max-width: 768px) {
  #page_title::before {
    border-width: 85px 0 0 460px;
  }
  #page_title h2 {
    font-size: 1.5rem;
  }
}

/* @ カテゴリーラベル
---------------------------------------------------------------------------- */
.post-data .cat_label {
  display: inline-block;
  width: 160px;
  padding: 4px 0;
  margin-left: 1em;
  color: #fff;
  font-size: 0.875em;
  text-align: center;
}

/* @ リンクボタン（青背景・白文字）
---------------------------------------------------------------------------- */
.link_btn {
  margin-top: 100px;
  text-align: center;
}

.link_btn a {
  display: inline-block;
  text-align: center;
  background: #004da0;
  color: #fff;
  font-size: 1.125rem;
  font-weight: bold;
  padding: 15px 30px;
  border-radius: 5px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.link_btn a:before {
  margin-right: 5px;
  content: '\f075';
  font-family: 'FontAwesome';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 480px) {
  .link_btn a span {
    display: none;
  }
}

a.alpha:hover {
  text-decoration: none;
}

/* @ カラム分割
---------------------------------------------------------------------------- */
.flex_cols {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto 30px;
  padding: 0;
}
.col2,
.col3,
.col4,
.col5 {
  list-style-type: none;
}

/* >>>> 2カラム分割 */
@media screen and (min-width: 481px) {
  .col2 {
    width: calc(((100% - 15px) / 2) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col2:nth-of-type(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 480px) {
  .col2 {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 30px;
  }
}

/* >>>> 3カラム分割 */
@media screen and (min-width: 769px) {
  .col3 {
    width: calc(((100% - 15px * 2) / 3) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col3:nth-of-type(3n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 481px) and (max-width: 768px) {
  .col3 {
    width: calc(((100% - 15px) / 2) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col3:nth-of-type(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 480px) {
  .col3 {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 30px;
  }
}

/* >>>> 4カラム分割 */
@media screen and (min-width: 769px) {
  .col4 {
    width: calc(((100% - 15px * 3) / 4) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col4:nth-of-type(4n) {
    margin-right: 0;
  }
}

@media screen and (min-width: 481px) and (max-width: 768px) {
  .col4 {
    width: calc(((100% - 15px) / 2) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col4:nth-of-type(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 480px) {
  .col4 {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 30px;
  }
}

/* >>>> 5カラム分割 */
@media screen and (min-width: 900px) {
  .col5 {
    width: calc(((100% - 15px * 4) / 5) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col5:nth-of-type(5n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .col5 {
    width: calc(((100% - 15px * 3) / 4));
    margin: 0 15px 15px 0;
  }

  .col5:nth-of-type(4n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 681px) and (max-width: 768px) {
  .col5 {
    width: calc(((100% - 15px * 2) / 3) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col5:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 481px) and (max-width: 680px) {
  .col5 {
    width: calc(((100% - 20px) / 2) - 0.1px);
    margin: 0 15px 15px 0;
  }

  .col5:nth-of-type(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .col5 {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 30px;
  }
}

/* @ その他
---------------------------------------------------------------------------- */
.wp-pagenavi { clear: both; }
.alignC { text-align: center; }
.alignL { text-align: center; }
.alignR { text-align: center; }

/* >>> YouTube をレスポンシブ対応 */
.youtube_wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 50px;
}

.youtube_wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ トップページ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.h2_wrap {
  position: relative;
}
.home h2 {
  margin: 50px 0;
  font-size: 2.375rem;
  text-align: center;
}
.h2_wrap .link-btn {
  position: absolute;
  top: calc(50% - 20px);
  right: 0;
  margin: 0;
}
.h2_wrap .link-btn a {
  margin: 0;
}
@media screen and (max-width: 900px) {
  .home h2 {
    font-size: 2rem;
    margin: 50px 0 70px;
  }
  .h2_wrap .link-btn {
    position: absolute;
    top: auto;
    bottom: -40px;
    margin: 0;
  }
  .h2_wrap .link-btn a {
    width: 120px;
    font-size: 0.875rem;
    line-height: 28px;
  }
}
@media screen and (max-width: 480px) {
  .home h2 {
    font-size: 1.5rem;
  }
}

/* @ ワイドスライダー
---------------------------------------------------------------------------- */
.slider {
  width: 100%;
  max-width: 1850px;
  margin: 45px auto 0;
  padding: 0 0 45px;
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .slider {
    margin-top: 30px;
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .slider {
    margin-top: 15px;
    padding-bottom: 20px;
  }
}
.slider ul.clearfix {
  margin: 0 auto;
  padding: 0;
}
.slider ul.clearfix > li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

/* @ インフォメーション
---------------------------------------------------------------------------- */
@media screen and (max-width: 480px) {
  .home #information .h2_wrap .link-btn {
    display: none;
  }
}
.home #information .link-btn.sp-only {
  display: none;
}
@media screen and (max-width: 480px) {
  .home #information .link-btn.sp-only {
    display: block;
  }
  .home #information .link-btn.sp-only a {
    width: 100%;
  }
}
.news-list ul {
  margin: 0 0 50px;
  padding: 0;
}
.news-list ul li {
  list-style-type: none;
  margin: 15px 0;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .news-list ul li {
    margin: 25px 0;
  }
}
.news-list ul li dl {
  margin: 0;
  padding: 0;
  width: 100%;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.news-list ul li dl dt {
  float: left;
  width: 6.5em;
}
.news-list ul li dl dd {
  margin: 0;
  padding: 0;
}
.news-list ul li dl dd.cat_label {
  float: left;
  width: 6.5em;
  font-size: 0.875rem;
}
.news-list ul li dl dd.cat_label span {
  display: inline-block;
  min-width: 9em;
  color: #fff;
  text-align: center;
}
.news-list ul li dl dd:last-of-type {
  padding-left: 16em;
}
@media screen and (max-width: 768px) {
  .news-list ul li dl dd:last-of-type {
    clear: both;
    padding: 10px 0 0;
  }
}

/* @ 製品情報
---------------------------------------------------------------------------- */
.home #product {
  padding: 1px 0;
  background-color: #006cb8;
  color: #fff;
}
.home #product h2 {
  margin: 65px 0 15px;
  color: #fff;
}
.home #product ul {
  margin: 0;
  padding: 0;
}
.home #product ul li {
  list-style-type: none;
  padding: 0;
}
.home #product ul li a {
  display: block;
  max-width: 229px;
  height: 100%;
  margin: 0 auto;
  padding: 0 0 1px;
  background-color: #000;
  color: #fff;
  text-align: center;
  text-decoration: none;
}
.home #product ul li a:hover {
  opacity: .6;
}
.home #product ul li > a > figure {
  margin: 0;
  background-color: #fff;
}
.home #product ul li > a > p {
  margin: 0;
  padding: 10px;
  background-color: #000;
  border: solid 2px #000;
}

.home #product ul:nth-of-type(2) li a {
  max-width: 270px;
}
@media screen and (min-width: 769px) {
  .home #product ul:nth-of-type(2) li {
    width: calc(((100% - 40px * 3) / 4) - 0.1px);
    margin: 0 40px 40px 0;
  }
  .home #product ul:nth-of-type(2) li.col4:nth-of-type(4n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  .home #product ul:nth-of-type(2) li {
    width: calc(((100% - 40px) / 2) - 0.1px);
    margin: 0 40px 40px 0;
  }
  .home #product ul:nth-of-type(2) li.col4:nth-of-type(2n) {
    margin-right: 0;
  }
}
.home #product .page-order_link {
  margin: 30px 0 70px;
}

/* @ 新製品情報
---------------------------------------------------------------------------- */
#new-product h2 {
  margin: 55px 0 35px;
}
@media screen and (min-width: 481px) and (max-width: 900px) {
  #new-product h2 {
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 480px) {
  #new-product .link-btn {
    display: none;
  }
}
#new-product .link-btn.sp-only {
  display: none;
  margin: 0 auto 150px;
}
@media screen and (max-width: 480px) {
  #new-product .link-btn.sp-only {
    display: block;
  }
}
#new-product .link-btn.sp-only a {
  width: 100%;
}
@media screen and (max-width: 480px) {
  #new-product ul {
    margin-bottom: 0;
  }
}
#new-product ul li {
  margin-bottom: 35px;
}
#new-product ul li a {
  display: block;
  text-decoration: none;
}
#new-product ul li a > figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #d4cbc6;
  border: solid 1px #666;
}
#new-product ul li a > figure img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-height: 100%;
}
#new-product ul li a > p {
  text-align: center;
  color: #000;
}


/* @ 各ページへリンク
---------------------------------------------------------------------------- */
.home #links {
  margin-top: 70px;
}
.home #links .col2 {
  position: relative;
  padding-bottom: 55px;
}
@media screen and (max-width: 480px) {
  .home #links .col2 {
    padding-bottom: 40px;
  }
}
.home #links .col2 {
  width: calc(((100% - 110px) / 2) - 0.1px);
  margin: 0 110px 50px 0;
}
.home #links .col2:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (min-width: 481px) and (max-width: 1200px) {
  .home #links .col2 {
    width: calc(((100% - 5%) / 2) - 0.1px);
    margin: 0 5% 50px 0;
  }
}
@media screen and (max-width: 480px) {
  .home #links .col2 {
    width: 100%;
    max-width: 320px;
    margin: 0 auto 50px;
  }
  .home #links .col2:nth-of-type(2n) {
    margin-right: auto;
  }
}
.home #links h2 {
  margin: 16px 0;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .home #links h2 {
    font-size: 1.5rem;
  }
}
.home #links > ul > li .link-btn {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0;
}
@media screen and (max-width: 480px) {
  .home #links > ul > li .link-btn,
  .home #links > ul > li .link-btn a {
    width: 100%;
  }
}

/* @ 三木ネツレンの強み！
---------------------------------------------------------------------------- */
.home #advantage {
  height: 695px;
  margin: 0 0 70px;
  padding: 1px 20px;
  background: transparent url('../img/advantage-bgimg.png') no-repeat center top;
  text-align: center;
}
@media screen and (max-width: 1200px) {
  .home #advantage {
    margin: 0 -20px 70px;
  }
}
.home #advantage figure {
  margin: 55px 0 25px;
}
.home #advantage p strong {
  margin: 55px 0 25px;
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .home #advantage p strong {
    font-size: 1rem;
  }
}
.home #advantage .link-btn {
  margin: 20px 0;
}

/* @ カタログダウンロード
---------------------------------------------------------------------------- */
.home #catalog-download {
  margin: 70px 0;
}

/* @ お問合せはこちら
---------------------------------------------------------------------------- */
#inquiry {
  clear: both;
  margin: 70px 0;
  padding: 1px 25px;
  background-color: #006cb8;
}
@media screen and (max-width: 480px) {
  #inquiry {
    padding: 1px 15px;
  }
}
#inquiry h2 {
  margin: 25px;
  color: #fff;
  line-height: 1em;
  text-align: center;
}
#inquiry > p {
  color: #fff;
  text-align: center;
}
#inquiry .links_wrap {
  padding: 40px 0;
  border-top: solid 1px #fff;
  overflow: hidden;
}
#inquiry .links_wrap > p {
  float: left;
  width: calc(50% - 15px);
  margin: 0;
  text-align: center;
}
#inquiry .links_wrap > p:first-of-type {
  margin-right: 30px;
}
@media screen and (max-width: 768px) {
  #inquiry .links_wrap > p {
    float: none;
    width: 100%;
  }
  #inquiry .links_wrap > p:first-of-type {
    margin: 0 0 30px;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ サイトマップ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-sitemaps #contents {
  padding-left: 50px;
  padding-right: 50px;
}
.page-sitemaps .sitemaps-list {
  float: left;
  width: 45.5%;
  padding-right: 9%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}
.page-sitemaps .sitemaps-list:nth-of-type(2n) {
  padding-right: 0;
}

.page-sitemaps .sitemaps-list > ul {
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.page-sitemaps .sitemaps-list ul li {
  list-style: none;
}

.page-sitemaps .sitemaps-list li a:hover {
  text-decoration: underline;
}

.page-sitemaps .sitemaps-list > ul > li {
  padding: 0;
}

.page-sitemaps .sitemaps-list > ul > li > a {
  position: relative;
  display: block;
  padding: 10px 0 10px 25px;
  border-bottom: dotted 1px #ccc;
  color: #000;
  font-weight: bold;
  text-decoration: none;
}

.page-sitemaps .sitemaps-list > ul > li > a::before {
  position: absolute;
  top: 10px;
  left: 0;
  display: inline-block;
  content: '\f105';
  font-family: "Font Awesome 5 Solid", "FontAwesome";
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.page-sitemaps .sitemaps-list > ul > li > ul {
  margin: 0;
  padding-left: 0;
}

.page-sitemaps .sitemaps-list > ul > li > ul > li {
  padding: 0;
}

.page-sitemaps .sitemaps-list > ul > li > ul > li > a {
  position: relative;
  display: block;
  padding: 10px 0 10px 2.4em;
  border-bottom: dotted 1px #ccc;
  color: #000;
  text-decoration: none;
}

.page-sitemaps .sitemaps-list > ul > li > ul > li > a::before {
  position: absolute;
  top: 10px;
  left: 1.2em;
  display: inline-block;
  content: '・';
}

@media screen and (max-width: 768px) {
  .page-sitemaps .sitemaps-list {
    float: none;
    width: 100%;
    padding-right: 0;
  }

  .page-sitemaps .sitemaps-list:nth-of-type(2) {
    padding-top: 0;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 404
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* @ メッセージ
---------------------------------------------------------------------------- */
.error404 .er404-message {
  text-align: center;
}

.error404 .er404-message:before {
  display: block;
  font-family: 'FontAwesome';
  font-weight: normal;
  font-size: 140px;
  content: "\f071";
  color: #f66;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 768px) {
  .error404 .er404-message:before {
    font-size: 112px;
  }
}

.error404 .er404-message p:first-child {
  font-family: 'Open Sans', sans-serif;
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin-top: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media screen and (max-width: 768px) {
  .error404 .er404-message p:first-child {
    font-size: 2.25em;
  }
}

.error404 .er404-message p:first-child span {
  font-size: 0.5em;
}

/* @ 検索フォーム
---------------------------------------------------------------------------- */
#er404-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 80%;
  min-width: 280px;
  max-width: 680px;
  margin: 5em auto;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  #er404-search {
    margin: 2em auto;
  }
}

#er404-search label:first-of-type {
  width: 100%;
}

#er404-search input[type='text'] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 10px;
  border: none;
  border-radius: 0;
  outline: none;
  background-color: #eee;
}

#er404-search input[type='submit'] {
  font-family: 'FontAwesome';
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0.5em 0.75em;
  height: 100%;
  border: none;
  border-radius: 0;
  outline: none;
  background-color: #2d3339;
  color: #fff;
  font-weight: normal;
  font-size: 1.25em;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 検索
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.search #page_title {
  background: #fff url(../img/keyimage_search.jpg) no-repeat center center;
}
.search #er404-search {
  margin: 3em auto;
}

.search .search-list {
  border-top: 1px solid #ccc;
}

.search .search-list ul {
  display: block;
  margin: 0;
  padding: 0;
}

.search .search-list > a {
  display: block;
  padding: 20px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  color: inherit;
  text-decoration: none;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.search .search-list > a:hover {
  text-decoration: none;
  background-color: #eee;
}

.search .search-list h3 {
  margin-top: 0;
}

.search .search-list p:last-child {
  text-align: right;
  margin-bottom: 0;
  padding-top: 1em;
  border-top: 1px dotted #ccc;
  font-size: 0.875em;
  color: #999;
}

.search .search-count {
  margin: 2em 0;
}

.search-everything-highlight {
  font-weight: bold;
  text-decoration: underline;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.search-everything-highlight:before {
  display: none;
}

.search .wrap {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 20px;
}

.search .permalink {
  overflow: hidden;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 投稿｜詳細
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.single #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 768px) {
  .single #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.single .post-data {
  padding: 0;
  margin: 0;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.single h3 {
  margin: 20px 0;
  padding: 0;
  background-image: none;
  color: #000;
  font-size: 1.125rem;
  line-height: 1.5em;
  text-align: left;
}
.single hr.dotted {
  margin: 20px 0;
  border: none;
  border-top: dotted 1px #ccc;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ 投稿｜製品詳細
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.single-product h3 {
  padding: 14px 14px 14px 45px;
  background: #00afec;
  color: #fff;
  font-size: 2.5rem;
}
@media screen and (max-width: 768px) {
  .single-product h3 {
    padding: 14px;
    font-size: 2rem;
  }
}
.single-product h3 span {
  font-size: 1.625rem;
}
@media screen and (max-width: 600px) {
  .single-product h3 > span:last-of-type {
    display: block;
  }
}
.single-product h3::before,
.single-product h3::after {
  display: none;
}
.single-product h4 {
  position: relative;
  padding: 6px 1em;
  background-image: repeating-linear-gradient(90deg, transparent, transparent 10px, #006cb8 0, #006cb8 11px);
  color: #fff;
  font-size: 1.25rem;
}
.single-product h4::before {
  position: absolute;
  top: 0;
  border: 0;
  left: 0;
  display: block;
  content: '';
  width: 35%;
  height: 100%;
  min-width: 10em;
  background-color: #006cb8;
  z-index: -1;
}
.single-product .right_box {
  float: right;
  width: 50%;
  padding: 0 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .single-product .right_box {
    float: none;
    width: 100%;
  }
}
.single-product .right_box a img {
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
.single-product .right_box a:hover img {
  opacity: .6;
}
.single-product .left_box {
  float: left;
  width: 50%;
}
@media screen and (max-width: 768px) {
  .single-product .left_box {
    float: none;
    width: 100%;
  }
}

.single-product .product_example {
  overflow: hidden;
}
@media screen and (max-width: 480px) {
  .single-product .product_example {
    max-width: 280px;
    margin: 30px auto 50px;
  }
}
.single-product .product_example .ttl {
  color: #006cb8;
  font-size: 1.25rem;
}
.single-product .product_example a {
  display: block;
  float: left;
  width: calc((100% - 6.5%) / 2 - 0.1px);
  margin-right: 6.5%;
  margin-bottom: 30px;
  color: #000;
  text-decoration: none;
}
.single-product .product_example a:nth-of-type(2n) {
  margin-right: 0;
}
@media screen and (max-width: 480px) {
  .single-product .product_example a {
    float: none;
    width: 100%;
    margin: 0 auto 30px;
  }
  .single-product .product_example a:nth-of-type(2n) {
    margin-right: auto;
  }
}
.single-product .product_example a:hover {
  opacity: .6;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ アーカイブ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.archive #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 768px) {
  .archive #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.links_list {
  margin: 0 auto 90px;
  padding: 10px;
  background-color: #f4f4f4;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .links_list {
    margin-top: 40px;
  }
}
@media screen and (max-width: 480px) {
  .links_list {
    padding: 10px 20px;
    text-align: left;
  }
}
.links_list li {
  list-style-type: none;
  display: inline-block;
  margin: 5px 0.5em;
}
@media screen and (max-width: 480px) {
  .links_list li {
    display: block;
  }
}
.links_list li a {
  position: relative;
  display: inline-block;
  padding-left: .8em;
  color: #000;
  text-decoration: none;
}
.links_list li.current_item a {
  color: #006cb8;
}
.links_list li a::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: '\f105';
  padding: 0;
  font-family: "Font Awesome 5 Solid", "FontAwesome";
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.archive .news-list > ul > li {
  margin: 0;
  padding: 20px 50px;
  border-bottom: dotted 1px #000;
}
@media screen and (max-width: 768px) {
  .archive .news-list > ul > li {
    padding: 20px;
  }
}
@media screen and (max-width: 480px) {
  .archive .news-list > ul > li {
    padding: 20px 0;
  }
}
.archive .news-list > ul > li a {
  color: #000;
  text-decoration: none;
}
.archive .news-list > ul > li a:hover {
  text-decoration: underline;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ アーカイブ｜製品一覧
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.archive.tax-product_category #contents,
.archive.tax-type_category #contents,
.archive.tax-use_category #contents {
  padding-left: 0;
  padding-right: 0;
}
.post-type-archive-product h3,
.tax-product_category h3,
.tax-type_category h3,
.tax-use_category h3 {
  padding: 0;
  margin: 70px 0;
  background: transparent;
  color: #000;
  font-size: 2.5rem;
  text-align: left;
}
@media screen and (min-width: 769px) {
  .product-list .col3 {
    width: calc(((100% - 60px * 2) / 3) - 0.1px);
    margin: 0 60px 40px 0;
  }
  .product-list .col3:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  .product-list .col3 {
    width: calc((100% - 30px) / 2);
    margin: 0 30px 40px 0;
  }
  .product-list .col3:nth-of-type(2n) {
    margin-right: 0;
  }
}
.product-list a {
  position: relative;
  display: block;
  color: #000;
  font-size: 1.25rem;
  text-align: center;
  text-decoration: none;
}
.product-list a.new::before {
  position: absolute;
  top: -30px;
  right: 0;
  display: block;
  content: 'new';
  width: 3.2em;
  line-height: 1.6em;
  background-color: #b81a35;
  color: #fff;
  font-size: 1rem;
  text-align: center;
  text-transform: uppercase;
}
.product-list a figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: #d6cecb;
  border: solid 3px #9fa0a0;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
.product-list a.order figure {
  background: #fff;
}
.product-list a:hover figure {
  border: solid 3px #b81a35;
}
.product-list a figure img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-height: 100%;
  border-radius: 10px;
}
.product-list h4 {
  margin: 70px auto 50px;
  font-size: 2rem;
}
.product-list .warning .ttl {
  width: 7em;
  margin: 2em auto 1em;
  padding: .25em .8em;
  border: solid 1px #000;
  border-radius: 5px;
  font-size: 1.25rem;
  letter-spacing: 1em;
  text-align: center;
}
.product-list .warning .ttl span {
  color: #f59604;
}
.product-list .message {
  font-size: 1rem;
  text-align: center;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜三木ネツレンの強み！
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-advantage .btn {
  margin: 50px auto 160px;
  text-align: center;
}
.page-advantage .btn a {
  display: block;
  width: 100%;
  max-width: 495px;
  margin: 0 auto;
  padding: 9px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid #ccc 10px;
  color: #000;
  font-size: 1.75rem;
  text-align: center;
  text-decoration: none;
}
.page-advantage .btn.btn-L a {
  max-width: 630px;
}
@media screen and (max-width: 768px) {
  .page-advantage .btn a {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 480px) {
  .page-advantage .btn a {
    font-size: 1rem;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜会社情報 > 企業理念・社是
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-philosophy #shaze p {
  text-align: center;
}
.page-philosophy #shaze p strong {
  font-size: 1.625rem;
  margin: 0 0.5em;
}
@media screen and (max-width: 600px) {
  .page-philosophy #shaze p strong {
    display: block;
    margin: 0;
    line-height: 2em;
    text-align: center;
  }
  .page-philosophy #shaze p br {
    display: none;
  }
}
.page-philosophy #rinen {
  margin-bottom: 30px;
}
.page-philosophy #rinen h3 {
  margin-top: 90px;
}
.page-philosophy #rinen .img {
  margin: 45px 0;
  text-align: center;
}
.page-philosophy #rinen .left {
  float: left;
  width: 440px;
  margin: 0;
  padding: 0 45px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #006cb8;
  font-size: 1.625rem;
}
@media screen and (max-width: 1200px) {
  .page-philosophy #rinen .left {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  .page-philosophy #rinen .left {
    font-size: 1.125rem;
  }
}
.page-philosophy #rinen .right {
  float: right;
  width: calc(100% - 440px);
  margin: 0;
}
@media screen and (max-width: 1200px) {
  .page-philosophy #rinen .right {
    float: none;
    width: 560px;
    max-width: 100%;
    margin: 1em auto;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜会社情報 > 会社概要・沿革・事業所
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-profile #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-profile #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-profile table.table_type1 {
  table-layout: fixed;
}
.page-profile table.table_type1 th {
  width: 215px;
  padding: 20px 0;
}
.page-profile table.table_type1 td {
  padding: 20px 0;
}
@media screen and (max-width: 1000px) {
  .page-profile table.table_type1,
  .page-profile table.table_type1 tbody,
  .page-profile table.table_type1 tr,
  .page-profile table.table_type1 tr th,
  .page-profile table.table_type1 tr td {
    display: block;
  }
}
@media screen and (max-width: 1000px) {
  .page-profile table.table_type1 tr {
    clear: both;
    margin-bottom: 2em;
    border-bottom: dotted 1px #ccc;
    overflow: hidden;
  }
  .page-profile table.table_type1 {
    width: 100%;
    max-width: 768px;
    margin: 0 auto;
  }
  .page-profile table.table_type1 tr th,
  .page-profile table.table_type1 tr:first-of-type th {
    width: 100%;
    max-width: 300px;
    padding: 5px 10px;
    border-top: none;
    border-right: none;
  }
  .page-profile table.table_type1 tr td {
    padding: 20px 10px;
  }
  .page-profile table.table_type1 tr:first-of-type td {
    border-top: none;
  }
  .page-profile table.table_type1 td {
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: none;
  }
  .page-profile table.table_type1 td:first-of-type {
    border: none;
  }
  .page-profile table.table_type1 td:nth-of-type(2) {
    width: calc(100% - 8em - 17em);
  }
}
@media screen and (max-width: 768px) {
  .page-profile table.table_type1 {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .page-profile table.table_type1 tr th,
  .page-profile table.table_type1 tr:first-of-type th {
    max-width: 100%;
  }
  .page-profile table.table_type1 td:first-of-type,
  .page-profile table.table_type1 td:nth-of-type(2),
  .page-profile table.table_type1 td:last-of-type {
    width: 100%;
  }
  .page-profile table.table_type1 td .zip,
  .page-profile table.table_type1 td .addr,
  .page-profile table.table_type1 td .tel,
  .page-profile table.table_type1 td .fax,
  .page-profile table.table_type1 td .ip {
    display: block;
  }
  .page-profile table.table_type1 td.honsha br,
  .page-profile table.table_type1 td.tokyo br {
    display: none;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜会社情報 > 品質保証・災害補償
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-quality #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-quality #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-quality .left_box {
  float: left;
  width: 50%;
  padding-right: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.page-quality .right_box {
  float: right;
  width: 50%;
  padding-left: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .page-quality .left_box,
  .page-quality .right_box {
    float: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}
.page-quality .list_marusuji li {
  margin-bottom: 1em;
}
.page-quality h5 {
  clear: both;
  float: left;
  width: 135px;
  margin: 1em 0;
  padding: 50px 0;
  background-color: #006cb8;
  color: #fff;
  font-size: 1.25rem;
  line-height: 35px;
  text-align: center;
}
.page-quality h5 + p {
  padding-left: 160px;
}
@media screen and (max-width: 1000px) {
  .page-quality h5 {
    width: 100px;
    padding: 35px 0;
    font-size: 1rem;
    line-height: 30px;
  }
  .page-quality h5 + p {
    padding-left: 130px;
  }
}
.page-quality #iso {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}
.page-quality #iso img,
.page-quality #jis img {
  margin-left: 90px;
}
.page-quality #iso strong,
.page-quality #jis strong {
  color: #006cb8;
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .page-quality #iso,
  .page-quality #jis {
    max-width: 550px;
  }
  .page-quality #iso img,
  .page-quality #jis img {
    margin-left: 2em;
  }
}
@media screen and (max-width: 640px) {
  .page-quality #iso p.alignright,
  .page-quality #jis p.alignright {
    text-align: center;
  }
  .page-quality #iso img,
  .page-quality #jis img {
    margin-left: 0;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 768px) {
  .page-quality #iso + div {
    text-align: center
  }
}
.page-quality #jis {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜製造工程の紹介
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-process #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-process #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-process .point {
  max-width: 850px;
  margin: 0 auto 40px;
  font-size: 1.125rem;
  text-align: center;
}
.page-process .point strong {
  color: #004da0;
  font-size: 1.625rem;
}
.page-process #contents ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.page-process #contents ul li {
  position: relative;
  margin: 0 auto 70px;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid 2px #006cb8;
  overflow: hidden;
}
@media screen and (max-width: 1000px) {
  .page-process #contents ul li {
    max-width: 735px;
  }
}
.page-process #contents ul li::before {
  position: absolute;
  top: -10px;
  content: '';
  color: #006cb8;
  font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  font-size: 6.25rem;
  font-style: italic;
  font-weight: bold;
  line-height: 1em;
}
@media screen and (min-width: 1001px) and (max-width: 1200px) {
  .page-process #contents ul li::before {
    font-size: 5.5rem;
  }
}
.page-process #contents ul li:nth-of-type(2n + 1)::before {
  left: -10px;
}
.page-process #contents ul li:nth-of-type(2n)::before {
  right: -10px;
}
.page-process #contents ul li.no01::before { content: '01'; }
.page-process #contents ul li.no02::before { content: '02'; }
.page-process #contents ul li.no03::before { content: '03'; }
.page-process #contents ul li.no04::before { content: '04'; }
.page-process #contents ul li.no05::before { content: '05'; }
.page-process #contents ul li.no06::before { content: '06'; }
.page-process #contents ul li.no07::before { content: '07'; }
.page-process #contents ul li.no08::before { content: '08'; }
.page-process #contents ul li.no09::before { content: '09'; }
.page-process #contents ul li.no10::before { content: '10'; }
.page-process #contents ul li.no11::before { content: '11'; }
.page-process #contents ul li.no12::before { content: '12'; }
.page-process #contents ul li.no13::before { content: '13'; }

.page-process #contents ul li > div {
  float: left;
  width: 365px;
  padding: 110px 50px 0 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (min-width: 1001px) and (max-width: 1200px) {
  .page-process #contents ul li > div {
    padding: 80px 35px 0 35px;
  }
}
.page-process #contents ul li:nth-of-type(2n) > div {
  float: right;
}
@media screen and (max-width: 1000px) {
  .page-process #contents ul li > div,
  .page-process #contents ul li:nth-of-type(2n) > div {
    float: none;
    width: 100%;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 480px) {
  .page-process #contents ul li > div {
    padding: 110px 20px 10px 20px;
  }
}
.page-process #contents ul li.ttl > div {
  padding-top: 150px;
}
@media screen and (min-width: 1001px) and (max-width: 1200px) {
  .page-process #contents ul li.ttl > div {
    padding-top: 120px;
  }
}
@media screen and (max-width: 1000px) {
  .page-process #contents ul li.ttl > div {
    padding-top: 70px;
    padding-bottom: 35px;
  }
}
.page-process #contents ul li h3 {
  margin: 0 0 25px;
  padding: 0 0 20px;
  background-image: none;
  border-bottom: solid 2px #006cb8;
  color: #006cb8;
  text-align: left;
}
@media screen and (min-width: 1001px) and (max-width: 1200px) {
  .page-process #contents ul li h3 {
    margin: 0 0 20px;
    padding: 0 0 15px;
  }
}
.page-process #contents ul li > .img {
  float: right;
  width: calc(100% - 365px);
  margin: 0;
}
.page-process #contents ul li:nth-of-type(2n) > .img {
  float: left;
}
@media screen and (max-width: 1000px) {
  .page-process #contents ul li > .img,
  .page-process #contents ul li:nth-of-type(2n) > .img {
    float: none;
    width: 100%;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜ネツレン指定サービスショップ
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-service_shop #contents h3 {
  margin-top: 50px;
}
.page-service_shop #contents h3:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .page-service_shop #contents h3:first-of-type {
    margin-top: 50px;
  }
}
.page-service_shop #contents  p.ttl {
  font-size: 1.5rem;
  text-align: center;
}
#shop-map {
  position: relative;
}
#shop-map .shop-map_img {
  margin: 40px 0 100px;
  padding-top: 35px;
}
@media screen and (max-width: 768px) {
  #shop-map .shop-map_img {
    margin-left: -20px;
    margin-right: -20px;
    padding-top: 120px;
  }
}
@media screen and (max-width: 600px) {
  #shop-map .shop-map_img {
    margin: 2em -20px;
    padding-top: 0;
  }
}
#shop-map > ul {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  margin: 0;
  padding-left: 0;
}
@media screen and (max-width: 768px) {
  #shop-map > ul {
    width: 60%;
  }
}
@media screen and (max-width: 600px) {
  #shop-map > ul {
    position: static;
    width: 100%;
  }
}
#shop-map > ul > li {
  position: relative;
  list-style-type: none;
  margin: 0 0 2em;
  font-size: 1.25rem;
}
@media screen and (max-width: 1200px) {
  #shop-map > ul > li {
    font-size: 1rem;
  }
}

.page-service_shop ul.anchor {
  margin: 50px auto;
  padding: 0;
  text-align: center;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .page-service_shop ul.anchor {
    max-width: 450px;
  }
}
.page-service_shop ul.anchor li {
  list-style-type: none;
  display: inline-block;
  margin: 0 0 10px;
  padding: 0 1.2em 0 1em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-right: solid 1px #006cb8;
}
@media screen and (max-width: 768px) {
  .page-service_shop ul.anchor li {
    list-style-type: none;
    display: block;
    float: left;
    width: 33.333%;
    border-right: none;
  }
}
@media screen and (max-width: 480px) {
  .page-service_shop ul.anchor li {
    width: 50%;
  }
}
.page-service_shop ul.anchor li:last-of-type {
  border-right: none;
}
.page-service_shop ul.anchor li a {
  color: #006cb8;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .page-service_shop ul.anchor li a::before {
    content: '\f105';
    padding-right: 10px;
    font-family: "Font Awesome 5 Solid", "FontAwesome";
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
.page-service_shop ul.anchor li a:hover {
  text-decoration: underline;
}

.page-service_shop table.table_type1 {
  table-layout: fixed;
}
.page-service_shop table.table_type1 th {
  width: 300px;
}
.page-service_shop table.table_type1 td:first-of-type {
  width: 8em;
}
.page-service_shop table.table_type1 td:last-of-type {
  width: 17em;
}
@media screen and (max-width: 1000px) {
  .page-service_shop table.table_type1,
  .page-service_shop table.table_type1 tbody,
  .page-service_shop table.table_type1 tr,
  .page-service_shop table.table_type1 tr th,
  .page-service_shop table.table_type1 tr td {
    display: block;
  }
}
@media screen and (max-width: 1000px) {
  .page-service_shop table.table_type1 tr {
    clear: both;
    margin-bottom: 2em;
    border-bottom: dotted 1px #ccc;
    overflow: hidden;
  }
  .page-service_shop table.table_type1 {
    width: 100%;
    max-width: 768px;
    margin: 0 auto;
  }
  .page-service_shop table.table_type1 tr th,
  .page-service_shop table.table_type1 tr:first-of-type th {
    width: 100%;
    max-width: 300px;
    padding: 5px 10px;
    border-top: none;
    border-right: none;
  }
  .page-service_shop table.table_type1 tr td {
    padding: 5px 10px;
  }
  .page-service_shop table.table_type1 tr:first-of-type td {
    border-top: none;
  }
  .page-service_shop table.table_type1 td {
    float: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: none;
  }
  .page-service_shop table.table_type1 td:first-of-type {
    border: none;
  }
  .page-service_shop table.table_type1 td:nth-of-type(2) {
    width: calc(100% - 8em - 17em);
  }
}
@media screen and (max-width: 768px) {
  .page-service_shop table.table_type1 {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .page-service_shop table.table_type1 tr th,
  .page-service_shop table.table_type1 tr:first-of-type th {
    max-width: 100%;
  }
  .page-service_shop table.table_type1 td:first-of-type,
  .page-service_shop table.table_type1 td:nth-of-type(2),
  .page-service_shop table.table_type1 td:last-of-type {
    width: 100%;
  }
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜製品情報
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜製品カタログ・取説ダウンロード
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-catalog #contents,
.page-document #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-catalog #contents,
  .page-document #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .page-catalog #contents,
  .page-document #contents {
    padding-top: 50px;
  }
}
ul.catalog {
  float: left;
  width: 33.333%;
  margin: 0 0 70px;
  padding: 0 25px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 1000px) {
  ul.catalog {
    width: 50%;
  }
}
@media screen and (max-width: 680px) {
  ul.catalog {
    width: 100%;
    padding: 0;
  }
}
ul.catalog > li {
  list-style-type: none;
  width: 100%;
  max-width: 265px;
  margin: 0 auto 10px;
  text-align: center;
}
ul.catalog > li.img {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:horizontal;
  -webkit-box-direction:normal;
  -ms-flex-direction:row;
  flex-direction:row;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  height: 375px;
}
ul.catalog > li.img img {
  border: solid 1px #777;
}
@media screen and (max-width: 680px) {
  ul.catalog > li.img {
    height: auto;
  }
}
ul.catalog > li.ttl {
  font-size: 1.125rem;
}
ul.catalog > li.dl-btn a {
  display: block;
  max-width: 235px;
  margin: 0 auto;
  padding: 3.5px 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #006cb8;
  border-radius: 5px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.15s;
  transition: all 0.15s;
}
@media screen and (max-width: 768px) {
  ul.catalog > li.dl-btn a {
    max-width: 100%;
    padding: 10px 5px;
  }
}

ul.catalog > li.dl-btn a:hover {
  opacity: .6;
}
ul.catalog > li.dl-btn a::before {
  content: '\f101';
  color: #fff;
  margin: 0 5px 0 0;
  font-family: "Font Awesome 5 Solid", "FontAwesome";
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜お問合せ・見積依頼フォーム
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-inquiry #contents,
.page-inquiry-child #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-inquiry #contents,
  .page-inquiry-child #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-inquiry #contents .notes {
  border: solid 2px #006cb8;
  padding: 35px 50px;
}
@media screen and (max-width: 768px) {
  .page-inquiry #contents .notes {
    padding: 35px 20px;
  }
}
.page-inquiry-child .captcha-txt {
  display: none;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜プライバシーポリシー
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜採用情報 > 新卒募集
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-graduates #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-graduates #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-graduates .table_default {
  margin-bottom: 100px;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* @ ページ｜採用情報 > 中途募集
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.page-career #contents {
  padding-left: 50px;
  padding-right: 50px;
}
@media screen and (max-width: 1000px) {
  .page-career #contents {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-career .table_default {
  margin-bottom: 100px;
}
