@charset "UTF-8";
/* CSS Document */

/*
==========================================================
会社概要
==========================================================
*/
#topImage {
	background-image: url(images/topImage.jpg);
}
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

@media print, screen and (min-width: 769px) {
	
table {
	width: 99%;
	border-collapse:collapse;
}
table th,
table td {
	padding: 14px;
	border: 1px solid #CCC;
	line-height: 1.8em;
}
table th {
	background-color: #eee;
	width: 23%;
}
table td {
	text-align: left;
}
table tr td ul {
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 20px;
}
table tr td ul li {
	list-style-position: outside;
	list-style-type: disc;
}
.contebox .box {
overflow: hidden;
margin-bottom: 30px;
}
.contebox .box .text{
width: 50%;
padding-top: 40px;
padding-left: 50px;
text-align: left;
float: left;
}
.contebox .box .text li {
font-size: 2rem;
font-weight: 600;
color: #008cd6;
line-height: 1.8em;
margin-bottom: 20px;
}
.contebox .box .photo {
width: 35%;
float: right;
margin-bottom: 20px;
}
.contebox .greeting {
clear: both;
width: 80%;
margin: 0 auto;
}
.greeting dl {
clear: both;
text-align: left;
}
.greeting dt {
margin-bottom: 20px;
line-height: 3em;
}
.greeting dd {
text-align: right;
}

.gmap {
margin-bottom: 40px;
}

.access {
margin-bottom: 50px;
}
.access ul {
 display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
.access li {
width: 48%;
border-right: solid 1px #000;
}
.access li:last-child {
border: none;
}
.access li dl {
margin: 0;
text-align: left;
}
.access li dt {
font-size: 2.4rem;
font-weight: 500;
margin-bottom: 20px;
}
.images ul {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
grid-gap: 1rem;
position: relative;
}
.images li {
	width: calc(25% - calc(3rem / 4));
}

.client_list .client_box{
	width: 100%;
	border: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.client_list .client_box:not(:last-of-type){
	margin-bottom: 1.5rem;
}
.client_list .client_box dt{
	font-size: 18px;
	background-color: #008CD6;
	padding: .5rem 1rem;
	border-bottom: 1px solid #ccc;
	color: #fff;
}
.client_list .client_box dd ul{
	display: grid;
	grid-template-columns: repeat(3,1fr);
}
.client_list .client_box dd ul li{
	padding: 1rem;
}
.client_list .client_box dd ul li:nth-of-type(even){
	background-color: #efefef;
}

}


@media screen and (max-width: 768px) {
	

	h3 {
	font-size: 22px;
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 0px;
	position: relative;
	margin-bottom: 30px;
	line-height: 1.2em;
	display: block;
	overflow: hidden;
	font-weight: normal;
	text-align: left;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
table {
	width: 100%;
	border-collapse:collapse;
}
table th,table td {
	padding: 10px;
}
table.outline th,
table.outline td,
table.history th,
table.history td{
	display: block;
}
table th {
	background-color: #eee;
}
table td {
	text-align: left;
}
table tr td ul {
	margin: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 20px;
}
table tr td ul li {
	list-style-position: outside;
	list-style-type: disc;
}

.client_list .client_box{
	width: 100%;
}
.client_list .client_box:not(:last-of-type){
	margin-bottom: 1rem;
}

.contebox .box .text{
text-align: left;
padding-left:1.5em;
text-indent:-1.5em;
width: 90%;
margin: 0px auto;
}
.contebox .box .text li {
font-size: 1.8rem;
font-weight: 600;
color: #008cd6;
line-height: 1.8em;
margin-bottom: 14px;
}
.contebox .box .photo {
width: 80%;
margin: 0px auto 20px;
}
.contebox .greeting {
width: 90%;
margin: 0px auto;
}
.greeting dl {
clear: both;
text-align: left;
}
.greeting dt {
margin-bottom: 20px;
line-height: 1.8em;
}
.greeting dd {
text-align: right;
}

.gmap {
margin-bottom: 40px;
}

.access {
margin-bottom: 50px;
}
.access ul {
 display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
.access li {
width: 100%;
margin-bottom: 20px;
}
.access li:last-child {
border: none;
}
.access li dl {
margin: 0;
text-align: left;
}
.access li dt {
font-size: 1.8rem;
font-weight: 500;
margin-bottom: 10px;
}
.images ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}
.images li {
width: 48%;
margin-bottom: 20px;
}

.client_list .client_box{
	width: 100%;
}
.client_list .client_box:not(:last-of-type){
	margin-bottom: 1.5rem;
}
.client_list .client_box dt{
	font-size: 18px;
	background-color: #008CD6;
	padding: .5rem 1rem;
	border-bottom: 1px solid #ccc;
	color: #fff;
}
.client_list .client_box dd ul{
	display: grid;
	grid-template-columns: repeat(1,1fr);
}
.client_list .client_box dd ul li{
	padding: 1rem;
}
.client_list .client_box dd ul li:nth-of-type(even){
	background-color: #efefef;
}

}

