*, *:before, *:after {
	box-sizing: border-box;
}
.col_4{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_4 > div{
	width: 25%;
	padding: 10px;
}
@media screen and (max-width: 960px) {
	.col_4 > div{
		width: 33.33333%;
	}
}
@media screen and (max-width: 480px) {
	.col_4 > div{
		width: 50%;
	}
}



.red {background-color:#ff0000; color:#ffffff; font-size:80%;}

/*** レスポンシブテーブルデザイン ***/
.shokai{
  width:100%;
  border: 2px solid #cccccc;
  overflow: hidden;
  word-break: break-all;
  word-wrap: break-word;
}
 
.shokai th{
  padding: 6px 8px 5px;
  border-top: solid 1px #cccccc;
  width: 30%;
  overflow: hidden;
  color: #13131e;
  font-style: normal;
  font-weight: bold;
  font-size: 100%;
  text-align: left;
  word-break: break-all;
  word-wrap: break-word;
  vertical-align: top;
  background-color: #ebf7ff;
}

th[colspan] {
	background-color:#e7e7e7;
}

.shokai td{
padding: 5px 10px;
text-align: left;
vertical-align: top;
color: #595960;
background-color: #ffffff;
border-top: dotted 1px #e0dccc;
overflow: hidden;
word-break: break-all;
word-wrap: break-word;
}
 
@media (max-width: 400px){
.shokai th{
  width:100%;
  display:block;
  margin: 0 auto;
  border:none;
  border-radius: 3px;
}
.shokai td{
  display: list-item;
  width: 100%;
  border-top: none !important;
}
}/* end */


/*** シンプルレスポンシブテーブル ***/
.nagare{
  width:100%;
  overflow: hidden;
  word-break: break-all;
  word-wrap: break-word;
}
 
.nagare th{
  padding: 10px 10px 10px;
  width: 500px;
  overflow: hidden;
  font-style: normal;
  font-size: 100%;
  text-align: left;
  word-break: break-all;
  word-wrap: break-word;
  vertical-align: top;
font-weight:normal;
}

.nagare td{
padding: 5px 10px;
  width: 300px;
text-align: left;
vertical-align: top;
overflow: hidden;
word-break: break-all;
word-wrap: break-word;
	
}
 
@media (max-width: 400px){
.nagare th{
  width:100%;
  display:block;
  margin: 0 auto;
  border:none;
}
.nagare td{
  display: list-item;
  width: 100%;
  border-top: none !important;
}
}/* end */

/*** サブタイトル見出し ***/
h4{
	position: relative;
	line-height: 40px;
	padding: 0 0 0 100px;
	font-size:18px;
	border: 1px solid #125ab3;
	border-radius: 6px;
	color: #414242;
}
h4::before{
	content: attr(title);
  float:left;
	position: absolute;
	left: 0;
	top: 0;
	padding:0 20px;
	font-size:13px;
	background: #125ab3;
	color: #fff;
}

img:hover {
	opacity: 0.5 ;
}

.sample-box-13 {
    border: 2px solid #86d9ff;
    border-radius: 4px;
    margin: 2em 0;
    padding: 2em;
    position: relative;
}
.sample-box-13::before {
    background-color: #fff;
    color: #125ab3;
    content: "見積依頼はこちら";
    font-weight: bold;
    left: 1em;
    padding: 0 0.5em;
    position: absolute;
    top: -1em;
}

/*** th要素が縦横どちらにもあるときテーブル ***/

.cp_table *, .cp_table *:before, .cp_table *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	}
.cp_table {
	width: 100%;
	border-collapse: collapse;
	border-right: 1px solid #dddddd;
}
.cp_table thead th {
	padding: 10px 15px;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	background: #ececec;
	text-align: center;
	vertical-align: middle;
}
.cp_table thead th:last-child {
	border-right: 1px solid #dddddd;
	text-align: center;
	vertical-align: middle;
}
.cp_table tbody th {
	padding: 10px 15px;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid #ffffff;
	background: #ececec;
	white-space: nowrap;
}
.cp_table tbody tr:last-child th {
	border-bottom: 1px solid #dddddd;
	text-align: center;
	vertical-align: middle;
}
.cp_table tbody td {
	padding: 10px 15px;
	text-align: center;
	vertical-align: middle;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	background: #ffffff;
}
@media only screen and (max-width:480px) {
	.cp_table thead {
		display: none;
	}
	.cp_table tbody th {
		display: block;
	}
	.cp_table tbody td {
		display: block;
		padding: 10px 5px;
	}
	.cp_table tbody td::before {
		font-weight: bold;
		
		padding: 0.5em 0;
		content: attr(label);
	}
	.cp_table tbody td p {
		padding: 0.5em 0 0 1em;
    margin: 0;
	}
}
/*** 頭にバスが入る見出し ***/
.title {

color: #010079;
text-shadow: 0 0 5px white;
padding: 0.3em 0.5em;
background: -webkit-repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
background: repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
}
.title:before {
   content: url(https://okabus.com/wp-content/uploads/2018/11/busicon.png);
	position: relative;
     top: 8px;
	left: -5px;
}


/*** 2ブロックが折り返す ***/
*, *:before, *:after {
	box-sizing: border-box;
}
.col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
	width: 50%;
	padding: 10px;
	}
.col_2 p{
position: relative;
top: 13px;
}

@media screen and (max-width: 960px) {
	.col_2 > div{
		width: 100%;
	}
}

/*** 3ブロックが折り返す ***/

*, *:before, *:after {
	box-sizing: border-box;
}
.col_3{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div{
	width: 33.33333%;
	padding: 20px;
}
@media screen and (max-width: 960px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 100%;
	}
}