@charset "UTF-8";
/*################################################################

下層ページレイアウト設定

################################################################*/
#recruit table {
  font-size: 3.7333333333vw;
  border-collapse: collapse;
  border: 0.2666666667vw solid #ccc;
  width: 100%;
}
#recruit table th,
#recruit table td {
  border: 0.2666666667vw solid #ccc;
}
#recruit table th {
  padding: 2vw 0.6666666667vw;
  background-color: #eeeeee;
  width: 29.3333333333vw;
}
#recruit table td {
  padding: 2vw;
}

#contact .form button,
#contact .form [type=button],
#contact .form [type=reset],
#contact .form [type=submit], #single-item .form button,
#single-item .form [type=button],
#single-item .form [type=reset],
#single-item .form [type=submit] {
  width: 48.4vw;
  font-weight: bold;
  font-size: 3.7333333333vw;
  background-image: url(../img/common/icon-arrow03-right.png);
  background-repeat: no-repeat;
  background-position: right 3.3333333333vw center;
  background-color: #004d86;
  background-size: 1.8666666667vw auto;
  color: #fff;
  padding: 4vw;
  display: inline-block;
  text-align: left;
}
#contact .form button:link,
#contact .form [type=button]:link,
#contact .form [type=reset]:link,
#contact .form [type=submit]:link, #single-item .form button:link,
#single-item .form [type=button]:link,
#single-item .form [type=reset]:link,
#single-item .form [type=submit]:link, #contact .form button:visited,
#contact .form [type=button]:visited,
#contact .form [type=reset]:visited,
#contact .form [type=submit]:visited, #single-item .form button:visited,
#single-item .form [type=button]:visited,
#single-item .form [type=reset]:visited,
#single-item .form [type=submit]:visited {
  color: #fff;
}
#contact .form button:hover,
#contact .form [type=button]:hover,
#contact .form [type=reset]:hover,
#contact .form [type=submit]:hover, #single-item .form button:hover,
#single-item .form [type=button]:hover,
#single-item .form [type=reset]:hover,
#single-item .form [type=submit]:hover {
  text-decoration: none;
  opacity: 0.7;
}

/*@import "mixin/component";*/
/*-----------------------------------------------------------------
共通設定
-----------------------------------------------------------------*/
.container {
  padding-bottom: 60px;
}

/*-----------------------------------------------------------------
会社情報
-----------------------------------------------------------------*/
#company #company_information h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 1px solid #ccc;
  font-size: 3.7333333333vw;
  padding-bottom: 1.6vw;
  margin-bottom: 4vw;
}
#company .table01 {
  margin-bottom: 4vw;
}
#company .buttons {
  text-align: center;
  margin-bottom: 4vw;
}
#company .buttons li {
  display: inline-block;
}
#company .buttons li + li {
  margin-top: 2.5333333333vw;
}
#company .buttons .btn01 {
  margin-left: 1.3333333333vw;
  margin-right: 1.3333333333vw;
}
#company #access {
  background-color: #e4f0f9;
}
#company #access h3 {
  text-align: center;
  font-size: 3.7333333333vw;
  font-weight: bold;
  color: #004d86;
  padding: 8vw 0;
}
#company #access p {
  font-size: 3.7333333333vw;
  margin-bottom: 5.3333333333vw;
}
#company #access .map {
  text-align: center;
  margin-bottom: 4vw;
}
#company #access .map .image {
  margin-bottom: 4vw;
}
#company #access h4 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 2.6666666667vw;
}
#company #access table {
  margin-bottom: 4vw;
}
#company #access table.table03 th:nth-of-type(2) {
  width: 16.2666666667vw;
}

#privacy p {
  margin-bottom: 6vw;
  font-size: 3.7333333333vw;
}
#privacy h4 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.1333333333vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 2vw;
  padding-bottom: 1.3333333333vw;
}

#sitepolicy p {
  margin-bottom: 6vw;
  font-size: 3.7333333333vw;
}
#sitepolicy h4 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 2vw;
  padding-bottom: 1.3333333333vw;
}

#trade p {
  margin-bottom: 4vw;
  font-size: 3.7333333333vw;
}
#trade table {
  margin-bottom: 4vw;
}

#results p {
  margin-bottom: 30px;
  font-size: 3.7333333333vw;
  text-align: center;
}
#results h4 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  padding-bottom: 1.3333333333vw;
  margin-bottom: 4vw;
}
#results table.table01 {
  margin-bottom: 8vw;
}
#results table.table01.collaboration th {
  width: 29.3333333333vw;
}

#sitemap p {
  margin-bottom: 4vw;
  font-size: 3.7333333333vw;
}
#sitemap h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 2vw;
  padding-bottom: 1.3333333333vw;
}
#sitemap ul {
  margin-top: 1.3333333333vw;
}
#sitemap ul a {
  color: #0068b6;
  font-size: 3.7333333333vw;
}
#sitemap ul li {
  margin-top: 0.6666666667vw;
}
#sitemap ul li:before {
  content: "・ ";
}
#sitemap ul li.has-children {
  margin-top: 8vw;
  margin-bottom: 8vw;
}
#sitemap ul li ul li {
  display: block;
  padding-left: 1.3333333333vw;
}
#sitemap ul li ul li:before {
  content: "└ ";
}

#recruit .main-image {
  background: url(../img/recruit/recruit-image-bg.png) left top repeat-x;
  position: relative;
  padding: 10vw 2.6666666667vw;
  background-color: #f6f6f6;
  margin-bottom: 11.3333333333vw;
}
#recruit .main-image:before {
  content: "";
  display: block;
  background: url(../img/recruit/recruit-image-head.png) left top no-repeat;
  background-size: contain;
  width: 100%;
  height: 6.6666666667vw;
  position: absolute;
  top: 0;
  left: 0;
}
#recruit .main-image:after {
  content: "";
  display: block;
  background: url(../img/recruit/recruit-image.png) left top no-repeat;
  background-size: contain;
  width: 55.6vw;
  height: 35.0666666667vw;
  position: absolute;
  top: 0;
  right: 0;
}
#recruit .main-image .conetnts {
  z-index: 100;
}
#recruit .main-image .title {
  font-size: 5.3333333333vw;
  width: 50.6666666667vw;
  margin-bottom: 8.6666666667vw;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: -0.8px;
  padding-left: 2.6666666667vw;
}
#recruit p {
  font-size: 3.7333333333vw;
}
#recruit h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 4vw;
}
#recruit table {
  margin-bottom: 4vw;
}

#error-404 {
  padding-top: 80px;
}
#error-404 h3 {
  text-align: center;
  margin-bottom: 30px;
}
#error-404 p {
  font-size: 1.4rem;
  text-align: center;
}
#error-404 .btns {
  padding-top: 60px;
  text-align: center;
}

#link h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 2vw;
}
#link .links ul {
  margin-bottom: 6vw;
}
#link .links li:before {
  content: "・ ";
}
#link .links li + li {
  margin-top: 1.3333333333vw;
}
#link .links li a {
  color: #0068b6;
  font-size: 3.7333333333vw;
}
#link p {
  font-size: 3.7333333333vw;
  text-align: center;
}
#link .btns {
  padding-top: 8vw;
  text-align: center;
}

#product .result_bn {
  text-align: center;
}
#product .items {
  margin-top: 10.6666666667vw;
  display: flex;
  flex-wrap: wrap;
}
#product .items .item {
  padding: 0 2vw;
  width: 50%;
  text-align: center;
  border: 0.2666666667vw solid #eeeeee;
  height: 53.3333333333vw;
}
#product .items .item .img {
  padding-top: 1.3333333333vw;
  text-align: center;
  width: 28vw;
  height: 28vw;
  margin: 0 auto;
}
#product .items .item .img a {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  max-height: 100%;
}
#product .items .item .img a img {
  width: 100%;
  height: auto;
}
#product .items .item .title {
  font-size: 3.7333333333vw;
}
#product .items .item .description {
  font-size: 3.7333333333vw;
  margin-top: 1.3333333333vw;
  height: 9.3333333333vw;
  letter-spacing: -0.0746666667vw;
  line-height: 1.2;
}
#product .items .item .pdf {
  text-align: left;
  border-top: 0.2666666667vw solid #eee;
  font-size: 3.2vw;
  padding-top: 1.0666666667vw;
}
#product .items .item .pdf a {
  background-image: url(../img/common/icon-pdf.png);
  background-repeat: no-repeat;
  background-position: left 1.0666666667vw;
  background-size: 3.7333333333vw auto;
  padding-left: 4.8vw;
  height: 6.1333333333vw;
  line-height: 6.1333333333vw;
  display: inline-block;
}
#product .get_adobe {
  margin: 8.6666666667vw auto 0;
  width: 80.6666666667vw;
}
#product .get_adobe .inner .banner {
  display: flex;
  justify-content: center;
  text-align: center;
  vertical-align: middle;
}
#product .get_adobe .inner a {
  display: inline-block;
}
#product .get_adobe .inner .text {
  font-size: 2.6666666667vw;
  text-align: left;
  margin-top: 2.1333333333vw;
}
#product .order-personal {
  margin-top: 8vw;
  text-align: center;
}
#product #catalog {
  background-color: #e4f0f9;
}
#product #catalog .container {
  padding-top: 52vw;
  background: url(../img/product/order-personal-bg.png) center 5.3333333333vw no-repeat;
  background-size: 69.3333333333vw auto;
}
#product #catalog .title {
  display: grid;
  justify-content: center;
}
#product #catalog .title img {
  width: 86.6666666667vw;
}
#product #catalog .text {
  margin-top: 4.6666666667vw;
  font-size: 3.4666666667vw;
  color: #666666;
  text-align: center;
}
#product #catalog .link {
  margin-top: 5.8666666667vw;
}
#product #catalog .link .btn01 {
  width: 100%;
  background-position: 370px center;
}
#product #catalog .tel {
  font-weight: bold;
  display: flex;
  flex-direction: column;
  margin-top: 2.6666666667vw;
}
#product #catalog .tel .number {
  font-size: 10.2666666667vw;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
}
#product #catalog .tel .number:before {
  content: "";
  display: block;
  background-image: url(../img/common/icon-tel.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
  width: 9.7333333333vw;
  height: 9.7333333333vw;
  margin-right: 2.1333333333vw;
  margin-top: 0.6666666667vw;
}
#product #catalog .tel .worktime {
  margin-top: 1.3333333333vw;
  display: block;
  text-align: center;
  font-size: 4vw;
}

#search-items,
#taxonomy-items {
  display: flex;
  flex-direction: column-reverse;
}
#search-items #sidebar,
#taxonomy-items #sidebar {
  width: 100%;
  padding: 0 2.6666666667vw 14.6666666667vw;
  margin-top: 21.3333333333vw;
}
#search-items h3,
#taxonomy-items h3 {
  font-weight: bold;
  color: #004d86;
  font-size: 3.7333333333vw;
  letter-spacing: -0.56px;
  padding-bottom: 1.3333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
}
#search-items .notfound,
#taxonomy-items .notfound {
  font-size: 3.7333333333vw;
}
#search-items .item_category,
#taxonomy-items .item_category {
  padding-top: 1.3333333333vw;
}
#search-items .item_category .parents > li,
#taxonomy-items .item_category .parents > li {
  margin-top: 1.3333333333vw;
  background: url(../img/common/icon-plus.png) left 6px no-repeat;
  padding-left: 4.6666666667vw;
}
#search-items .item_category ul,
#taxonomy-items .item_category ul {
  margin-top: 1.3333333333vw;
}
#search-items .item_category ul li:before,
#taxonomy-items .item_category ul li:before {
  display: none;
}
#search-items .item_category ul li > a,
#taxonomy-items .item_category ul li > a {
  color: #333333;
  font-size: 3.7333333333vw;
}
#search-items .item_category ul li .child,
#taxonomy-items .item_category ul li .child {
  display: none;
}
#search-items .item_category ul li .child li:before,
#taxonomy-items .item_category ul li .child li:before {
  display: none;
}
#search-items #main,
#taxonomy-items #main {
  width: 100%;
  padding: 0 2.6666666667vw;
}
#search-items #main .inner,
#taxonomy-items #main .inner {
  overflow: hidden;
}
#search-items #main .category_list,
#taxonomy-items #main .category_list {
  margin-top: 4vw;
  display: flex;
  flex-wrap: wrap;
  gap: 1.3333333333vw;
}
#search-items #main .category_list li,
#taxonomy-items #main .category_list li {
  display: inline-block;
}
#search-items #main .category_list a,
#taxonomy-items #main .category_list a {
  display: inline-block;
  font-size: 2.6666666667vw;
  color: #333333;
  background-color: #eeeeee;
  border-radius: 0.8vw;
  padding: 0.8vw 1.3333333333vw;
}
#search-items #main .items,
#taxonomy-items #main .items {
  margin-top: 4vw;
  display: flex;
  flex-wrap: wrap;
  gap: 2.6666666667vw;
}
#search-items #main .items .item,
#taxonomy-items #main .items .item {
  padding: 2.6666666667vw;
  width: 46vw;
  text-align: center;
  border: 0.2666666667vw solid #eeeeee;
  height: 58.9333333333vw;
  position: relative;
}
#search-items #main .items .item .img,
#taxonomy-items #main .items .item .img {
  text-align: center;
  width: 40.5333333333vw;
  height: 30.5333333333vw;
  margin: 0 auto;
}
#search-items #main .items .item .img a,
#taxonomy-items #main .items .item .img a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40.5333333333vw;
  height: 30.5333333333vw;
}
#search-items #main .items .item .img a img,
#taxonomy-items #main .items .item .img a img {
  max-width: 100%;
  max-height: 100%;
}
#search-items #main .items .item .title,
#taxonomy-items #main .items .item .title {
  margin-top: 1.3333333333vw;
  font-size: 3.2vw;
  line-height: 1.4;
}
#search-items #main .items .item .description,
#taxonomy-items #main .items .item .description {
  font-size: 3.7333333333vw;
  line-height: 1.4;
}
#search-items #main .items .item .price,
#taxonomy-items #main .items .item .price {
  color: #e60012;
  font-size: 3.7333333333vw;
  font-weight: bold;
}
#search-items #main .items .item .price .label,
#taxonomy-items #main .items .item .price .label {
  font-size: 2.6666666667vw;
  display: inline-block;
  vertical-align: text-bottom;
}
#search-items #main .items .item .spec:after,
#taxonomy-items #main .items .item .spec:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
#search-items #main .items .item .spec,
#taxonomy-items #main .items .item .spec {
  position: absolute;
  bottom: 0;
  left: 2vw;
  width: 42vw;
  text-align: left;
  border-top: 0.2666666667vw solid #eeeeee;
  height: 6.8vw;
  line-height: 6.8vw;
}
#search-items #main .items .item .spec .spec_title,
#taxonomy-items #main .items .item .spec .spec_title {
  color: #666666;
  font-size: 2.9333333333vw;
  vertical-align: middle;
  padding-right: 2.6666666667vw;
}
#search-items #main .items .item .spec .pdf,
#search-items #main .items .item .spec .excel,
#search-items #main .items .item .spec .word,
#taxonomy-items #main .items .item .spec .pdf,
#taxonomy-items #main .items .item .spec .excel,
#taxonomy-items #main .items .item .spec .word {
  padding-right: 2.6666666667vw;
}
#search-items #main .items .item .spec .pdf img,
#search-items #main .items .item .spec .excel img,
#search-items #main .items .item .spec .word img,
#taxonomy-items #main .items .item .spec .pdf img,
#taxonomy-items #main .items .item .spec .excel img,
#taxonomy-items #main .items .item .spec .word img {
  vertical-align: middle;
  width: 3.4666666667vw;
}
#search-items .tablenav,
#taxonomy-items .tablenav {
  margin: 0 auto;
  text-align: left;
  padding-top: 8vw;
}
#search-items .tablenav a.page-numbers,
#taxonomy-items .tablenav a.page-numbers {
  color: #0068b6;
  background: #eeeeee;
}
#search-items .tablenav a.page-numbers,
#search-items .tablenav .current,
#taxonomy-items .tablenav a.page-numbers,
#taxonomy-items .tablenav .current {
  text-align: center;
  width: 9.0666666667vw;
  height: 9.0666666667vw;
  line-height: 9.0666666667vw;
  display: inline-block;
  text-decoration: none;
  font-size: 3.2vw;
  color: #333333;
}
#search-items .tablenav a.page-numbers:hover,
#search-items .tablenav .current:hover,
#taxonomy-items .tablenav a.page-numbers:hover,
#taxonomy-items .tablenav .current:hover {
  color: #fff;
  background: #0068b6;
}
#search-items .tablenav .current,
#taxonomy-items .tablenav .current {
  color: #fff;
  background: #0068b6;
  font-weight: bold;
}

#single-item h3 {
  margin: 6.6666666667vw 2.6666666667vw 0;
  font-weight: bold;
  color: #333333;
  font-size: 3.7333333333vw;
}
#single-item .preview {
  margin-top: 2.6666666667vw;
  text-align: left;
  margin-top: 6.4vw;
  padding-left: 2.6666666667vw;
  font-size: 3.2vw;
}
#single-item .description {
  margin-top: 4.4vw;
}
#single-item .description .left {
  margin: 0 8.6666666667vw;
}
#single-item .description .right {
  width: 100%;
}
#single-item .images .main-image {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
#single-item .images .main-image img {
  width: 100%;
  max-width: 100%;
}
#single-item .images .thumbnails {
  margin-top: 4vw;
}
#single-item .images .thumbnails ul:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
#single-item .images .thumbnails ul li {
  float: left;
  width: 20%;
  margin-left: 4vw;
}
#single-item .images .thumbnails ul li:first-of-type {
  margin-left: 0;
}
#single-item .images .thumbnails ul li img {
  width: 100%;
  height: auto;
}
#single-item .spec:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
#single-item .spec {
  text-align: left;
  width: 77.3333333333vw;
  height: 14.1333333333vw;
  margin: 7.3333333333vw auto 0;
  line-height: 14.1333333333vw;
  background-color: #e4f0f9;
}
#single-item .spec .spec_title {
  color: #666666;
  font-size: 3.7333333333vw;
  font-weight: bold;
  vertical-align: middle;
  padding-left: 4vw;
  padding-right: 2.6666666667vw;
}
#single-item .spec .pdf,
#single-item .spec .excel,
#single-item .spec .word {
  padding-right: 2.6666666667vw;
}
#single-item .spec .pdf img,
#single-item .spec .excel img,
#single-item .spec .word img {
  vertical-align: middle;
  width: auto;
  height: 8.6666666667vw;
}
#single-item .info {
  margin: 2.6666666667vw 2.6666666667vw;
  padding-bottom: 1.3333333333vw;
  border-bottom: 0.2666666667vw solid #cccccc;
  font-size: 2.6666666667vw;
}
#single-item .info .itemcode {
  color: #e60012;
  padding-right: 2.6666666667vw;
}
#single-item .info .modelnumber {
  color: #009944;
  padding-right: 2.6666666667vw;
}
#single-item .info .stock {
  color: #eb6100;
}
#single-item .price {
  margin: 0 2.6666666667vw;
}
#single-item .price .label {
  color: #333333;
  font-size: 3.2vw;
  font-weight: normal;
}
#single-item .price .list_price {
  color: #e60012;
  font-weight: bold;
  font-size: 4.5333333333vw;
}
#single-item .price .unit_price {
  color: #e60012;
  font-weight: bold;
  font-size: 4.5333333333vw;
}
#single-item .contents {
  margin: 5.3333333333vw 2.6666666667vw 0;
  font-size: 3.7333333333vw;
}
#single-item .contents .alignleft {
  float: left;
}
#single-item .contents .aligncenter {
  text-align: center;
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#single-item .contents .alignright {
  float: right;
}
#single-item .contents img {
  width: auto;
  height: auto;
}
#single-item .contents img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
#single-item .contents img.alignright {
  padding: 4px;
  margin: 0 0 2px 7px;
  display: inline;
}
#single-item .contents img.alignleft {
  padding: 4px;
  margin: 0 7px 2px 0;
  display: inline;
}
#single-item .contents img {
  width: auto;
  max-width: 100%;
  height: auto;
}
#single-item .contents figure {
  margin: 0 0 2vw 0;
}
#single-item .contents ol,
#single-item .contents ul {
  margin-bottom: 4vw;
  padding-left: 1.5em;
}
#single-item .contents ol {
  list-style: decimal;
}
#single-item .contents ul {
  list-style: circle;
}
#single-item .contents p {
  font-size: 3.7333333333vw;
  margin-bottom: 3.3333333333vw;
  line-height: 1.57;
}
#single-item .contents p img.alignright {
  text-align: right;
}
#single-item .contents h1 {
  color: #004d86;
  padding-top: 0.8vw;
  padding-bottom: 2.6666666667vw;
  font-size: 4.5333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
  font-weight: bold;
  margin: 4vw 0;
}
#single-item .contents h2 {
  padding-left: 1.6vw;
  padding-top: 1.6vw;
  padding-bottom: 1.6vw;
  vertical-align: middle;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: vww(28);
  background: #e4f0f9;
  border-radius: 0.2666666667vw;
  font-weight: bold;
}
#single-item .contents h3 {
  background: #fff;
  padding-left: 4vw;
  padding-bottom: 1.6vw;
  display: block;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  border-bottom: 0.2666666667vw solid #ccc;
  font-weight: bold;
}
#single-item .contents h3:before {
  position: absolute;
  left: 0;
  top: 0%;
  content: "";
  display: block;
  width: 0.6666666667vw;
  transform: translateY(0%);
  height: calc(100% - 1.6vw);
  background-color: #004d86;
}
#single-item .contents h4 {
  background: #fff;
  padding-left: 4vw;
  display: block;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.7333333333vw;
  font-weight: bold;
}
#single-item .contents h4:before {
  position: absolute;
  left: 0;
  top: 0%;
  content: "";
  display: block;
  width: 0.6666666667vw;
  transform: translateY(0%);
  height: calc(100% - 0vw);
  background-color: #004d86;
}
#single-item .contents h5 {
  padding-left: 2.6666666667vw;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.2vw;
  padding-right: 3.7333333333vw;
  background-image: url(../img/common/icon-dot.png);
  background-size: 2.9333333333vw;
  background-position: left center;
  background-repeat: no-repeat;
  font-weight: bold;
}
#single-item .contents h6 {
  background: #fff;
  -js-display: flex;
  display: flex;
  display: -webkit-flex;
  line-height: 1;
  vertical-align: middle;
  align-items: center;
  position: relative;
  margin: 2.6666666667vw 0;
  font-size: 3.2vw;
  font-weight: bold;
}
#single-item .contents a {
  color: #0044cc;
  text-decoration: underline;
}
#single-item .contents a:hover {
  color: #0044cc;
  text-decoration: none;
}
#single-item .contents table {
  max-width: 100%;
  table-layout: fixed;
  border-top: 0.2666666667vw solid #c2c2c2;
  border-right: 0.2666666667vw solid #c2c2c2;
  border-collapse: collapse;
}
#single-item .contents table th {
  padding: 1.3333333333vw;
  min-width: 20vw;
  text-align: center;
  background: #f3f3f3;
  border-left: 0.2666666667vw solid #c2c2c2;
  border-bottom: 0.2666666667vw solid #c2c2c2;
}
#single-item .contents table td {
  padding: 1.3333333333vw;
  min-width: 20vw;
  text-align: center;
  border-left: 0.2666666667vw solid #c2c2c2;
  border-bottom: 0.2666666667vw solid #c2c2c2;
}
#single-item .contents em {
  font-style: italic;
}
#single-item .supplement {
  font-size: 3.7333333333vw;
  margin-top: 6.6666666667vw;
}
#single-item .img_supplement {
  margin-top: 6.6666666667vw;
}
#single-item .img_supplement table th,
#single-item .img_supplement table td {
  display: block;
  padding: 1.3333333333vw;
}
#single-item .img_supplement table th {
  width: 100%;
}
#single-item .img_supplement table th img {
  max-width: 100%;
}
#single-item .img_supplement table td {
  font-size: 3.7333333333vw;
}
#single-item .movies .movie {
  display: inline-block;
}
#single-item .recommend {
  border-top: 0.2666666667vw solid #cccccc;
  border-bottom: 0.2666666667vw solid #cccccc;
  margin: 0 2.6666666667vw;
  padding-top: 3.3333333333vw;
}
#single-item .recommend h4 {
  font-size: 3.7333333333vw;
  font-weight: bold;
}
#single-item .recommend .inner {
  margin-top: 8vw;
  display: flex;
  flex-wrap: wrap;
  gap: 2.6666666667vw;
  padding-bottom: 10.6666666667vw;
}
#single-item .recommend .item {
  width: 46vw;
  padding: 2vw 2vw 0vw;
  border: 1px solid #eeeeee;
}
#single-item .recommend .item .img {
  width: 40.4vw;
  height: 30.6666666667vw;
  margin: 0 auto;
}
#single-item .recommend .item .img a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40.4vw;
  height: 30.6666666667vw;
}
#single-item .recommend .item .img a img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
#single-item .recommend .item .name a {
  font-size: 3.2vw;
  color: #0068b6;
}
#single-item .recommend .item .price {
  text-align: center;
  color: #e60012;
  font-size: 3.7333333333vw;
  font-weight: bold;
}
#single-item .recommend .item .price .label {
  color: #e60012;
  font-size: 2.6666666667vw;
  display: inline-block;
  vertical-align: text-bottom;
}
#single-item .recommend .item .tags {
  border-top: 0.2666666667vw solid #eeeeee;
  margin-top: 1.3333333333vw;
}
#single-item .recommend .item .tags a {
  height: 6.6666666667vw;
  line-height: 6.6666666667vw;
  display: inline-block;
  width: 100%;
  background: url(../img/common/icon-tag.png) left center no-repeat;
  background-size: 3.3333333333vw auto;
  padding-left: 4vw;
  color: #666666;
  font-size: 2.9333333333vw;
}
#single-item .additional {
  margin: 10.6666666667vw 2.6666666667vw 0;
  padding-bottom: 22.6666666667vw;
}
#single-item .additional table {
  border: 0.2666666667vw solid #cccccc;
  border-collapse: collapse;
  margin: 0 auto;
  font-size: 3.7333333333vw;
  letter-spacing: -0.0746666667vw;
}
#single-item .additional table th,
#single-item .additional table td {
  border: 0.2666666667vw solid #cccccc;
  padding: 2.6666666667vw;
}
#single-item .additional table th {
  width: 29.3333333333vw;
  background-color: #eeeeee;
  font-weight: bold;
}
#single-item .form {
  width: 100%;
  padding: 0 5.3333333333vw 10.6666666667vw;
  margin: 0 auto;
}
#single-item .form h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  padding-bottom: 1.3333333333vw;
}
#single-item .form .caution {
  margin-top: 4vw;
  color: #e60012;
}
#single-item .form table {
  font-size: 3.7333333333vw;
  border-collapse: collapse;
  border: 0.2666666667vw solid #ccc;
  border-width: 0 0.2666666667vw 0.2666666667vw 0.2666666667vw;
  width: 100%;
  display: block;
  margin-bottom: 4vw;
}
#single-item .form table tbody {
  display: block;
}
#single-item .form table tr {
  display: block;
}
#single-item .form table th,
#single-item .form table td {
  border-top: 0.2666666667vw solid #ccc;
  display: block;
  width: 100%;
}
#single-item .form table th {
  padding: 2vw 1.3333333333vw;
  background-color: #eeeeee;
}
#single-item .form table td {
  padding: 2vw;
}
#single-item .form table {
  margin-top: 6.6666666667vw;
}
#single-item .form table p {
  text-align: left;
}
#single-item .form table th {
  text-align: left;
  position: relative;
}
#single-item .form table th .req {
  position: absolute;
  top: 50%;
  right: 2.6666666667vw;
  transform: translateY(-50%);
  color: #fff;
  background: #e60012;
  width: 9.8666666667vw;
  height: 4vw;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.6666666667vw;
  text-align: center;
}
#single-item .form table [type=file] {
  margin-bottom: 2.6666666667vw;
}
#single-item .form table .address01 {
  margin-top: 1.3333333333vw;
}
#single-item .form .wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 2.1333333333vw;
}
#single-item .form .wpcf7-radio .wpcf7-list-item {
  margin-left: 0;
}
#single-item .form [type=email] {
  width: 100%;
}
#single-item .form [name=tel] {
  width: 100%;
}
#single-item .form .privacy {
  margin-top: 1.3333333333vw;
}
#single-item .form button,
#single-item .form [type=button],
#single-item .form [type=reset],
#single-item .form [type=submit] {
  text-align: center;
}
#single-item .form [type=submit]:disabled {
  opacity: 0.5;
}
#single-item .form [readonly=readonly] {
  background: #eeeeee;
}
#single-item .form .submit_btn {
  text-align: center;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 2.6666666667vw;
}
#single-item .form textarea {
  width: 100%;
}
#single-item .form .category_title {
  margin: 0;
}
#single-item .form form {
  margin-bottom: 5.3333333333vw;
}
#single-item .form .warn {
  margin-top: 2.6666666667vw;
  font-size: 3.7333333333vw;
  margin-bottom: 10px;
}
#single-item .form .warn h4 {
  font-weight: bold;
}
#single-item .form .warn p {
  margin-bottom: 20px;
}
#single-item .form .trade_info {
  font-size: 3.7333333333vw;
  margin-bottom: 20px;
}
#single-item .form .trade_info li {
  margin-bottom: 10px;
  background-image: url(../img/common/icon-arrow03-right-blue.png);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 14px;
}
#single-item .form #table_autoinput {
  border: 0;
  width: 100%;
}
#single-item .form #table_autoinput th,
#single-item .form #table_autoinput td {
  border: 0;
}
#single-item .form #table_autoinput th {
  background: #fff;
}
#single-item .form #table_autoinput td input {
  width: 100%;
}
#single-item .ssl {
  padding: 14px 20px;
  background-color: #fff3f4;
  font-size: 1.6rem;
}

#bcp .main-image {
  max-height: 109.3333333333vw;
  position: relative;
  height: auto;
}
#bcp .main-image .contents {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0 2.6666666667vw;
}
#bcp .main-image .contents .title {
  text-align: center;
  padding-top: 10.6666666667vw;
}
#bcp .main-image .contents .title img {
  width: 100%;
}
#bcp .main-image .contents p {
  margin-top: 4vw;
  color: #ffffff;
  font-size: 3.7333333333vw;
  font-weight: bold;
  line-height: 1.57;
}
#bcp .main-image .bg {
  z-index: 10;
  top: 0;
  left: 0;
  /*position: absolute;*/
  width: 100%;
  height: 100%;
  max-height: 109.3333333333vw;
  overflow: hidden;
}
#bcp .main-image .bg img {
  width: 100%;
  display: block;
}
#bcp .system {
  padding-top: 10.6666666667vw;
  background-color: #e4f0f9;
}
#bcp .system .container {
  padding-bottom: 0;
}
#bcp .system .inner {
  width: 100%;
  margin: 0 auto;
}
#bcp .system .image {
  background: url(../img/bcp/system-image-sp.png) right top no-repeat;
  height: 82.6666666667vw;
  background-color: #f3f3f3;
}
#bcp .system .image + p {
  margin-top: 3.3333333333vw;
}
#bcp .system .bg {
  background: url(../img/bcp/recruit-image-head.png) left top no-repeat;
  background-size: auto 9.3333333333vw;
  width: 100%;
  padding: 13.0666666667vw 0 0 0;
}
#bcp .system .bg .title {
  width: 86vw;
  margin: 0 auto;
}
#bcp .system .btns {
  width: 83.4666666667vw;
  margin: 6vw auto 0;
  display: grid;
  gap: 2.6666666667vw;
}
#bcp .system .btns a {
  display: block;
}
#bcp .system .btns a img {
  display: block;
}
#bcp .system p {
  font-size: 3.2vw;
  line-height: 1.42;
}
#bcp .system .feature {
  margin-top: 17.3333333333vw;
}
#bcp .system .feature h4 {
  border-top: 0.2666666667vw solid #0068b6;
  position: relative;
  margin-top: 6.6666666667vw;
  padding-bottom: 6.6666666667vw;
}
#bcp .system .feature h4 img {
  position: absolute;
  top: -6.6666666667vw;
  left: 0;
  width: 13.3333333333vw;
  height: 13.3333333333vw;
  display: block;
  max-height: none;
}
#bcp .system .feature ul {
  margin-top: 2.6666666667vw;
  padding-left: 6.1333333333vw;
}
#bcp .system .feature ul li {
  font-size: 3.2vw;
  font-weight: bold;
}
#bcp .system .feature ul li + li {
  margin-top: 1.3333333333vw;
}
#bcp .system .feature .note {
  background: #fff;
  padding: 4.6666666667vw 4vw;
  font-size: 3.2vw;
  margin-top: 6vw;
}
#bcp .system .feature .note p {
  text-align: left;
  color: #009944;
}
#bcp .system .feature .note .ex {
  margin-top: 2.1333333333vw;
  color: #e60012;
}
#bcp .proposal {
  position: relative;
  background-color: #e4f0f9;
  padding-top: 5.3333333333vw;
}
#bcp .proposal .container {
  position: relative;
  padding-bottom: 10.6666666667vw;
  height: auto;
}
#bcp .proposal .inner {
  position: relative;
  z-index: 100;
  margin: 0 auto;
  text-align: center;
}
#bcp .proposal .inner .title {
  font-size: 4.5333333333vw;
  font-weight: bold;
  color: #0168b7;
}
#bcp .proposal .inner .img {
  margin-top: 4vw;
}
#bcp .disaster .container {
  position: relative;
  padding-top: 8vw;
  padding-bottom: 9.3333333333vw;
}
#bcp .disaster .container:before {
  content: "";
  display: block;
  width: 94.6666666667vw;
  height: 51.8666666667vw;
  z-index: 10;
  background: url(../img/bcp/bcp-bg01-sp.png) left top no-repeat;
  background-size: contain;
}
#bcp .disaster .inner {
  position: relative;
  z-index: 100;
}
#bcp .disaster .inner h4 {
  font-size: 4.5333333333vw;
  font-weight: bold;
  margin-top: 4.6666666667vw;
}
#bcp .disaster .inner p {
  font-size: 3.7333333333vw;
  margin-top: 4vw;
}
#bcp .disaster .inner ul {
  margin-top: 6.6666666667vw;
  font-size: 3.7333333333vw;
}
#bcp .disaster .inner ul li {
  margin-bottom: 4px;
  background-image: url(../img/common/icon-arrow03-right-blue.png);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 14px;
}
#bcp .bcp {
  background-color: #eeeeee;
}
#bcp .bcp .container {
  position: relative;
  overflow: hidden;
  padding-top: 8vw;
  padding-bottom: 9.3333333333vw;
}
#bcp .bcp .container:before {
  content: "";
  display: block;
  width: 94.6666666667vw;
  height: 52vw;
  background: url(../img/bcp/bcp-bg02-sp.png) left top no-repeat;
  background-size: contain;
}
#bcp .bcp .inner {
  position: relative;
  z-index: 100;
  /*            @media screen and (max-width: 1540px) {
              }*/
}
#bcp .bcp .inner h4 {
  font-size: 4.5333333333vw;
  font-weight: bold;
  margin-top: 4.6666666667vw;
}
#bcp .bcp .inner p {
  margin-top: 4vw;
  font-size: 3.7333333333vw;
}
#bcp .package {
  padding: 6.6666666667vw 2.6666666667vw 14.6666666667vw;
  background-color: #004d86;
  background-image: url(../img/bcp/package-bg.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: bottom right;
  color: #fff;
}
#bcp .package:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
#bcp .package h4 {
  font-size: 4.5333333333vw;
  font-weight: bold;
  margin-top: 9.3333333333vw;
}
#bcp .package p {
  margin-top: 4.6666666667vw;
  font-size: 3.7333333333vw;
}
#bcp .package .image {
  width: 83.4666666667vw;
  height: 81.3333333333vw;
  margin: 0 auto;
}
#bcp .package .image img {
  width: 100%;
}
#bcp .package .btns {
  text-align: center;
  clear: both;
  margin-top: 10.6666666667vw;
}
#bcp .package .btns .btn01 {
  color: #333333;
  width: 89.3333333333vw;
  font-size: 3.8vw;
  background-color: #fff;
  background-image: url(../img/common/icon-arrow03-right-grey.png);
  background-position: right 2.6666666667vw center;
  background-size: 2vw auto;
  padding-left: 4.6666666667vw;
}
#bcp .support {
  padding: 13.3333333333vw 2.6666666667vw 0;
  background-color: #003045;
  background-image: url(../img/bcp/support-bg-sp.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  color: #fff;
  height: 136vw;
}
#bcp .support h4 {
  text-align: center;
  font-size: 4.5333333333vw;
  font-weight: bold;
}
#bcp .support p {
  margin-top: 5.3333333333vw;
  font-size: 3.7333333333vw;
  line-height: 1.57;
}
#bcp .support .btns {
  display: grid;
  gap: 3.3333333333vw;
  justify-content: center;
  margin-top: 7.3333333333vw;
  width: 100%;
}
#bcp .support .btns .btn01 {
  color: #333333;
  width: 89.3333333333vw;
  background-color: #fff;
  background-image: url(../img/common/icon-arrow03-right-grey.png);
  background-position: right 2.6666666667vw center;
}

#contact p {
  font-size: 3.7333333333vw;
}
#contact .tel {
  text-align: center;
  width: 77.3333333333vw;
  margin: 9.3333333333vw auto 0;
}
#contact .faq {
  margin: 9.3333333333vw auto 0;
  border-bottom: 0.2666666667vw solid #cccccc;
  padding-bottom: 11.3333333333vw;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 4.6666666667vw;
}
#contact .btns {
  text-align: center;
  display: grid;
  gap: 3.3333333333vw;
  justify-content: center;
  margin-top: 10.6666666667vw;
}
#contact .btns .btn {
  width: 76vw;
}
#contact .form {
  margin-top: 19.3333333333vw;
}
#contact .form h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  padding-bottom: 1.3333333333vw;
}
#contact .form .caution {
  margin-top: 4vw;
  color: #e60012;
}
#contact .form table {
  font-size: 3.7333333333vw;
  border-collapse: collapse;
  border: 0.2666666667vw solid #ccc;
  border-width: 0 0.2666666667vw 0.2666666667vw 0.2666666667vw;
  width: 100%;
  display: block;
  margin-bottom: 4vw;
}
#contact .form table tbody {
  display: block;
}
#contact .form table tr {
  display: block;
}
#contact .form table th,
#contact .form table td {
  border-top: 0.2666666667vw solid #ccc;
  display: block;
  width: 100%;
}
#contact .form table th {
  padding: 2vw 1.3333333333vw;
  background-color: #eeeeee;
}
#contact .form table td {
  padding: 2vw;
}
#contact .form table {
  margin-top: 6.6666666667vw;
}
#contact .form table p {
  text-align: left;
}
#contact .form table th {
  text-align: left;
  position: relative;
}
#contact .form table th .req {
  position: absolute;
  top: 50%;
  right: 2.6666666667vw;
  transform: translateY(-50%);
  color: #fff;
  background: #e60012;
  width: 9.8666666667vw;
  height: 4vw;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.6666666667vw;
  text-align: center;
}
#contact .form table [type=file] {
  margin-bottom: 2.6666666667vw;
}
#contact .form table .address01 {
  margin-top: 1.3333333333vw;
}
#contact .form .wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 2.1333333333vw;
}
#contact .form .wpcf7-radio .wpcf7-list-item {
  margin-left: 0;
}
#contact .form [type=email] {
  width: 100%;
}
#contact .form [name=tel] {
  width: 100%;
}
#contact .form .privacy {
  margin-top: 1.3333333333vw;
}
#contact .form button,
#contact .form [type=button],
#contact .form [type=reset],
#contact .form [type=submit] {
  text-align: center;
}
#contact .form [type=submit]:disabled {
  opacity: 0.5;
}
#contact .form [readonly=readonly] {
  background: #eeeeee;
}
#contact .form .submit_btn {
  text-align: center;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 2.6666666667vw;
}
#contact .form textarea {
  width: 100%;
}

#thanks h3 {
  text-align: center;
  font-weight: bold;
  font-size: 5.0666666667vw;
  color: #004d86;
}
#thanks p {
  margin-top: 13.3333333333vw;
  font-size: 3.7333333333vw;
}
#thanks .link {
  display: grid;
  justify-content: center;
  margin: 16.5333333333vw 0 0;
}

#faq .container > p {
  font-size: 3.7333333333vw;
  margin-bottom: 6.6666666667vw;
}
#faq .container ul {
  text-align: center;
  margin-bottom: 6.6666666667vw;
}
#faq .container ul li {
  display: inline-block;
  margin: 0 5px;
}
#faq .container ul li + li {
  margin-top: 2.5333333333vw;
}
#faq .container h3 {
  font-weight: bold;
  color: #004d86;
  border-bottom: 0.2666666667vw solid #ccc;
  font-size: 3.7333333333vw;
  margin-bottom: 4vw;
}
#faq .container .qa {
  border: 0.2666666667vw solid #ccc;
  margin-top: 5.3333333333vw;
}
#faq .container .qa + h3 {
  margin-top: 13.3333333333vw;
}
#faq .container .qa .faq_q {
  font-size: 3.7333333333vw;
  background-color: #e4f0f9;
  background-image: url(../img/common/icon-q.png);
  background-size: 10.6666666667vw auto;
  background-repeat: no-repeat;
  background-position: 2.1333333333vw center;
  padding: 2.1333333333vw 2.1333333333vw 2.6666666667vw 14.9333333333vw;
  font-weight: bold;
  display: grid;
  align-items: center;
  min-height: 15.4666666667vw;
}
#faq .container .qa .faq_a {
  display: grid;
  align-items: center;
  min-height: 15.4666666667vw;
  font-size: 3.7333333333vw;
  background-image: url(../img/common/icon-a.png);
  background-size: 10.6666666667vw auto;
  background-repeat: no-repeat;
  background-position: 2.1333333333vw 2.1333333333vw;
  padding: 2.1333333333vw 2.1333333333vw 2.6666666667vw 14.9333333333vw;
}

/*-----------------------------------------------------------------
下層ページ　プリント用CSS
-----------------------------------------------------------------*/
@media print {
  body {
    text-align: left;
    line-height: 1.3em;
    color: #3b3b3b;
    font-size: 100%;
    background-image: none;
  }
}
