@charset "utf-8";

/* ************************************************ 
*	代行業者一覧
* ************************************************ */	
.vendor-block {
width: 90%;
max-width: 1000px;
padding: 0 0 100px 0;
margin: 0 auto;
}
.vendor-block h3 {
font-size: min(2.1vw,21px);
  position: relative;
  padding: 0 0 20px 0;
  margin: 0 0 20px 0;
  font-weight: 500;
  display: block;
}
.vendor-block h3::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #ffcd4c, #ffcd4c 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #ffcd4c, #ffcd4c 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.vendor-block p{
font-size: min(1.6vw,16px);
line-height: 200% !important;
}

.vendor-box-top {
margin: 0 0 50px 0;
padding: 0;
}
.vendor-box {
margin: 30px 0 50px 0;
padding: 0;
}
ol.vendorlist{
  counter-reset:list;
  list-style-type:none;
  padding:0;
}
ol.vendorlist li{
font-size: min(1.8vw,18px);
line-height:30px;
position:relative;
  padding: 0 0 0 30px;
  margin: 15px 0 15px 0px;
  font-weight: normal;
  border: dashed 1px transparent;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
ol.vendorlist li:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: -10px;
  width: 30px;
  height: 30px;
  text-align: center;
  color: #fff;
  line-height:30px;
  background: #000;
  border-radius: 50%;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
/* *********************************************** */	
.vendor-box .search-box {
margin: 0 0 30px 0;
padding: 0 0 0 0;
}
.vendor-box input {
margin: 0;
padding: 10px;
}
input[type="radio"],
input[type="checkbox"] {
position: relative;
top: 1px;
}
.vendor-box input[type="image"]{
	margin: 0;
	padding: 0;
	width: 8.5%!important;
}
.vendor-box .submit-box {
margin: 0 0 30px 0;
padding: 0 0 0 0;
text-align: center;
}
.vendor-box .submit-box input {
margin: 0;
padding: 15px 40px;
font-size: min(1.8vw,18px);
}
.vendor-box .submit-box input:hover {
color: #fff;
background-color: #000;
transition: 0.5s;
}
table.vendor {
width: 100%;
margin: 20px 0 50px 0;
padding: 0 0 0 0;
border: none;
border-collapse: collapse;
border-spacing: 0;
border-top: 1px solid #999;
font-size: min(1.6vw,16px);
}
table.vendor tr{
border-bottom: 1px solid #999;
}
table.vendor th {
font-weight: bold;
text-align: left;
padding: 15px 10px;
white-space: nowrap;
vertical-align: middle;
background-color: #efefef;
width: 22%;
}
table.vendor td {
text-align: left;
padding: 15px 10px;
white-space: normal;
vertical-align: middle;
}

.vendorlist-box {
margin: 100px 0 30px 0;
padding: 0 0 0 0;
}

table.vendorlist {
width: 100%;
margin: 20px 0 60px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
border: 1px #999 solid;
font-size: min(1.6vw,16px);
}

table.vendorlist th {
font-weight: normal;
text-align: center;
padding: 15px 10px;
vertical-align: middle;
white-space: nowrap; 
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
background-color: #efefef;
}

table.vendorlist td:first-child,
table.vendorlist td:nth-child(2),
table.vendorlist td:nth-child(3)
table.vendorlist td:last-child  {
word-break: break-all;
}

table.vendorlist td {
text-align: center;
padding: 15px 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
border-right: 1px #999 solid;
}
table.vendorlist tbody td:before {
  background: #efefef;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}
table.vendorlist th:last-child {
border-right: none;
}
table.vendorlist td:last-child {
border-right: none;
}
table.vendorlist td:first-child,
table.vendorlist td:nth-child(2) {
width: 12.5%;
}
table.vendorlist td:last-child {
width: 25%;
}
table.vendorlist td:nth-child(3){
text-align: left;
}


/* ************************************************ 
*   レスポンシブ
* ************************************************ */
/* PC 画面の横幅が960px以上 */
@media only screen and (min-width: 960px){
}

/* Tablet (Portrait) 画面の横幅が768px〜959pxまで */
@media only screen and (min-width: 768px) and (max-width: 959px) {

}


/* Mobile (Portrait) 画面の横幅が767pxまで */
@media only screen and (max-width: 767px) {
.vendor-block { padding: 0 0 0 0; }
.vendor-block h3 { font-size: 5vw; }
.vendor-block p { font-size: 4.5vw; }
ol.vendorlist li{
font-size: 4vw;
padding: 0 0 0 30px;
margin: 15px 0 15px 0;
}
table.vendor {
font-size: 4vw;
}
table.vendor th {
display:block;
width: calc(100% - 20px);
border:none;
margin: 0;
padding: 10px;
}
table.vendor td {
width: 100%;
display:block;
margin: 5px 0;
padding: 10px 0;
}
.vendor-box .submit-box input { font-size: 4.5vw; }

table.vendorlist {
border-top: 2px solid #999;
font-size: 4vw;
}
table.vendorlist tr {
border-top: 2px solid #999;
}
table.vendorlist th {
text-align: center;
border-right: none;
}
table.vendorlist td {
text-align: left;
border-right: none;
border-bottom: 1px #999 solid !important;
padding: 0 0 0 0;
vertical-align: middle;
}
table.vendorlist .bt-content {
padding: 10px;
}

table.vendorlist td:first-child,
table.vendorlist td:nth-child(2),
table.vendorlist td:nth-child(3),
table.vendorlist td:last-child {
width:100%;
}

}
