@charset "utf-8";

/*-----------------------------------------------------------------
　　　固定ページ共通
*-----------------------------------------------------------------*/
.home #wrapper, 
.page-template-page-business #wrapper, 
.page-template-page-company #wrapper, 
.page-template-page-greeting #wrapper {
  width: 100%!important;
  margin: 0;
  padding: 0 0 50px;
}
.aioseo-breadcrumb-widget { /*パンくずリスト*/
  margin:0 0 30px;
  padding: 0;
  font-size: 12px;
}
.page_h1 { /*1カラムページのh1*/
  position: relative;
  margin: -50px 0 0;
  padding: 50px 50px 25px 150px;
  font-size: 40px;
  font-weight: 100;
  color: #2B0C03;
  clear: both;
}
.page_h1 span {
  display: block;
  margin: 0 0 50px;
  padding: 0;
  font-size: 20px;
}
.overview {
	margin: 0;
	padding: 0;
	display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.overview_photo {
width: 100%;
height: 600px;
margin: 0;
padding: 0;
overflow: hidden;
transform: skewY(-3deg);
}
.overview_photo img {
width: 100%;
}
.overview dl {
	margin: 0;
	padding: 10%;
}
.overview dl dt {
	margin: 0 0 100px;
	padding: 0;
}
.overview dl dd {
	margin: 0;
	padding: 0;
}
.page_h2 {
  position: relative;
  margin: 0 0 100px;
  padding: 0;
  font-size: 30px;
  color: #2B0C03;
  font-weight: 100;
  text-align: center;
  line-height: .5rem;
}
.page_h2::after {
  position: absolute;
  width: 50px;
  height: 4px;
  content: '';
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #9F004A;
  border-radius: 2px;
 }
.page_h2 span {
  display: block;
  margin: 25px 0 50px;
  padding: 0;
  font-size: 16px;
  color: #444;
  font-weight: 100;
}
.page_content {
  margin: 0;
  padding: 100px 0;
}
.page_content ul {
	margin: 0;
	padding: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.page_content ul li {
	width: 30%;
	margin: 0;
	padding: 0 9%;
	list-style-type: none;
}
.page_content ul li:nth-of-type(1) {
  width: 50%;
  height: auto;
  margin: 0 auto 0 0;
  padding: 0;
  overflow: hidden;
  border-radius: 0 200px 0 0;
}
/*-----------------------------------------------------------------
　　　トップページ
*-----------------------------------------------------------------*/
.toppage01 {
  position: relative;
  height: 100vh;
  margin: 0 0 150px;
  padding: 0;
  overflow: hidden;
}
.toppage01 ul {
	margin: 0;
	padding: 0;
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.toppage01 ul li {
	width:50%;
	margin: 0;
	padding: 0;
	font-weight: 100;
	list-style-type: none;
}
.toppage01 ul li:last-of-type {
	width:30%;
	margin: 0;
	padding: 5% 10%;
}
.toppage01 img {
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  border-radius: 0 200px 0 0;
}
.toppage01 h1 {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  margin: 0;
  padding: 50px;
  font-size: 30px;
  text-align: center;
  line-height: 2.5rem;
}
.toppage01 h1 span {
  font-size: 20px;
}
.toppage02 {
margin: 0;
padding: 150px 0;
text-align: center;
}
.toppage_nav {
margin: 0;
padding: 100px 0;
color: #fff;
  background: url("images/toppage05.jpg") top no-repeat;
  background-size: cover;
  background-attachment: fixed;
}	
.toppage_nav ul {
  width: 30%;
  margin: 0 auto;
  padding: 100px;
  background-color:rgba(4,4,4,0.5);
}
.toppage_nav ul li {
  margin: 20px 0;
  padding: 50px;
  text-align: center;
  background-color: #000;
}
.toppage_nav ul li span {
  font-size: 12px;
}
.toppage_nav ul li a {
  color: #fff;
}
.toppage_nav ul li a:hover {
  color: #c00;
}
.dengonban {
  margin: 0;
  padding: 200px 0 50px;
  background-color: #eee;
}
.dengonban dl {
  width: 70%;
  margin: 0 auto 0 0;
  padding: 10%;
  background-color: #fff;
}
.dengonban dl dt {
  margin: 0;
  padding: 0;
  font-size: 20px;
  font-weight: 400;
}
.dengonban dl dd {
  margin: 0;
  padding: 50px 0 0;
}
.sintyaku {
  margin: 0;
  padding: 50px 0 200px;
  background-color: #eee;
}
.sintyaku dl {
  width: 70%;
  margin: 0 0 0 auto;
  padding: 10%;
  background-color: #fff;
}
.sintyaku dl dt {
  margin: 0;
  padding: 0;
}
.sintyaku dl dd {
  width: 75%;
  margin: 0 0 0 auto;
  padding: 50px 0 0;
}
.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;
}
.toppage03 {
margin: 0 0 50px;
padding: 100px 0;
  background: url("images/toppage02.jpg") top no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
.toppage03 ul {
  width: 30%;
  margin: 0 auto;
  padding: 100px;
  color: #fff;
  text-align: center;
  background-color:rgba(4,4,4,0.5);
}
.toppage03 ul h2,
.toppage03 ul h2 span {
  color: #fff;
}
.toppage03 ul li {
  margin: 0;
  padding: 30px 0;
}
/* --------------------------------------------------------------
　　　事業内容
----------------------------------------------------------------- */
.business01 {
	position: relative;
	margin: -70px 0;
	padding: 150px 10% 100px;
}
.business01::after{
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #eee;
	transform: skewY(-3deg);
	z-index: -100;
}
.business01 dl {
	margin: 0;
	padding: 0;
	display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: stretch;
}
.business01 dl h2 {
	margin: 0;
	padding: 0 0 .5rem;
	font-size: 24px;
	border-bottom: 1px solid #9D7B49;
}
.business01 dl h3 {
	margin: 0;
	padding: .5rem 0 1.5rem;
	font-size: 18px;
	font-weight: 500;
}
.business01 dl dt {
	width: 44%;
	margin: 0 5% 0 0;
	padding: 0;
}
.business01 dl dd {
	width: 50%;
	margin: 0;
	padding: 0;
}
/*-----------------------------------------------------------------
　　　会社概要
*-----------------------------------------------------------------*/
.company01 {
  width: 100%;
  max-width: 1080px;
  min-width: 250px;
  margin: 0 auto;
  padding: 0;
}
.company01 table {
  width: 100%;
  margin: 0 0 50px;
  padding: 0;
  border-collapse: collapse;
}
.company01 table tbody tr th {
  width: 30%;
  margin: 0;
  padding: 15px 5px;
  font-weight: normal;
  text-align: center;
  background-color: #EFD099;
  border: 1px solid #9D7B49;
}
.company01 table tbody tr td {
  width: 70%;
  margin: 0;
  padding: 15px 5px 15px 20px;
  border: 1px solid #9D7B49;
}
.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%;
}
/*-----------------------------------------------------------------
　　　代表者挨拶
*-----------------------------------------------------------------*/
.greeting01 {
  position: relative;
  margin: 0;
  padding: 180px 10%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}
.greeting01::after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: '';
  background-color: #eee;
  transform: skewY(-3deg);
  z-index: -100;
}
.greeting01L {
  width: 45%;
  margin: 0;
  padding: 0;
}
.greeting01L table {
  width: 100%;
  margin: 0;
  padding: 0;
  border-collapse: collapse;
}
.greeting01L table tbody tr th {
  width: 35%;
  margin: 0;
  padding: 5px 20px;
  font-weight: normal;
  text-align: center;
  background-color: #f1f1f1;
  border: 1px solid #CCC;
}
.greeting01L table tbody tr td {
  margin: 0;
  padding: 5px 20px;
  border: 1px solid #CCC;
}
.greeting01R {
  width: 45%;
  margin: 0;
  padding: 0;
}
.greeting01R ul {
  margin: 0 0 0 15px;
  padding: 0;
}
.greeting01R ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}
