@charset "UTF-8";
header ul li:nth-of-type(2) a {
    border-bottom: 2px solid #fff;
}
.fixed ul li:nth-of-type(2) a {
    border-bottom: 2px solid var(--main-color);
}
@media screen and (max-width:767px) {
	header ul li:nth-of-type(2) a {
		border-bottom: 2px solid #FFF;
		padding-bottom: 0.04rem;
	}
}
/*============================
事業内容
============================*/
@media screen and (max-width:767px) {
	#company .container1300 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.2rem;
		padding-right: 0.2rem;
	}
}

.company_mv {
	position: relative;
	padding-top: 37.5%;
	background-image: url("../img/company_ph-main.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
}
@media screen and (max-width:900px) {
	.company_mv {
		padding-top: 47.5%;
	}
}
@media screen and (max-width:767px) {
	.company_mv {
		padding-top: 2.7rem;
		background-image: url("../img/company_ph-main_sp.jpg");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100% auto;
	}
}
.company_mv .section_kasou_ttl {
	position: absolute;
	top: calc(50% - 0.16rem);
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	text-align: center;
	line-height: 1.7;
	padding-top: 0.6rem;
	background-image:url("../img/common/ttl_logo_white.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto 0.47rem;
	font-size: 0.48rem;
	letter-spacing: 0.14em;
	color: #fff;
}

@media screen and (max-width:767px) {
	.company_mv .section_kasou_ttl {
		padding-top: 0.4rem;
		background-size: auto 0.34rem;
		/* padding-bottom: 0.4rem; */
		font-size: .27rem;
		top: 40%;
		transform: translateX(-50%) translateY(-30%);
	}
}

.company_mv .section_kasou_ttl span {
	font-size: 0.32rem;
	display: block;
	line-height: 1;
}

@media screen and (max-width:767px) {
	.company_mv .section_kasou_ttl span {
		font-size: .19rem;
		margin-top: .05rem;
	}
}
.company_intro_text {
	background: #FFF;
	margin-top: -1rem!important;
	padding: 0.9rem 0 0.87rem;
	box-sizing: border-box;
}

@media screen and (max-width:767px) {
	.company_intro_text {
		margin-top: -0.5rem!important;
		padding: 0.33rem 0 0.7rem;
		box-sizing: border-box;
		width: 84%!important;
	}
}
.company_intro_text h4 {
	font-weight: 500;
	font-size: 0.3rem;
	letter-spacing: 0.08em;
	line-height: 1.86;
	text-align: center;
}
@media screen and (max-width:1024px) {
	.company_intro_text h4 {
		font-size: 0.28rem;
		letter-spacing: 0;
		line-height: 1.76;
		text-align: center;
	}
}

@media screen and (max-width:767px) {
	.company_intro_text h4 {
		font-size: 0.18rem;
		font-weight: 500;
		text-align: center;
		line-height: 1.83;
		letter-spacing: 0;
		margin-bottom: 0;
	}
}

.company_intro_text p {
	text-align: center;
	font-size: 0.18rem;
	line-height: 2.1;
	padding-bottom: 0.6rem;
}


@media screen and (max-width:767px) {
	.company_intro_text p {
		text-align: left;
		font-size: 0.15rem;
		line-height: 2;
		padding-bottom: 0.25rem;
	}
}

.messageWrap {
	margin-bottom: 0.78rem;
	position: relative;
}
.messageWrap .container1300 {
	padding-top: 0;
}
.messageWrap .title {
	max-width: 1300px;
	margin: auto;
	position: relative;
	padding-left: 1rem;
	padding-right: 0.4rem;
	margin-bottom: 0.66rem;
	box-sizing: border-box;
}
.messageWrap .box {
	background: var(--sub-color-2);
	padding: .75rem 1rem 1rem 1rem;
	box-sizing: border-box;
	position: relative;
}
.messageWrap .box:after {
	content: '';
	clear: both;
	display: block;
}
.messageWrap .group {
	position: absolute;
	top: 0;
	right: 0;
	width: 45%;
	z-index: 2;
}
.messageWrap .group .ph img{
	width: 60vw;
}
.messageWrap .group .content {
	position: absolute;
	left: 40%;
	bottom: -.9rem;
	transform: translate(-40%,0);
}
.messageWrap .group .txt {
	font-size: .16rem;
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 1;
}
.messageWrap .group .txt span {
	font-size: .2rem;
	letter-spacing: .1em;
	line-height: 1;
	display: block;
	margin-top: 0.15rem;
}
.messageWrap .box .box_text {
	width: 5.7rem;
	float: left;
	position: relative;
}
@media screen and (max-width:1200px) {
	.messageWrap .group {
		top: 15%;
	}
	.messageWrap .box .box_text {
		width: 4.7rem;
	}
}
@media screen and (max-width:1024px) {
	.messageWrap .box .box_text {
		width: 4rem;
	}
}
.messageWrap .box .box_text .txt {
	font-size: .16rem;
	font-weight: 500;
	letter-spacing: .05em;
	line-height: 2;
}
.messageWrap .box .box_text .txt + .txt{
	margin-top: 1em;
}

@media screen and (max-width:767px) {
	.messageWrap {
		/* margin-bottom: 0.4rem; */
		margin-bottom: 0;
	}
	.messageWrap .container1300 {
		padding-top: 0;
	}
	.messageWrap .title {
		margin-bottom: 0.27rem;
		text-align: center;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	.messageWrap .box {
		padding: 0;
		background: none;
	}
	.messageWrap .group {
		position: relative;
		width: auto;
		top: 0;
		margin-left: .4rem;
	}
	.messageWrap .group .ph img {
		width: 100%;
		height: auto;
		object-fit: contain;
	}
	.messageWrap .group .content {
		position: relative;
		left: auto;
		right: 0.4rem;
		transform: translate(0);
		bottom: auto;
		margin: 0.3rem 0.4rem 0 0;

		width: 100%;
	}
	.messageWrap .group .txt {
		font-size: .14rem;
		text-align: right;
	}
	.messageWrap .group .txt span {
		font-size: .17rem;
		margin-top: 0.15rem;
	}
	.messageWrap .box .box_text {
		width: auto;
		float: none;
		padding: 2.15rem .2rem 0.4rem;
		background: var(--sub-color-2);
		margin-top: -1.89rem;
	}
	.messageWrap .box .box_text .txt {
		font-size: .15rem;
		letter-spacing: 0;
	}
}


.philosophyWrap {
	padding: 1.15rem 0 0.78rem;
	text-align: center;
	position: relative;
	height: 6.03rem;
	box-sizing: border-box;
}
.philosophyWrap .container1100 {
	background: transparent!important;
	z-index: 1;
}
.philosophyWrap:after {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	transform: translate(-50%, 0);
	width: 8.19rem;
	height: 5.24rem;
	background-image: url(../img/company_img-philosophy_bg.png);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: -1;
}
.philosophyWrap .title {
	margin-bottom: 0.46rem;
}
.philosophyWrap .txt {
	font-size: 0.3rem;
	color: #181A31;;
	letter-spacing: 0.05em;
	line-height: 1.86;
	text-align: center;
}

@media screen and (max-width:767px) {
	.philosophyWrap {
		margin: 0.425rem 0 0.49rem;
		padding: 0.63rem 0 0.69rem;
		height: auto;
	}
	.philosophyWrap .container1100 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.philosophyWrap:after {
		width: 100%;
		height: 3.765rem;
	}
	.philosophyWrap .title {
		margin-bottom: 0.3rem;
	}
	.philosophyWrap .txt {
		font-size: 0.18rem;
		letter-spacing: 0.05em;
		line-height: 1.83;
	}
}
@media screen and (max-width:350px) {
	.philosophyWrap {
		padding: 0.8rem 0;
	}
}

.overviewWrap {
	background: var(--sub-color-2);
	padding: 1.02rem 0 1rem;
}
.overviewWrap .container1100 {
	background: transparent!important;
}
.overviewWrap .title {
	margin-bottom: 0.55rem;
}
.overviewWrap .group:after{
	content: '';
	clear: both;
	display: block;
}
.overviewWrap .group .left {
	float: left;
	width: 63.637%;
}
.overviewWrap .group .right {
	float: right;
	width: 29.09%;
	margin-left: 7.273%;
	padding-top: 0.31rem;
}
.overviewWrap .group .left .row {
	display: flex;
	padding: 0.18rem 0;
	font-size: 0.16rem;
	color: #000000;
	border-bottom: 1px solid #D4D5D8;
	letter-spacing: 0.05em;
	align-items: center;
}
.overviewWrap .group .left .row h3 {
	width: 1.3rem;
	min-width: 1.3rem;
	line-height: 1.4;
	letter-spacing: 0;
	font-weight: 500;
}
.overviewWrap .group .left .row p {
	line-height: 2.125;
	letter-spacing: 0.05em;
	font-weight: 500;
}
.overviewWrap .group .right .txt {
	font-size: 0.16rem;
	font-weight: 500;
	color: #000000;
	line-height: 1.875;
	margin-top: 0.35rem;
}
@media screen and (max-width:767px) {
	.overviewWrap {
		padding: .62rem 0 0.53rem;
	}
	.overviewWrap .container1100 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.overviewWrap .title {
		margin-bottom: 0.24rem;
		text-align: center;
	}
	.overviewWrap .group .left {
		float: none;
		width: 100%;
	}
	.overviewWrap .group .right {
		float: none;
		width: 100%;
		margin: 0.48rem 0 0;
		padding: 0 0.3rem;
		box-sizing: border-box;
	}
	.overviewWrap .group .left .row {
		flex-direction: column;
		padding: 0.15rem 0;
		font-size: 0.14rem;
	}
	.overviewWrap .group .left .row h3 {
		width: 100%;
		min-width: auto;
		padding-top: 0;
		margin-bottom: 0.06rem;
	}
	.overviewWrap .group .left .row p {
		line-height: 1.928;
		letter-spacing: 0;
	}
	.overviewWrap .group .right .txt {
		margin-top: 0.17rem;
	}

}
.CompanyPolicyWrap {
	padding: 1.02rem 0 1rem;
}
.CompanyPolicyWrap .container1100 {
	background: transparent!important;
}
.CompanyPolicyWrap .title {
	margin-bottom: 0.55rem;
}
.CompanyPolicyWrap .group:after{
	content: '';
	clear: both;
	display: block;
}
.CompanyPolicyWrap .group .left {
	width: 100%;
}
.CompanyPolicyWrap .group .left .row {
	display: flex;
    padding: 0.18rem 0;
    font-size: 0.16rem;
    color: #000000;
    border-bottom: 1px solid #D4D5D8;
    letter-spacing: 0.05em;
    align-items: center;
}
.CompanyPolicyWrap .group .left .row h3 {
	width: .6rem;
    min-width: .6rem;
    font-weight: 500;
    font-family: monospace, sans-serif;
	font-size: .38rem;
}
.CompanyPolicyWrap .group .left .row p {
	line-height: 2.125;
	letter-spacing: 0.05em;
	font-weight: 500;
}
.disFlexColumn{
	display: flex;
	flex-direction: column;
}
.CompanyPolicyWrap .group .left .row ul {
	line-height: 2.125;
    letter-spacing: .05em;
    list-style: disc;
    padding-left: 1em;
}
.CompanyPolicyWrap .list{
	display: flex;
	column-gap: 1rem;
    text-align: center;
    padding: .5rem 0 0;
}
.CompanyPolicyWrap .list li{
	display: flex;
    flex-direction: column;
    row-gap: .2rem;
}

@media screen and (max-width:767px) {
	.CompanyPolicyWrap {
		padding: .62rem 0 0.53rem;
	}
	.CompanyPolicyWrap .container1100 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.CompanyPolicyWrap .title {
		margin-bottom: 0.24rem;
		text-align: center;
	}
	.CompanyPolicyWrap .group .left {
		float: none;
		width: 100%;
	}
	.CompanyPolicyWrap .group .left .row {
		padding: 0.15rem 0;
		font-size: 0.14rem;
	}
	.CompanyPolicyWrap .group .left .row p {
		line-height: 1.928;
		letter-spacing: 0;
	}
	.CompanyPolicyWrap .list{
		flex-direction: column;
		row-gap: .5rem;
	}

}
.historyWrap {
	background: var(--main-color);
	padding: 0.96rem 0 .43rem;
}
.historyWrap .container1100 {
	background: transparent!important;
}
.historyWrap .title {
	margin-bottom: 0.62rem;
	color: #fff;
}
.historyWrap .table {
	position: relative;
}
.historyWrap .table .row {
	height: 0.94rem;
	min-height: 0.94rem;
}
.historyWrap .table .row:after{
	content: '';
	clear: both;
	display: block;
}
.historyWrap .table .row .date {
	width: 12%;
	font-size: 0.38rem;
	line-height: 1;
	letter-spacing: 0.2em;
	color: var(--accent-color-1);
	position: relative;
	float: left;
}
.historyWrap .table:after {
	content: '';
	width: 1px;
	top: 0.25rem;
	left: 12%;
	height: 90.5%;
	position: absolute;
	z-index: 1;
	background: #D4D5D8;
}
.historyWrap .table .row .content {
	float: right;
	display: flex;
	width: 88%;
	align-items: baseline;
	padding-top: 0.07rem;
	position: relative;
}
.historyWrap .table .row .content:before{
	content: '';
	height: 0.1rem;
	width: 0.1rem;
	border-radius: 50%;
	background: var(--accent-color-1);
	position: absolute;
	top: 0.15rem;
	left: -0.05rem;
	z-index: 2;
}
.historyWrap .table .row .content .left {
	min-width: 1.85rem;
	text-align: center;
	color: #fff;
	font-size: 0.18rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
}
.historyWrap .table .row .content .right {
	color: #fff;
	font-size: 0.18rem;
	font-weight: 500;
	line-height: 1.77;
	letter-spacing: 0;
}
@media screen and (max-width:1000px) {
	.historyWrap .table .row .date {
		font-size: 0.32rem;
		width: 9.5%;
		letter-spacing: 0.1em;
	}
	.historyWrap .table:after {
		left: 9.5%;
	}
	.historyWrap .table .row .content {
		width: 90.5%;
	}
	.historyWrap .table .row .content .left {
		min-width: 1.35rem;
	}
}
@media screen and (max-width:767px) {
	.historyWrap {
		padding: 0.58rem 0 .45rem;
	}
	.historyWrap .container1100 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.historyWrap .title {
		margin-bottom: 0.36rem;
	}
	.historyWrap .table .row {
		height: auto;
		min-height: auto;
	}
	.historyWrap .table .row + .row {
		margin-top: 0.15rem;
	}
	.historyWrap .table .row .date {
		width: 19%;
		font-size: 0.21rem;
		letter-spacing: 0.1em;
		float: left;
		padding: 0.02rem 0.175rem 0 0;
		box-sizing: border-box;
	}
	.historyWrap .table:after {
		content: '';
		width: 1px;
		top: 0.13rem;
		left: 19%;
		height: 94.5%;
		position: absolute;
		z-index: 1;
		background: #D4D5D8;
	}
	.historyWrap .table .row .content {
		float: right;
		flex-direction: column;
		width: 81%;
		padding-top: 0.1rem;
		padding-left: 0.175rem;
		box-sizing: border-box;
	}
	.historyWrap .table .row .content:before{
		content: '';
		height: 0.06rem;
		width: 0.06rem;
		border-radius: 50%;
		background: var(--accent-color-1);
		position: absolute;
		top: 0.13rem;
		left: -0.03rem;
		z-index: 2;
	}
	.historyWrap .table .row .content .left {
		min-width: auto;
		text-align: left;
		font-size: 0.14rem;
		margin-bottom: 0.06rem;
	}
	.historyWrap .table .row .content .right {
		font-size: 0.14rem;
		line-height: 1.57;
	}
}
@media screen and (max-width:350px) {
	.historyWrap .table .row .date {
		width: 17%;
	}
	.historyWrap .table:after {
		left: 17%;
	}
	.historyWrap .table .row .content {
		width: 83%;
	}
	.historyWrap .table .row .content {
		padding-left: 0.22rem;
	}
}

.constructionWrap {
	background: var(--sub-color-2);
	padding: 1.02rem 0 1rem;
}
.constructionWrap .container1100 {
	background: transparent!important;
}
.constructionWrap .title {
	margin-bottom: 0.55rem;
}
.constructionWrap .group:after{
	content: '';
	clear: both;
	display: block;
}
.constructionWrap .group .left {
	float: left;
	width: 63.637%;
}
.constructionWrap .group .right {
	float: right;
	width: 29.09%;
	margin-left: 7.273%;
	padding-top: 0.31rem;
}
.constructionWrap .group .left .row {
	display: flex;
	padding: 0.18rem 0;
	font-size: 0.16rem;
	color: #000000;
	border-bottom: 1px solid #D4D5D8;
	letter-spacing: 0.05em;
}
.constructionWrap .group .left .row h3 {
	width: 1.3rem;
	min-width: 1.3rem;
	line-height: 1;
	letter-spacing: 0;
	padding-top: 0.1rem;
	font-weight: 500;
}
.constructionWrap .group .left .row p {
	line-height: 2.125;
	letter-spacing: 0.05em;
	font-weight: 500;
}
.constructionWrap .group .right .txt {
	font-size: 0.16rem;
	font-weight: 500;
	color: #000000;
	line-height: 1.875;
	margin-top: 0.35rem;
}
@media screen and (max-width:767px) {
	.constructionWrap {
		padding: .62rem 0 0.53rem;
	}
	.constructionWrap .container1100 {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0.3rem;
		padding-right: 0.3rem;
	}
	.constructionWrap .title {
		margin-bottom: 0.24rem;
		text-align: center;
	}
	.constructionWrap .group .left {
		float: none;
		width: 100%;
	}
	.constructionWrap .group .right {
		float: none;
		width: 100%;
		margin: 0.48rem 0 0;
		padding: 0 0.3rem;
		box-sizing: border-box;
	}
	.constructionWrap .group .left .row {
		flex-direction: column;
		padding: 0.15rem 0;
		font-size: 0.14rem;
	}
	.constructionWrap .group .left .row h3 {
		width: 100%;
		min-width: auto;
		padding-top: 0;
		margin-bottom: 0.06rem;
	}
	.constructionWrap .group .left .row p {
		line-height: 1.928;
		letter-spacing: 0;
	}
	.constructionWrap .group .right .txt {
		margin-top: 0.17rem;
	}

}




.title {
	font-size: 0.32rem;
	line-height: 1;
	letter-spacing: 0.1em;
}
.title span {
	display: block;
	font-size: 0.24rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.2em;
	margin-top: 0.28rem;
}
@media screen and (max-width:767px) {
	.title {
		text-align: center;
		font-size: 0.23rem;
	}
	.title span {
		font-size: 0.16rem;
		margin-top: 0.12rem;
	}
}