@charset "utf-8";

/*-----------------------------------------------------------------
　　　固定ページ共通
*-----------------------------------------------------------------*/
.page-id-18 #wrapper, 
.page-id-21 #wrapper, 
.page-id-23 #wrapper {
  width: 100%!important;
	margin: 0;
	padding: 0;
}
.page-id-18 #wrapper h1, 
.page-id-21 #wrapper h1, 
.page-id-23 #wrapper h1 {
  margin: 0 auto 3rem!important;
  padding: 7% 10% 5%;
  color: #666;
  background-color: #eee;
}
.page-id-18 #wrapper h1 span, 
.page-id-21 #wrapper h1 span, 
.page-id-23 #wrapper h1 span {
display: block;
font-size: 24px;
color: #999;
font-weight: 100;
}
/*-----------------------------------------------------------------
　　　トップページ
*-----------------------------------------------------------------*/
.toppage01 {
  height: 100vh;
  margin: 0;
  padding: 0;
  color: #fff;
  background: url("images/a001_06.jpg") top no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
.toppage01 h1 {
  padding: 300px 0 0;
  color: #fff;
  font-size: 100px;
  text-align: center;
  font-weight: 700;
  line-height: 5rem;
}
.toppage01 h1 span {
  font-size: 50px;
}
.toppage02 {
margin: 0;
padding: 100px 0;
text-align: center;
background: linear-gradient(to right, #fff 0%, #eee 100%);
}
.toppage_nav {
  margin: 0 10%;
  padding: 150px 0;
}
.toppage_nav ul {
margin: 0 auto;
display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.toppage_nav ul li {
  width: 280px;
  height: 280px;
  margin: 0;
  padding: 0;
  text-align: center;
}
.toppage_nav ul li img {
  width: 280px;
  height: 280px;
object-fit: cover;
border-radius: 10px;
}
.toppage_nav ul li a {
  display: block;
  width: 40%;
  margin: 30px auto 0;
  padding: .6rem 0 .3rem;
  font-size: 14px;
  color: #222;
  line-height: .8rem;
  border: 1px solid #999;
  background-color: #fff;
  border-radius: 50px;
}
.toppage_nav ul li span {
  font-size: 11px;
}
.toppage_nav ul li a:hover {
  transform: scale(1.05);
  transition: all .5s;
}
.toppage_info {
	margin: 0;
	padding: 100px 10%;
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
    background: linear-gradient(to right, #eee 0%, #fff 100%);
}
.dengonban, .sintyaku {
    width: 45%;
margin: 1%;
  padding: 1%;
}
.dengonban h2, .sintyaku h2 {
  color: #666;
  text-align: center;
}
.dengonban dl dt, .sintyaku dl dt {
  margin: 0 0 75px;
  padding: 0;
}
.dengonban dl dd, .sintyaku dl dd {
  margin: 0;
  padding: 2%;
}
.sintyaku_blog {
	display: inline-block;
	margin: 50px 0 0;
	padding: .5rem 1rem;
	color: #fff;
	background-color: #ff6633;
}
.sintyaku_blog:hover {
	transform: scale(1.2);
	color: #fff;
}
/*-----------------------------------------------------------------
　　　事業内容
*-----------------------------------------------------------------*/
.business01 {
width: 80%;
margin: 0 auto 100px;
padding: 0;
}
.business01::after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}
.business01 img {
width: 50%;
margin: 0 0 0 auto;
float: right;
}
.business01 dl {
width: 40%;
margin: 0;
padding: 100px 0 0;
}
.business01 dl dt {
padding: 1rem;
font-size: 30px;
font-weight: 500;
}
.business01 dl dd {
padding: 1rem;
font-size: 14px;
}
.business02 {
	margin: 0;
	padding: 100px 0;
}
.business02.eee {
	  background: linear-gradient(to right, #fff 0%, #eee 100%);
}
.business02 h2 {
	width: 80%;
	margin: 0 auto;
	padding: 0;
}
.business02 ul {
	width: 80%;
	margin: 0 auto;
	padding: 0;
	display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.business02 ul li {
	width: 40%;
	margin: 0;
	padding: 0 4%;
	text-align: center;
	list-style-type: none;
}
.business02 ul li:nth-of-type(2) {
	width: 40%;
	margin: 0;
	padding: 4%;
	text-align: left;
}
.business02 img {
  width: 400px;
}

/*-----------------------------------------------------------------
　　　会社概要
*-----------------------------------------------------------------*/
.company01 {
width: 80%;
margin: 0 auto 100px;
padding: 0;
}
.company01::after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}
.company01 img {
width: 50%;
margin: 0 0 0 auto;
float: right;
}
.company01 dl {
width: 40%;
margin: 0;
padding: 100px 0 0;
}
.company01 dl dt {
padding: 1rem;
font-size: 30px;
font-weight: 500;
}
.company01 dl dd {
padding: 1rem;
font-size: 14px;
}
.company02 {
  margin: 0;
      padding: 100px 0 0;
    background: linear-gradient(to right, #fff 0%, #eee 100%);
}
.company02 table {
  width: 100%;
  max-width: 1200px;
  min-width: 250px;
	margin: 0 auto;
  padding: 0;
  border-collapse: collapse;
}
.company02 table tbody tr th {
  width: 30%;
  margin: 0;
  padding: 15px 5px;
  font-weight: normal;
  text-align: center;
  border: 0px;
}
.company02 table tbody tr td {
  width: 70%;
  margin: 0 auto;
  padding: 15px 5px 15px 20px;
  border: 0px;
}
.company_access {
margin: 0;
padding: 5% 10%;
background: linear-gradient(to right, #fff 0%, #eee 100%);
}
.map { /*地図をレスポンシブ化*/
  position: relative;
  width: 100%;
  padding-bottom: 75%;
  height: 0;
  overflow: hidden;
  margin-bottom: 50px;
}
.map iframe, .mapr object, .map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/*-----------------------------------------------------------------
　　　代表者挨拶
*-----------------------------------------------------------------*/
.greeting {
	margin: 0;
	padding: 100px 10%;
}
.greeting ul {
	margin: 0 0 50px;
	padding: 0;
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.greeting ul li {
	width: 40%;
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 14px;
	list-style-type: none;
}
.greeting ul li img {
	margin: 0 0 1rem;
}
.greeting ul li:last-of-type {
	padding: 50px 0;
	text-align: left;
	font-size: 16px;
}
.greeting_profile {
  margin: 0;
  padding: 100px 0;
  background-color: #eee;
}
.greeting_profile ul {
    width: 80%;
margin: 0 auto 50px;
  padding: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.greeting_profile ul li {
width: 40%;
  margin: 0;
  padding: 2%;
}
.greeting_profile ul li ul {
  padding: 30px!important;
  background-color: #fff;
  border: 1px solid #CCC;
}
.greeting_profile table {
  width: 100%;
  margin: 0;
  padding: 0;
  border-collapse: collapse;
}
.greeting_profile table tbody tr th {
  width: 30%;
  margin: 0;
  padding: 5px 20px;
  font-weight: normal;
  text-align: center;
  background-color: #fff;
  border: 1px solid #CCC;
}
.greeting_profile table tbody tr td {
  margin: 0;
  padding: 5px 20px;
  background-color: #fff;
  border: 1px solid #CCC;
}
.greeting_profile ul li ul {
  margin: 0;
  padding: 0;
}
.greeting_profile ul li ul li {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.greeting_profile ul li ul li:last-of-type {
  width: 100%;
    margin: 0;
  padding: 0;
}