@charset "utf-8";





/*----------------------------------- 
      #sec1　企業理念
-----------------------------------*/

#sec1 {
	padding-top: 100px;
	margin-top: -100px;
}


.sec1-box1 {
	padding: 0 0 3%;
}
.sec1-box1 h2 {
	text-align: center;
}


.sec1-box2 {
    background: url(../img/about/sec1-bg.jpg) center 0 no-repeat;
	padding: 5% 4% 8%;
	position: relative;
	background-size: cover;
}
.sec1-box2::before {
    background:linear-gradient(45deg, #A1000D 0%, #A1000D 5%, transparent 5%, transparent 100%); 
	width: 100%;
	height: 100%;
    display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.sec1-box2 h3 {
	width: 25%;
	max-width: 173px;
	margin: 0 auto 3%;
}
.sec1-box2 ul {
	text-align: center;
	position: relative;
	z-index: 2;
}
.sec1-box2 ul li {
    display: inline-block;
	vertical-align: top;
	width: 32%;
	max-width: 300px;
	padding: 5% 3%;
	background-color: rgba( 255, 255, 255, 0.7 );
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: left;
	line-height: 1.8;
	box-sizing: border-box;
}
.sec1-box2 ul li em {
	color: #E50012;
	font-weight: bold;
}
.sec1-box2 ul li strong {
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
}
.sec1-box2 ul li:nth-child(1) ,.sec1-box2 ul li:nth-child(3) {
	margin-top: -15%;
}
.sec1-box2 ul li:nth-child(2) {
	margin: 0 4%;
}
@media screen and (max-width: 1100px){
	.sec1-box2 ul li {
		display: block;
		width: 100%;
		max-width: inherit;
		padding: 5% 5%;
	}
	.sec1-box2 ul li:nth-child(1) ,.sec1-box2 ul li:nth-child(3) {
		margin-top: 0;
		margin-bottom: 3%;
	}
	.sec1-box2 ul li:nth-child(2) {
		margin: 0 0 3%;
	}
}
@media screen and (max-width: 640px){
	.sec1-box2 ul li {
		font-size: 16px;
		font-size: 1.6rem;
	}
	.sec1-box2 ul li strong {
		font-size: 22px;
		font-size: 2.2rem;
	}
}


.sec1-box3 {
	background:linear-gradient(45deg, #A1000D 0%, #A1000D 75%, #BF000F 75%, #BF000F 100%);
	padding: 2% 4% 15%;
	color: #fff;
}
.sec1-box3 dl {
    max-width: 1020px;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.sec1-box3 dl dt {
    width: 48%;
    max-width: 532px;
}
.sec1-box3 dl dd {
    width: 48%;
    max-width: 480px;
	margin-top: 7%;
}
.sec1-box3 dl dd h4 {
    font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	margin-bottom: 1%;
}
.sec1-box3 dl dd p {
	line-height: 2.5;
}
@media screen and (max-width: 900px){
	.sec1-box3 {
		background:linear-gradient(45deg, #A1000D 0%, #A1000D 65%, #BF000F 65%, #BF000F 100%);
		/*padding: 2% 4% 15%;*/
	}
	.sec1-box3 dl dt {
		width: 70%;
		margin: 0 auto;
	}
	.sec1-box3 dl dd {
		width: 100%;
		max-width: inherit;
		margin-top: 4%;
	}
	.sec1-box3 dl dd h4 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.sec1-box3 dl dd p {
		line-height: 2;
	}
}


/*----------------------------------- 
      #sec2　代表挨拶
-----------------------------------*/

#sec2-link {
	padding-top: 240px;
	margin-top: -240px;
}

#sec2 {
	background-color: #F8F8F8;
	padding: 1px 4% 2%;
}

.sec2-box1 {
    display: block;
    max-width: 1100px;
	margin: -12% auto 0;
	padding: 6% 8%;
	border-top: #660007 6px solid;
	background-color: #F8F8F8;
	box-sizing: border-box;
}
.sec2-box1 h2 {
	text-align: center;
	margin-bottom: 5%;
}
.sec2-box1 h3 {
    font-weight: bold;
	text-align: right;
	margin-top: 2em;
}
@media screen and (max-width: 900px){
	.sec2-box1 {
		padding: 8% 3%;
		border-top: #660007 4px solid;
	}
}


/*----------------------------------- 
      #sec3　会社概要
-----------------------------------*/

#sec3 {
	padding: 8% 4% 8%;
}

.sec3-box1 {
    max-width: 1100px;
	margin: 0 auto 5%;
}
.sec3-box1 dl {
    background-color: #222;
	border-bottom: #BF000F 6px solid;
	position: relative;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.sec3-box1 dl::before {
    background:linear-gradient(45deg, #BF000F 0%, #BF000F 5%, transparent 5%, transparent 100%); 
	width: 100%;
	height: 100%;
    display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.sec3-box1 dl dt {
    width: 50%;
    max-width: 550px;
	line-height: 0;
}
.sec3-box1 dl dd {
    width: 50%;
    max-width: 550px;
	color: #fff;
	font-size: 32px;
	font-size: 3.2rem;
	font-weight:bold;
	letter-spacing: 0.3em;
	text-align: center;
}
@media screen and (max-width: 900px){
	.sec3-box1 dl dd {
		font-size: 25px;
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 640px){
	.sec3-box1 {
		margin-bottom: 8%;
	}
	.sec3-box1 dl {
		border-bottom: none;
		max-width: 550px;
		margin: 0 auto;
	}
	.sec3-box1 dl::before {
		display: none;
	}
	.sec3-box1 dl dt {
		width: 100%;
		border-bottom: #BF000F 4px solid;
		position: relative;
	}
	.sec3-box1 dl dt::before {
		background:linear-gradient(45deg, #BF000F 0%, #BF000F 5%, transparent 5%, transparent 100%); 
		width: 100%;
		height: 100%;
		display: block;
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.sec3-box1 dl dd {
		width: 100%;
		padding: 2% 0;
		font-size: 20px;
		font-size: 2.0rem;
		letter-spacing: 0.2em;
	}
}


.sec3-box2 {
    max-width: 900px;
	margin: 0 auto 5%;
}
.sec3-box2 table {
    width: 100%;
	border-collapse: collapse;
	border-top: #ddd 1px solid;
}
.sec3-box2 th {
    width: 30%;
	font-weight: bold;
	text-align: center;
	padding: 1em 0;
	vertical-align: top;
	border-bottom: #ddd 1px solid;
}
.sec3-box2 td {
	padding: 1em 0;
	border-bottom: #ddd 1px solid;
}
@media screen and (max-width: 900px){
	.sec3-box2 {
		margin-bottom: 8%;
	}
	.sec3-box2 table {
		border-left: #ddd 1px solid;
		border-right: #ddd 1px solid;
	}
	.sec3-box2 th {
		width: 100%;
		display: block;
		background-color: #F8F8F8;
		padding: 0.5em 0;
	}
	.sec3-box2 td {
	    display: block;
		padding: 1em 3%;
    }
}


.sec3-map {
    max-width: 1100px;
	margin: 0 auto;
}
.sec3-map iframe {
    width: 100%;
	height: 350px;
}
