.top_ttl {
	font-weight: bold;
	position: absolute;
	top: 50%;
	left: 0;
	-ms-transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
}

.top_ttl span {
	display: block;
	text-align: left;
}

.top_ttl::after {
	content: "";
	display: inline-block;
	height: 100%;
	border-left: 3px solid #c51528;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}

@media (min-width: 766px) {
	.top_img {
		height: 350px;
		/* padding-bottom: 21%; */
		position: relative;
		overflow: hidden;
	}

	.top_img .inner {
		width: 1200px;
		margin: 0 auto;
		position: relative;
		height: 350px;
		overflow: hidden;
	}

	.top_ttl {
		font-size: 50px;
		/* height: 350px; */
		z-index: 10;
		padding-left: 24px;
	}

	.top_ttl span {
		font-size: 20px;
		padding-left: 3px;
	}

	.contents {
		position: relative;
		/* transform: skew(0deg, -10deg); */
		/* background: #fff; */
		/*background: url(../img/top/contents_bg_repeat.gif) repeat top left;*/
		overflow: hidden;
		width: 100%;
	}

	.contents .contents_bg {
		/* background: url(../img/top/contents_bg_repeat.gif) repeat top left; */
		/*transform: skew(0, -22deg);
    background: #fff;
    padding: 10% 0 5% 0;
    margin: -10% 0 0 0;*/
	}

	.contents:after,
	.contents_bg:before {
		content: "";
		position: absolute;
		/* bottom: 0; */
		right: 0;
		width: 100%;
		height: 100%;
	}

	.contents .inner {
		max-width: 1200px;
		margin: 0 auto;
		position: relative;
		/*transform: skew(0, 22deg);*/
	}

	.contents:after {
		background: url(../img/common/contents_bg01_pc.png) no-repeat top right;
		/* background-size: 25% auto; */
		content: "";
		position: absolute;
		top: 0;
		right: 66%;
		z-index: 0;
		width: 100%;
		height: 684px;
		background-size: 1200px 684px;
	}

	.contents_bg:before {
		background: url(../img/common/contents_bg02_pc.png) no-repeat bottom left;
		background-size: 49.6% auto;
		background-size: 2400px 1365px;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 0;
		width: 100%;
		height: 1365px;
	}

	section.company_list {
		margin-bottom: 100px;
	}

	section.company_list ul {
		display: flex;
		justify-content: space-between;
	}

	section.company_list ul li {
		position: relative;
		width: 292px;
		height: 310px;
	}

	section.company_list ul li .btn2 {
		position: relative;
		overflow: hidden;
		display: block;
		width: 100%;
		background: #c51528;
		color: #ffffff;
		text-align: center;
		z-index: 2;
		font-weight: bold;
	}

	section.company_list ul li .btn2:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: -70px;
		border-left: 70px solid transparent;
		border-bottom: 80px solid #000000;
		-webkit-transform: translateX(97%);
		transform: translateX(97%);
		transition: 0.5s ease-in-out;
	}

	section.company_list ul li a:hover .btn2:before {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	section.company_list ul li a .btn2 {
		max-width: 300px;
		height: 80px;
		font-size: 18px;
		/* line-height: 1.6; */
	}

	section.company_list ul li p {}

	section.company_list ul li a .btn2>span {
		text-align: left;
		width: 190px;
		height: 80px;
		line-height: 52px;
		display: inline-block;
		padding-left: 90px;
	}

	section.company_list ul li .btn2>span span {
		display: block;
		line-height: 0;
		/* height: auto; */
		font-weight: normal;
		/* margin-right: 25px; */
		font-size: 14px;
	}

	section.company_list ul li .btn2 span:after {
		content: "";
		display: block;
		width: 100px;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(0, -50%);
	}

	section.company_list ul li:first-child .btn2 span:after {
		background: url(../img/common/company_msssage_icon.png) no-repeat center;
		background-size: 13%;
		background-size: 38%;
	}

	section.company_list ul li:nth-child(2) .btn2 span:after {
		background: url(../img/common/company_philosophy_icon.png) no-repeat center;
		background-size: 13.6%;
		background-size: 40%;
	}

	section.company_list ul li:nth-child(3) .btn2 span:after {
		background: url(../img/common/company_outline_icon.png) no-repeat center;
		background-size: 17.1%;
		background-size: 50%;
	}

	section.company_list ul li:last-child .btn2 span:after {
		background: url(../img/common/company_csr_icon.png) no-repeat center;
		background-size: 13.6%;
		background-size: 40%;
	}
}

@media (max-width: 767px) {
	.top_img {
		position: relative;
		border-top: solid 1px #cccccc;
	}

	.top_img .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
		padding-top: 57.3333%;
	}

	.top_ttl {
		font-size: 37px;
		z-index: 2;
		padding-left: 20px;
		left: 20px;
		z-index: 10;
	}

	.top_ttl span {
		font-size: 15px;
	}

	.contents {
		position: relative;
		/* transform: skew(0deg, -10deg); */
		/* background: #fff; */
		background: url(../img/top/contents_bg_repeat.gif) repeat top left;
		/* overflow: hidden; */
		width: 100%;
	}

	.contents .contents_bg {
		/* background: url(../img/top/contents_bg_repeat.gif) repeat top left; */
		transform: skew(0, -25deg);
		background: #fff;
		/* padding: 0 0 5% 0; */
		/* margin: 0 0 0 0; */
	}

	.contents:after,
	.contents:before {
		content: "";
		/* position: absolute; */
		/* bottom: 0; */
		/* right: 0; */
		/* width: 100%; */
		/* height: 100%; */
	}

	.contents .inner {
		width: 92%;
		margin: 0 auto;
		position: relative;
		transform: skew(0, 25deg);
	}

	section.company_list {
		margin-bottom: 80px;
	}

	section.company_list ul {
		font-size: 0;
	}

	section.company_list ul li {
		position: relative;
		width: 47.8%;
		/* min-height: 240px; */
		margin-bottom: 15px;
		display: inline-block;
	}

	section.company_list ul li:nth-child(even) {
		margin-left: 4%;
	}

	section.company_list ul li .btn2 {
		position: relative;
		overflow: hidden;
		display: block;
		width: 100%;
		background: #c51528;
		color: #ffffff;
		text-align: center;
		z-index: 2;
		font-weight: bold;
	}

	section.company_list ul li .btn2:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: -50px;
		border-left: 50px solid transparent;
		border-bottom: 60px solid #000000;
		-webkit-transform: translateX(95.5%);
		transform: translateX(95.5%);
		transition: 0.5s ease-in-out;
	}

	section.company_list ul li a:hover .btn2:before {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	section.company_list ul li a .btn2 {
		/* max-width: 300px; */
		height: 60px;
		font-size: 14px;
		/* line-height: 1.6; */
	}

	section.company_list ul li p {
		position: relative;
	}

	section.company_list ul li a .btn2>span {
		text-align: left;
		width: 60%;
		height: 60px;
		line-height: 40px;
		display: inline-block;
		padding-left: 20px;
	}
  section.company_list ul li a .btn2>span.long{font-size: 0.87em;} 

	section.company_list ul li .btn2>span span {
		display: block;
		line-height: 0;
		/* height: auto; */
		font-weight: normal;
		margin-right: -14px;
		font-size: 10px;
	}

	section.company_list ul li .btn2 span:after {
		content: "";
		display: block;
		width: 50px;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		-ms-transform: translate(-50%, -50%);
		-webkit-transform: translate(-50%, -50%);
		transform: translate(0, -50%);
	}

	section.company_list ul li:first-child .btn2 span:after {
		background: url(../img/common/company_msssage_icon.png) no-repeat center;
		background-size: 13%;
		background-size: 43%;
	}

	section.company_list ul li:nth-child(2) .btn2 span:after {
		background: url(../img/common/company_philosophy_icon.png) no-repeat center;
		background-size: 13.6%;
		background-size: 45%;
	}

	section.company_list ul li:nth-child(3) .btn2 span:after {
		background: url(../img/common/company_outline_icon.png) no-repeat center;
		background-size: 17.1%;
		background-size: 57%;
	}

	section.company_list ul li:last-child .btn2 span:after {
		background: url(../img/common/company_csr_icon.png) no-repeat center;
		background-size: 13.6%;
		background-size: 46%;
	}
}

/* message */

#message .message_block .message_comment p {
	line-height: 2;
	margin-bottom: 30px;
	text-indent: 1em;
}

#message .message_block .message_comment .name {
	font-size: 15px;
	text-align: right;
}

#message .message_block .message_comment .name span {
	margin-top: 10px;
	display: block;
}

#message .message_block .message_comment .name span img {
	width: 150px;
}

#message .towards>h2 {
	font-weight: bold;
	margin: 0 auto;
	text-align: center;
	position: relative;
	padding-bottom: 25px;
}

#message .towards>h2::after {
	content: "";
	display: block;
	width: 50px;
	border-bottom: 3px solid #c51528;
	position: absolute;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0%);
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0);
	z-index: 2;
}

#message .towards ul {
	background: #c51528;
}

#message .towards ul li p {
	font-weight: bold;
	line-height: 1.8;
	color: #ffffff;
}

@media (min-width: 766px) {
	.company .top_img:after {
		content: "";
		position: absolute;
		bottom: -1px;
		left: -66%;
		/* left: 34%; */
		/* right: 0; */
		z-index: 2;
		/*animation: hero-copys-after 2s cubic-bezier(0.08, 1, 0.08, 1);*/
		width: 100%;
		height: 351px;
		margin-left: 50%;
	}

	.top_img {
		background-image: url(../img/company/company_topimg01_pc.jpg);
		background-repeat: no-repeat;
		background-position: center left;
		background-size: cover;
		/* background-image: linear-gradient(150deg, #000 40%, rgba(146, 22, 22, 0.48) 40%), url(../img/company/company_topimg01_pc.jpg); */
	}

	.top_img:after {
		background: url(../img/common/topimg_bg_pc.png) no-repeat bottom right;
		/* background-size: 3690px 1050px; */
		background-size: cover;
	}

	#message .message_block {
		margin-bottom: 100px;
		margin-top: 120px;
	}

	#message .message_block .message_img {
		background: url(../img/company/message_img01_pc.jpg) no-repeat top center;
		background-size: 100% 100%;
		height: 460px;
		position: relative;
		margin-bottom: 50px;
		z-index: 2;
	}

	#message .message_block .message_img h2 {
		font-size: 60px;
		font-weight: bold;
		text-align: left;
		font-style: italic;
		/* position: relative; */
		/* position: absolute; */
		/* top: 0; */
		/* left: 0; */
		/* bottom: inherit; */
		-ms-transform: translate(0, 150%);
		-webkit-transform: translate(0, 150%);
		transform: translate(0, 150%);
		width: 83.3%;
		margin: 0 auto;
	}

	#message .message_block .message_img h2 span {
		display: block;
		font-size: 26px;
	}

	#message .message_block .message_comment {
		width: 83.3%;
		margin: 0 auto;
	}

	#message .message_block .message_comment p {
		font-size: 15px;
	}

	#message .towards {
		margin-bottom: 120px;
	}

	#message .towards>h2 {
		font-size: 30px;
		margin-bottom: 40px;
	}

	#message .towards ul {
		display: flex;
		justify-content: space-evenly;
		padding: 30px 0;
	}

	#message .towards ul li {
		max-width: 240px;
		width: 20%;
		position: relative;
	}

	#message .towards ul li+li {
		border-left: solid 1px #d75c69;
	}

	#message .towards ul li p {
		font-size: 17px;
		text-align: center;
		padding-bottom: 25px;
	}

	#message .towards ul li:before {
		content: "";
		display: block;
		height: 100px;
	}

	#message .towards ul li:first-child:before {
		background: url(../img/company/message_towards_icon01.png) no-repeat center;
		background-size: 29.1% auto;
	}

	#message .towards ul li:nth-child(2):before {
		background: url(../img/company/message_towards_icon02.png) no-repeat center;
		background-size: 20.8% auto;
	}

	#message .towards ul li:nth-child(3):before {
		background: url(../img/company/message_towards_icon03.png) no-repeat center;
		background-size: 18.75% auto;
	}

	#message .towards ul li:nth-child(4):before {
		background: url(../img/company/message_towards_icon04.png) no-repeat center;
		background-size: 21.6% auto;
	}

	#message .towards ul li:last-child:before {
		background: url(../img/company/message_towards_icon05.png) no-repeat center;
		background-size: 27% auto;
	}
}

@media (min-width:767px) and (max-width:1200px) {
	.company .top_img:after {
		left: -65%;
	}
}

@media (max-width: 767px) {
	.company .top_img:after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 2;
		/* animation: hero-copys-after 2s cubic-bezier(0.08, 1, 0.08, 1); */
		width: 100%;
		height: 100%;
	}

	.top_img:after {
		background: url(../img/company/company_topimg01_sp.png) no-repeat top right;
		background-size: 100% 100%;
	}

	#message .message_block {
		margin-bottom: 70px;
		margin-top: 80px;
	}

	#message .message_block .message_img {
		background: url(../img/company/message_img01_sp.jpg) no-repeat top center;
		background-size: contain;
		height: auto;
		position: relative;
		margin-bottom: 40px;
		padding-bottom: 100%;
	}

	#message .message_block .message_img h2 {
		font-size: 9vw;
		font-weight: bold;
		text-align: left;
		font-style: italic;
		width: 100%;
		line-height: 1.8;
		margin: 0 auto;
		position: absolute;
		bottom: 0;
		left: 0;
		-ms-transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}

	#message .message_block .message_img h2 span {
		display: block;
		font-size: 16px;
	}

	#message .message_block .message_comment p {
		font-size: 14px;
	}

	#message .message_block .message_comment .name {
		font-size: 14px;
	}

	#message .towards {
		margin-bottom: 80px;
	}

	#message .towards>h2 {
		font-size: 24px;
		margin-bottom: 30px;
	}

	#message .towards ul li {
		width: 91.3%;
		margin: 0 auto;
	}

	#message .towards ul li+li {
		border-top: solid 1px #d75c69;
	}

	#message .towards ul li p {
		font-size: 14px;
		text-align: left;
		display: inline-block;
		vertical-align: middle;
		width: 70%;
	}

	#message .towards ul li:before {
		content: "";
		display: inline-block;
		width: 25%;
		height: 100px;
		vertical-align: middle;
	}

	#message .towards ul li:first-child:before {
		background: url(../img/company/message_towards_icon01.png) no-repeat center;
		background-size: 59.3% auto;
	}

	#message .towards ul li:nth-child(2):before {
		background: url(../img/company/message_towards_icon02.png) no-repeat center;
		background-size: 43.8% auto;
	}

	#message .towards ul li:nth-child(3):before {
		background: url(../img/company/message_towards_icon03.png) no-repeat center;
		background-size: 39.3% auto;
	}

	#message .towards ul li:nth-child(4):before {
		background: url(../img/company/message_towards_icon04.png) no-repeat center;
		background-size: 45.6% auto;
	}

	#message .towards ul li:last-child:before {
		background: url(../img/company/message_towards_icon05.png) no-repeat center;
		background-size: 56.3% auto;
	}
}

/*▼ 企業情報 ▼*/
#outline h2.sec_ttl {
	font-weight: bold;
	margin: 0 auto;
	text-align: center;
	position: relative;
	padding-bottom: 25px;
}

#outline h2.sec_ttl::after {
	content: "";
	display: block;
	width: 50px;
	border-bottom: 3px solid #c51528;
	position: absolute;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0%);
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0);
	z-index: 2;
}

.profile table {
	vertical-align: top;
	border-top: solid 1px #dddddd;
	color: #333;
}

.profile table tr {
	border-bottom: solid 1px #dddddd;
	display: block;
}

.profile table tr th,
.profile table tr td {
	display: inline-block;
	vertical-align: top;
}

.profile table tr th {
	font-weight: bold;
	width: 20%;
}

.profile table tr th.long {
	width: 50%;
}

.profile table tr td ol>li {
	list-style: inherit;
}

.profile table tr td ol>li>ul>li {
	text-indent: -1.5em;
	margin-left: 2em;
}

.profile table tr td ol>li>ul>li::before {
	position: relative;
	top: -2px;
	left: -8px;
	display: inline-block;
	width: 7px;
	height: 7px;
	content: '';
	border-radius: 100%;
	background: #c51528;
}

.profile a {
	color: #c51528;
	position: relative;
	text-decoration: none;
	overflow: hidden;
	z-index: 1;
	cursor: pointer;
}

.profile a:hover {
	opacity: .7;
}

.profile a.pdf::before {
	content: "";
	background: url(../img/common/pdf_icon.gif) no-repeat top center;
	background-size: contain;
	width: 13px;
	height: 16px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
}


/* ====================
CSR
==================== */
.human h3,
.earth h3 {
	background: #f5f5f5;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.5;
	padding: 15px 0 15px 30px;
	margin-bottom: 30px;
	letter-spacing: -0.4px;
}
.csr .csrContent p {
	font-size: 15px;
	margin-bottom: 1.5em;
}
.csr .csrContent p.h_sub {margin-bottom: 0;}
.csr .csrContent p.h_sub span{
  position: relative;
  vertical-align: middle;
  color: #c51528;
  letter-spacing: 0.07rem;
}
.csr .csrContent p.h_sub span::before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1.5rem;
  height: 2px;
  background: #c51528;
  margin-right: 0.5rem;
}


.csr .csrContent ul li {
	padding-left: 1em;
	text-indent: -0.37em;
	font-size: 15px;
	margin-bottom: 1em;
}

.csr .csrContent li:before {
	position: relative;
	top: -2px;
	left: -8px;
	display: inline-block;
	width: 5px;
	height: 5px;
	content: '';
	border-radius: 100%;
	background: #c51528;
}


.csr p .em {
	font-weight: bold;
	color: #c51528;
}

.csrSlogan {
	position: relative;
	margin-top: 170px;
	margin-bottom: 100px;/*240px*/
}

.csrSlogan .text {
	background: #f5f5f5;
	padding: 60px 57px 60px 57px;
	width: 750px;
	box-sizing: border-box;
}

.csrSlogan .logo img {
	width: 40px;
}

.csrSlogan .text h2 {
	font-weight: bold;
	font-size: 40px;
	font-style: italic;
	margin-bottom: 18px;
	z-index: 100;
	position: relative;
	letter-spacing: -2.5px;
	margin-top: 18px;
}

.csrSlogan .text p {
	font-size: 15px;
	line-height: 2;
	z-index: 100;
	position: relative;
	width: 440px;
}

.csrSlogan .image {
	position: absolute;
	right: 0;
	top: -52px;
}

.csrSlogan .image .img1 img {
	max-width: 750px;
}

.csrSlogan .image .img2 {
	position: relative;
	top: -30px;
	left: -57px;
}

.csrSlogan .image .img2 img {
	max-width: 300px;
}



@media screen and (min-width: 766px) {
	#outline h2.sec_ttl {
		font-size: 30px;
		margin-bottom: 40px;
	}

	.profile {
		margin-top: 100px;
		margin-bottom: 120px;
		position: relative;
		z-index: 2;
	}

	.profile table {
		width: 47%;
		float: left;
	}

	.profile table+table {
		margin-left: 60px;
	}

	.profile table tr {
		padding: 20px 30px;
	}

	.profile table tr th,
	.profile table tr td {
		font-size: 15px;
		line-height: 2;
	}

	.profile .profileBlock {
		display: flex;
		justify-content: space-between;
	}

	.csr>ul>li {
		width: 570px;
		padding-bottom: 70px;
		float: left;
		line-height: 2;
	}

	.csr>ul>li:nth-child(even) {
		float: right;
	}

	.csrContent .image {
		margin-top: 30px;
	}

	.csrContent .image.image1 {
		margin-top: 90px;
	}
	.csrContent .image.image2 {
		margin-top: 135px;
	}
	.csrContent .image.image3 {
		margin-top: 150px;
	}

	.csrSlogan .text p {
		width: 440px;
	}
  .csr>ul>li.long {
		width: 100%;
		padding-bottom: 70px;
		float: none;
		line-height: 2;
	}

}

@media screen and (max-width: 767px) {
	#outline h2.sec_ttl {
		font-size: 24px;
		margin-bottom: 30px;
	}

	.profile {
		margin-top: 80px;
		margin-bottom: 80px;
	}

	.profile table {
		width: 100%;
	}

	.profile table+table {
		border-top: none;
	}

	.profile table tr {
		padding: 20px 0;
	}

	.profile table tr th,
	.profile table tr td,
	.profile .profileBlock span.f_right {
		font-size: 14px;
		line-height: 1.7;
	}
  
  .profile table tr th.long{display: block; width: 100%;}

	.profile table tr td ol {
		margin: 0 auto 7% 5%;
		width: 100%;
	}

	.profile table tr td ol>li>ul>li {
		text-indent: -0.5em;
		margin-left: 1em;
		width: 100%;
	}
	.profile table tr td ol>li>ul>li::before {
		position: relative;
		top: -4px;
		width: 4px;
		height: 4px;

	}

	.csrSlogan .text p {
		width: 100%;
	}

}



.enkaku {
    position: relative;
    z-index: 2;
    color: #333;
}
.dlbox {
	border-bottom: 1px solid #dddddd;
}
.dlbox:nth-of-type(1) {
	border-top: 1px solid #dddddd;
}
.enkaku figure {
	margin: 0;
}
	.dlbox .c1 .year{
		display: flex;
	}
	.dlbox .c1 .year .seireki {
		color: #c51528;
		font-weight: bold;
	}

.enkaku .dlbox .c1 ul {
	margin-top: 20px;
}

.enkaku .dlbox .c1 ul>li {
    text-indent: -1.5em;
    margin-left: 2em;
}
.enkaku .dlbox .c1 ul>li::before {
    position: relative;
    top: -2px;
    left: -8px;
    display: inline-block;
    width: 7px;
    height: 7px;
    content: '';
    border-radius: 100%;
    background: #c51528;
}
	.dlbox .c2.picf .txt{
		display: flex;
/*		justify-content: space-between;*/
	}
	.dlbox .c2 .txt .obj{
		display: flex;
	}
@media screen and (min-width: 766px) {
	.enkaku {
	    margin-top: 100px;
	    margin-bottom: 120px;
	    position: relative;
	    z-index: 2;
	    font-size: 15px;
	}
	.dlbox {
		padding: 30px;
		display: flex;
	}
	.dlbox .c1{
		width: 235px;
	}
	.dlbox .c1 .year{
		flex-direction: column;
	}
	.dlbox .c1 .year .seireki {
		font-size: 30px;
	}
	.dlbox .c1{
		justify-content: space-between;
	}
	.dlbox .c2{
		width: 905px;
	}
	.dlbox .c2.picf{
		display: flex;
		justify-content: space-between;
	}
	.dlbox .c2.picf .txt{
		width: 420px;
	}
	.dlbox .c2.picf .txt .mc1{
		width: 80px;
	}
	.dlbox .c2 .txt .obj .mc1{
		width: 80px;
		margin-bottom: 10px;
	}
	.dlbox .c2.picf .txt .mc2{
		width: 334px;
	}
	.dlbox .c2 .pic{
		text-align: right;
		width: 450px;
	}
	.dlbox .c2 .pic figure figcaption{
		margin-top: 10px;
		color: #888;
	}
	.dlbox:nth-of-type(3) .c2 .pic figure img {
		width: 303px;
	}
	.dlbox:nth-of-type(5) .c2 .pic figure img {
		width: 303px;
	}
	.dlbox:nth-of-type(7) .c2 .pic figure img {
		width: 303px;
	}
	.dlbox:nth-of-type(8) .c2 .pic figure img {
		width: 303px;
	}
	.dlbox:nth-of-type(15) .c2 .pic figure img {
		width: 604px;
	}

.dlbox:nth-of-type(15) .c2.picf .txt {
	width: 265px;
} 
.dlbox:nth-of-type(15) .c2.picf .txt .mc2 {
    width: 172px;
}
.dlbox:nth-of-type(15) .c2 .pic {
    text-align: right;
    width: 604px;
}

	.dlbox:nth-of-type(17) .c2 .pic figure img {
		width: 303px;
	}
.dlbox:nth-of-type(17) .c2.picf .txt,
.dlbox:nth-of-type(17) .c2.picf .txt .mc2 {
    width: 500px;
}

	.dlbox:nth-of-type(18) .c2 .pic figure img {
		width: 161px;
	}

.dlbox:nth-of-type(18) .c2 .txt,
.dlbox:nth-of-type(18) .c2 .txt .mc2 {
    width: 500px;
}

.mcf {
	display: flex;
}


.txt.mcf .mc1 {
	width: 80px;
}
.nengo {
	font-weight: bold;
}

}
@media screen and (max-width: 767px) {
	.enkaku {
	    font-size: 14px;
	    margin-bottom: 80px;
	 }
	.dlbox{
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.dlbox .c1 .year{
		align-items: flex-end;
	}
	.dlbox .c1 .year .seireki{
		width: 85px;
		font-size: 28px;

	}
	.dlbox .c1 .year .nengo{
		font-weight: bold;
		margin-bottom: 5px;
		line-height: 1;
	}
	.dlbox .c2 .txt{
		margin-top: 20px;
	}
	.dlbox .c2 .txt .obj{
		margin-bottom: 8px;
	}
	.dlbox .c2 .txt .mc1{
		width: 20%;
	}
	.dlbox .c2 .txt .mc1 + .mc2{
		width: 80%;
	}
	.dlbox .c2 .pic{
		margin-top: 20px;
		text-align: center;
	}
	.dlbox:nth-of-type(1) .c2 .pic figure img {
		width: 258px;
	}
	.dlbox .c2 .pic figure figcaption {
		font-size: 12px;
		color: #888;
		margin-top: 8px;
	}
	.dlbox:nth-of-type(3) .c2 .pic figure img {
		width: 173px;
	}
	.dlbox:nth-of-type(4) .c2 .pic figure img {
		width: 260px;
	}
	.dlbox:nth-of-type(7) .c2 .pic figure img {
		width: 174px;
	}
	.dlbox:nth-of-type(8) .c2 .pic figure img {
		width: 174px;
	}
	.dlbox:nth-of-type(15) .c2 .pic figure img {
		width: 100%;
	}
	.dlbox:nth-of-type(17) .c2 .pic figure img {
		width: 174px;
	}
	.dlbox:nth-of-type(18) .c2 .pic figure img {
		width: 92px;
	}
	.dlbox .c2 .txt.mcf {
		display: flex;
	}
	.enkaku .dlbox .c1 ul>li::before{
	    top: -4px;
	    width: 4px;
	    height: 4px;

	}


}



.office h3 {
	background: #f5f5f5;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.5;
	padding: 15px 30px;
	margin-bottom: 30px;
}

iframe {
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}

.accessmap .accessImg span {
	color: #888888;
	line-height: 2;
}

.accessmap .accessImg ul li {
	line-height: 2;
}

.accessmap .access_txt .blok p span.train img {
	width: 22px;
}

.accessmap .access_txt .blok p span.car img {
	width: 30px;
}

.accessmap .access_txt .blok p {
	color: #c51528;
	margin-bottom: 10px;
}

.guidemap {
	max-width: 268px;
	height: 44px;
	font-size: 15px;
	line-height: 44px;
	position: relative;
	overflow: hidden;
	display: block;
	width: 100%;
	background: #c51528;
	color: #ffffff;
	text-align: center;
	z-index: 2;
	font-weight: bold;
	margin-top: 10px;
}
.guidemap:before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -50px;
    border-left: 50px solid transparent;
    border-bottom: 44px solid #000000;
    -webkit-transform: translateX(97%);
    transform: translateX(97%);
    transition: 0.5s ease-in-out;
}
.guidemap:hover:before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

.office_cat{
  width: 100%;
	font-weight: bold;
	position: relative;
}
.office_cat:before {
	content: "";
	display: inline-block;
	height: 100%;
	border-left: 3px solid #c51528;
	position: absolute;
	bottom: 0;
	z-index: 2;
}


@media screen and (min-width: 766px) {
	.accessmap {
		margin-bottom: 80px;
	}

	.accessmap .f-right {
		float: right;
	}

	.accessmap .accessImg {
		width: 575px;
		font-size: 15px;
		color: #333333;
		border-bottom: solid 1px #dddddd;
	}

	.accessmap .accessImg p {
		margin-bottom: 40px;
		margin-left: 30px;
		width: 200px;
		height: auto;
		float: right;
	}

	.accessmap .accessImg ul li:nth-child(even) {
		margin-left: 0;
	}
  
  .accessmap .accessImg ul.noimg{padding-bottom: 30px;} 

	.accessmap .access_txt {
		width: 575px;
		font-size: 15px;
		color: #333333;
	}

	.accessmap .access_txt .blok {
		margin-top: 20px;
	}

	.accessmap .access_txt .blok p span {
		padding-right: 20px;
		display: inline-block;
		vertical-align: middle;
	}

	.accessmap .map {
		width: 575px;
		height: 500px;
		float: left;
	}

	.accessmap .map iframe {
		width: 100%;
		height: 100%;
	}

	.accessmap>ul {
		/*	display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-moz-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;*/
	}

	.accessmap ul li {
		width: 570px;
		/* margin-bottom: 60px; */
		line-height: 2;
	}

  #other.accessmap{
    float: none;
    display: block;
  }
  #other.accessmap > ul{
    display: flex; 
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #other.accessmap > ul > li {
		/*float: left;*/
	}
  .office_cat {
    font-size: 24px!important;
    margin-left: 30px;
    height: 50px;
    line-height: 50px;
    margin-bottom: 40px;
  }

 .office_cat:before {
    left: -30px;
  }

	/*#other.accessmap>ul>li:nth-child(even) {
		float: right;
	}*/
	.accessmap ul li h3 {
		/* font-size: 20px; */
		/* font-weight: 600; */
		/* margin-bottom: 15px; */
		/* line-height: 40px; */
	}

	.container .inner .accessmap ul li h3 span img {
		width: 58px;
		height: auto;
		margin-right: 10px;
	}

	.accessmap ul li .map {
		width: 570px;
		height: 350px;
		float: none;
		/* margin-bottom: 20px; */
	}

	.accessmap ul li .map iframe {
		width: 100%;
		height: 100%;
	}

	.accessmap ul li .address p {
		/* width:230px; */
		/* float: left; */
	}

	.accessmap ul li .address ul {
		/* float: left; */
		/* display: block; */
		margin-top: 20px;
	}

	.accessmap ul li .address ul li {
		font-size: 15px;
		color: #333333;
	}

	.accessmap ul li .address {
		margin-bottom: 70px;
	}
}

@media screen and (max-width: 767px) {
	.accessmap {}

	.office h3 {
		font-size: 20px;
		padding: 3%;
	}

	.accessmap .accessImg {
		width: 100%;
		font-size: 14px;
		line-height: 2;
		border-bottom: solid 1px #dddddd;
		padding-bottom: 30px;
	}

	.accessmap .accessImg p {
		background: #f5f5f5;
	}

	.accessmap .accessImg p img {
		width: 58%;
		margin: 0 auto 5%;
		display: block;
	}

	.accessmap .access_txt {
		font-size: 14px;
		color: #333333;
	}

	.accessmap .access_txt .blok {
		margin: 30px 0;
	}

	.accessmap .access_txt .blok p span {
		padding-right: 10px;
		display: inline-block;
		vertical-align: middle;
	}

	.accessmap .map {
		width: 100%;
		float: none;
		position: relative;
		padding-bottom: 75%;
		padding-top: 30px;
		height: 0;
		overflow: hidden;
		margin-bottom: 60px;
	}

	.accessmap .map iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.accessmap ul li {
		width: 100%;
		line-height: 2;
	}

	.accessmap ul li .address {
		margin-bottom: 50px;
	}

	.accessmap ul li .address ul {
		font-size: 14px;
	}

	#other.accessmap .map {
		margin-bottom: 20px;
	}
  .office_cat {
		margin-left: 15px;
		margin-bottom: 30px;
		font-size: 20px!important;
	}
	.office_cat:before {
		left: -15px;
	}

	.csrSlogan {
		margin-top: 220px;
		margin-bottom: 54px;
	}

	.csrSlogan .image {
		right: initial;
		top: -140px;
	}

	.csrSlogan .image .img1 img {
		width: 315px;
	}

	.csrSlogan .image .img2 {
		left: initial;
		text-align: right;
		/* width: 45%; */
		right: -45px;
	}

	.csrSlogan .image .img2 img {
		width: 150px;
	}

	.csrSlogan .text {
		padding: 80px 4% 22px;
		margin-left: -4%;
		margin-right: -4%;
		width: auto;
	}

	.csrSlogan .text h2 {
		margin-top: 18px;
		font-size: 28px;
	}

	.human h3,
	.earth h3 {
		font-size: 20px;
		padding: 12px 15px;
	}

	.csrContent {
		margin-bottom: 1.5em;
	}

}

section.group ul li {
	background: #f5f5f5;
}

section.group ul li .group_name {
	font-weight: bold;
}

section.group ul li .group_business span {
	font-weight: bold;
	display: block;
}

section.group ul li .group_link a {
	color: #c51528;
	line-height: 2;
}

section.group ul li .group_link a:hover {
	opacity: .7;
}

section.group ul li .group_link a:before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-left: 7px solid #c51528;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	margin-right: 10px;
}

@media (min-width: 766px) {
	section.group ul {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-moz-box-lines: multiple;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 90px;
	}

	section.group ul li {
		width: 585px;
		/* float: left; */
		padding: 30px 40px;
		box-sizing: border-box;
		margin-bottom: 30px;
		/* display: inline-block; */
		/* vertical-align: top; */
	}

	section.group ul li:nth-child(even) {
		/* float: right; */
		margin-left: 30px;
	}

	section.group ul li .group_name {
		font-size: 20px;
		margin-bottom: 10px;
	}

	section.group ul li .group_address {
		font-size: 15px;
		line-height: 2;
		margin-bottom: 20px;
	}

	section.group ul li .group_business {
		font-size: 15px;
		line-height: 2;
		margin-bottom: 30px;
	}

	section.group ul li .group_link {
		font-size: 15px;
	}
}

@media (max-width: 767px) {
	section.group ul {
		margin-bottom: 70px;
	}

	section.group ul li {
		padding: 25px;
		box-sizing: border-box;
		margin-bottom: 30px;
		/* display: inline-block; */
		/* vertical-align: top; */
	}

	section.group ul li:nth-child(even) {}

	section.group ul li .group_name {
		font-size: 18px;
		margin-bottom: 10px;
	}

	section.group ul li .group_address {
		font-size: 14px;
		line-height: 2;
		margin-bottom: 10px;
	}

	section.group ul li .group_business {
		font-size: 14px;
		line-height: 2;
		margin-bottom: 20px;
	}

	section.group ul li .group_link {
		font-size: 14px;
	}
}

/* 経営理念 */
#philosophy h2.sec_ttl {
	font-weight: bold;
	margin: 0 auto;
	text-align: center;
	position: relative;
	padding-bottom: 25px;
}

#philosophy h2.sec_ttl:after {
	content: "";
	display: block;
	width: 50px;
	border-bottom: 3px solid #c51528;
	position: absolute;
	bottom: 0;
	left: 50%;
	-ms-transform: translate(-50%, 0%);
	-webkit-transform: translate(-50%, 0%);
	transform: translate(-50%, 0);
	z-index: 2;
}

.missionStatement {
	background: url(../img/company/philosophy_bg.jpg) no-repeat center center;
	background-size: cover;
	padding: 38px 145px;
	box-sizing: border-box;
	text-align: center;
	margin-top: 116px;
	margin-bottom: 110px;
}

.missionStatementInner {
	background: rgba(255, 255, 255, 0.7);
	padding: 48px;
	text-align: center;
	display: inline-block;
}

.missionStatement p {
	line-height: 2;
	font-size: 15px;
}

#philosophy .bigText {
	font-size: 36px;
	color: #c51528;
	text-align: center;
	font-weight: bold;
	margin-bottom: 26px;
	line-height: 1;
}



.identity li:before {
	content: "";
	display: block;
	height: 50px;
	margin-bottom: 20px;
}



.identity li {
	position: relative;
	width: 392px;
	background: #f5f5f5;
	box-sizing: border-box;
	padding: 50px 40px 40px;
	text-align: center;
}

.identity li h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
	line-height: 1.8;
}

.identity li p {
	font-size: 14px;
	line-height: 1.9;
	text-align: left;
}

.identity li:first-child:before {
	background: url(../img/company/philosophy_ico01.png) no-repeat center center;
}

.identity li:nth-child(2):before {
	background: url(../img/company/philosophy_ico02.png) no-repeat center center;
}

.identity li:last-child:before {
	background: url(../img/company/philosophy_ico03.png) no-repeat center center;
}

@media (min-width: 766px) {

	#philosophy h2.sec_ttl {
		font-size: 30px;
		margin-bottom: 40px;
	}

	#philosophy .missionStatement .bigText {
		font-size: 36px;
	}

	.identity ul {
		display: flex;
		justify-content: space-between;
	}

	.identity {
		margin-bottom: 110px;
	}



}

@media (max-width: 767px) {
	.missionStatement {
		background: url(../img/company/philosophy_bg_sp.jpg) no-repeat center center;
		background-size: cover;
		margin-top: 80px;
		padding: 50px 30px;
		margin-bottom: 75px;
	}

	.missionStatementInner {
		padding: 24px 15px 15px;
	}

	#philosophy h2.sec_ttl {
		font-size: 24px;
		margin-bottom: 20px;
	}

	#philosophy .bigText {
		font-size: 26px;
		line-height: 1.7;
	}

	#philosophy .missionStatement .bigText {
		font-size: 26px;
		margin-bottom: 12px;
	}

	.missionStatement p {
		text-align: left;
	}

	.identity {
		margin-bottom: 78px;
	}

	.identity li {
		width: 100%;
		margin-bottom: 10px;
		padding: 27px 15px;
	}
}


/* ====================

CSR関係追加

==================== */

.ex_content .modal_list{
  background: #fff;
  /*box-shadow: 0 2px 6px rgba(0, 0, 0, .15);*/
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 12px rgba(128, 128, 128, 0.1) ;
  /*アニメーションの設定*/
  transition: all .3s;
  padding:30px;
  margin:10px;
  border-radius: calc(0.5vw + 10px);
}
.ex_content .modal_list:hover{
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.3), 0 0 20px rgba(128, 128, 128, 0.1) ;
  border-color: transparent;
}
.ex_content .modal_list .title{
  font-weight: 700;
  line-height: 1.5;
}
.list_box{
  /*background: #f5f5f5*/;
  margin-bottom:30px;
  padding:15px 10px 30px;
  box-sizing: border-box;
  border: 1px solid #c51528;
}
.list_box.end{margin-bottom:60px;}
.list_box h3{
  margin-bottom: 5px;
  color:#c51528;
  background:#fff;
}
.list_box ul{
  padding-left:30px;
  position: relative;
  z-index: 2;
}
.list_box ul li{margin-bottom: 0.5em!important;}
.people_ex h4{
  background: #c51528;
  color:#fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  padding: 8px 0 8px 15px;
  margin-bottom: 20px;
  letter-spacing: -0.4px;
}
.read{padding-bottom: 1.5em;}

.ex_content{padding-bottom:70px;}
.ex_content .modal_list {
  position: relative;
}
@media screen and (min-width: 766px) {
  .ex_content .modal_list .thumb{overflow:hidden;}
  .ex_content .modal_list .thumb img{transition:1s all;}
  .ex_content .modal_list:hover .thumb img{
    transform:scale(1.1,1.1);
    transition:1s all;
  }
}
.ex_content .modal_list .title{
  font-size: 18px;
  margin:25px 0 0.7rem;
  position: relative;
  z-index: 2;
  transition: all .7s;
}
.ex_content .modal_list:hover .title{color:#c51528;}
.ex_content .modal_list .category{
  font-size: 12px;
  position: relative;
  z-index: 2;
  margin: 0;
}
.ex_content .modal_list .number{
  font-size: 70px;
  font-weight: 700;
  color:#e5e5e5;
  opacity: 0.5;
  position: absolute;
  bottom:-25px;
  left:0.7rem;
  margin: 0;
}

/*矢印が右に移動する*/
.btnarrow4{
  /*矢印と下線の基点とするためrelativeを指定*/
  position: absolute;
  right:20px;
  bottom: 20px;
  /*形状*/
  display: inline-block;
  padding: 0 10px 0 12px;
  color: #333;
  text-decoration: none;
  outline: none;
  font-size: 10px!important;
  font-weight: bold;
  letter-spacing: 0.1rem;
}

/*矢印と下線の形状*/
.btnarrow4::before{
  content: '';
  /*絶対配置で下線の位置を決める*/
  position: absolute;
  bottom:-1px;
  left:15%;
  /*下線の形状*/    
  width: 85%;
  height: 1px;
  background:#333;
  /*アニメーションの指定*/
  transition: all .3s;
  z-index: 1;
}

.btnarrow4::after{
  content: '';
  /*絶対配置で矢印の位置を決める*/
  position: absolute;
  bottom:2px;
  right:0;
  /*矢印の形状*/    
  width: 7px;
  height:1px;
  background:#333;
  transform: rotate(45deg);
  /*アニメーションの指定*/
  transition: all .3s;
  z-index: 1;
}

/*hoverした際の移動*/
.ex_content .modal_list:hover .btnarrow4::before{
    left:20%;
}

.ex_content .modal_list:hover .btnarrow4::after{
    right:-5%;
}

.remodal{
  border-radius: calc(1vw + 10px);
}
.remodal .remodal-ttl{
  font-size: 26px;
  font-weight: bold;
  line-height: 1.5;
  padding: 8px 0;
  letter-spacing: -0.4px;
}
.remodal .category{
  font-size: 12px;
  padding-bottom:12px;
}
.remodal .remodal-lead{
  text-align: left!important;
  padding: 2rem 0;
  line-height: 1.75;
}
.remodal .remodal-lead li {
	padding-left: 1em;
	text-indent: -0.37em;
	font-size: 15px;
	margin-bottom: 1em;
}
.remodal .remodal-lead li:last-child{margin-bottom: 0;}
.remodal .remodal-lead li:before {
	position: relative;
	top: -2px;
	left: -8px;
	display: inline-block;
	width: 5px;
	height: 5px;
	content: '';
	border-radius: 100%;
	background: #c51528;
}
.remodal .remodal-lead a{
  color: #c51528;
  text-decoration: underline;
}


.people_ex.human{padding-bottom:20px;}

.chikanista {
    box-sizing: border-box;
		position: relative;
		overflow: hidden;
		display: block;
		background: #12c2e9;  /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #f64f59, #c471ed, #12c2e9);  /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to right, #f64f59, #c471ed, #12c2e9); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
		color: #fff;
		z-index: 2;
	}
	.chikanista:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		-webkit-transform: translateX(97%);
		transform: translateX(97%);
		transition: 0.5s ease-in-out;
	}

	.chikanista:hover:before {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

.chikanista .title{
  margin: 0 auto 0.15em;
  box-sizing: border-box;
}
.chikanista p{
  line-height: 1.75;
  margin: 0!important;
  color: #fff;
}
.chikanista a{}
.chikanista a img{}

.sub_image{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  margin: 0 auto 2rem;
  max-width:480px;
}
.sub_image img{
  width:50%;
  font-family: 'object-fit: contain;';
  object-fit: contain;
  margin: 0 auto;
}

.csrContent.flex .image_long figcaption{color: #888;}

@media (min-width: 766px) {
  .csrContent > figure{
    width: 80%;
    max-width: 500px;
    margin:0 auto 25px;
  }
  .csrContent.flex{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
		-webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .csrContent.flex.reverse{
    -webkit-box-orient: horizontal;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: row-reverse;
  	flex-direction: row-reverse; 
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;   
  }
  .csrContent.flex .image_long{
    width:570px;
    margin: 0;
  }
  .csrContent.flex .image_long.bottom{margin-top: auto!important;}
  .csrContent.flex .image_long.bottom.up{padding-bottom: 137px;}
  .csrContent.flex .txt_wrap{
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
    width: 570px;
    box-sizing: border-box;
  }
  .csrContent.flex.reverse .txt_wrap{
    display: block;
    width: calc(100% - 570px);
  }
  .csrContent.flex.reverse .txt_wrap{padding-left:45px;}
  .csrContent.people{
    margin-top: -25px;
    background:url(../img/company/csr_txt02.png) no-repeat center center;
  }
  .csrContent.earth{
    margin-top: -25px;
    background:url(../img/company/csr_txt01.png) no-repeat center center;
  }
  br.sp_only{display: none;}
  .chikanista{
    width: 80%;
    padding: 1.5em 1.5em 1em;
    margin: 1.5em 0;
  }
  .chikanista:before {
		left: -70px;
		border-left: 70px solid transparent;
    border-bottom: 100px solid #000000;
  }
  .chikanista .title{width: 85%;}
  .chikanista p{font-size: 14px!important;}
}

@media (max-width: 767px) {
  br.sp_only{display: block;}
  .chikanista{
    width: 100%;
    padding: 1.5em 1.5em 1em;
    margin: 1.5em 0 2em;
  }
  .chikanista:before {
		left: -70px;
		border-left: 70px solid transparent;
    border-bottom: 80px solid #000000;
  }
  .chikanista .title{width: 100%;}
  .chikanista p{font-size: 12px!important;}
}

/* slickのドット */

.original-dots {
  bottom: -33px;
  text-align: center;
  margin-bottom: 30px;
}
.original-dots li {
  position: relative;
  display: inline-block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  cursor: pointer;
}
.original-dots li button {
  font-size: 0;
  line-height: 0;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  text-indent: -9999px;
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 8px;
  outline: 0;
  border-radius: 5px;
  transition-duration: 0.3s;
}
.original-dots li button:before {
  content: none;
}
.original-dots li button {
  background: #888;
}
.original-dots li button:hover, .original-dots li.slick-active button {
  border-radius: 0px;
  width: 12px;
  height: 12px;
  background: #c51528;
}


/*  */
@media (min-width: 766px) {}

@media (max-width: 767px) {}


/* 会社概要の追加 */
#enkaku,#office,#group{
  padding-top: 150px;
  margin-top: -150px;
}
@media (min-width: 769px) {.spon{display: none;}}
@media (max-width: 768px) {
  .spon{display: block;}
  #enkaku,#office,#group{
    padding-top: 100px;
    margin-top: -100px;
  }
}

