@charset "utf-8";
/* MT対応 */
#company .c-h2.en{
    font-size: 6.4rem;
    line-height: 1.2;
}
#company .c-h2.jp{
    font-size: 5.4rem;
}
#company .c-h3{
    padding-top: .5em;
}
#company .c-h3.en{
    line-height: 1.2;
    font-size: 5rem;
}
#company .c-h3.jp{
    font-size: 4.2rem;
}
#company .c-h3.min{
    font-size: 2.4rem;
}
/* ご挨拶 */
#company #company_index .lead{
    padding: 80px 0 40px;
}
#company #message .lead{
    padding: 80px 0 40px;
}
#company #message .message_img{
    display: flex;
	gap: 0 2em;
}
#company #message .message_text{
    padding: 2em 0;
    font-size: 1.8rem;
}
#company #message .message_text p{
    padding-bottom: 1.5em;
}
#company #message .name{
    text-align: right;
    padding-top: 1em;
}

/* 会社概要 */
/* 役員一覧 */
#company .about .about_table{
	padding-bottom: 60px;
}
#company .about .about_table .office{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
#company .about .about_table .office .text,
#company .about .about_table .office .img{
	width: calc(100% / 2 - 15px);
}
/* 沿革 */
#company .history .history_main img{
	margin: 0 auto;
	padding-bottom: 4em;
}
#company .history .year {
	position: relative;
	font-size: 5rem;
	padding-bottom: 0;
	font-weight: 600;
	line-height: 1;
}
#company .history .year::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 200px;
	height: 1px;
	background: #999;
	box-shadow: 0 1px 0 #666;
	width: calc(100% - 200px);
}
#company .history.en_history .year::after {
	left: 160px;
	width: calc(100% - 160px);
}
#company .history .year span{
	font-size: 2.4rem;
}
#company .history .history_block{
	margin-left: 200px;
}
#company .history.history .history_block{
	margin-left: 160px;
}
#company .history .history_block table{
	width: 100%;
}
#company .history .history_block tr{
	display: flex;
	align-items: flex-start;
	border-bottom: 1px solid #D9DAE7;
	padding: 1.5em 0;
}
#company .history .history_block tr.no_border{
	border-bottom: none;
	padding-bottom: 0;
}
#company .history .history_block tr:last-of-type{
	border: none;
}

#company .history .history_block th{
	width: 100px;
	font-size: 4rem;
	line-height: 1;
}
#company .history.en_history .history_block th{
	width: 160px;
}
#company .history .history_block th p{
	padding-bottom: 0;
	display: inline-block;
	line-height: 0;
}
#company .history .history_block th span{
	font-size: 2.4rem;
}
#company .history.en_history .history_block th span{
	font-size: 2.2rem;
}
#company .history .history_block td{
	width: calc(100% - 100px);
	font-size: 1.6rem;
	line-height: 2;
	padding-top: .5em;
}
#company .history.en_history .history_block td{
	width: calc(100% - 160px);
}
#company .history .history_block td.column{
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}
#company .history .history_block td.column .text{
	width: calc(100% - 40% - .5em);
}
#company .history .history_block td.column .img{
	width: calc(100% - 60% - .5em);
}
#company .history .history_block td .img{
	display: flex;
	justify-content: end;
	padding: 1em 0;
}
#company .history .history_block td .img img{
	max-width: 100%;
}

/* 拠点 */
#company .access .map_pc {
	display: block;
	position: relative;
}
#company .access .map_sp {
	display: none;
}
#company .access .map_list p{
	display: inline-block;
	padding: 0;
}
#company .access .map_list a{
	font-weight: 700;
	position: absolute;
	font-size: 1.6rem;
}
#company .access .map_list a:hover .name{
	transition: .3s;
}
#company .access .map_list a:hover .name{
	color: #DB0E1E;
}
#company .access .map_list .office_01{
	left: 60%;
	top: 20%;
}
#company .access .map_list .office_03{
	left: 60%;
	top: 35%;
}
#company .access .map_list .office_04 {
	right: 64.8%;
	top: 11.6%;
}
#company .access .map_list .office_05 {
	right: 61.5%;
	top: 30.2%;
}
#company .access .map_list .office_06 {
	top: 48.8%;
	right: 64.2%;
}
#company .access .map_list .office_07 {
	left: 58%;
	top: 63.5%;
}
#company .access .map_list .office_08 {
	right: 64.5%;
	top: 75.8%;
}
#company .access .map_list .office_09 {
	right: 13%;
	top: 55%;
}
#company .access .map_list .office_10 {
	left: 10.2%;
	top: 22.4%;
}
#company .access .map_list .business{
	font-size: 1.4rem;
}
#company .access .map_list .text{
	font-weight: normal;
	font-size: 1.3rem;
}
#company .access .map_list .main_office{
	color: #DB0E1E;
	padding-right: .25em;
}
#company .access .map_list .rd{
	color: #015AFF;
	padding-right: .25em;
}
#company .access .map_list .production{
	color: #F9960C;
	padding-right: .25em;
}
#company .access .map_list .marketing{
	color: #2F8D00;
	padding-right: .25em;
}
#company .access .map_list .cs{
	color: #8A0CF9;
	padding-right: .25em;
}
#company .access .office_list{
	padding-top: 1em;
}
#company .access .office_list li{
	display: flex;
	flex-wrap: wrap;
	gap: 1.5em;
	border-bottom: 1px solid #7E7D7D;
	padding: 2em 0;
}
#company .about .map,
#company .access .office_list li .map{
	margin: 1em 0;
	max-width: 120px;
}
#company .access .office_list li > div{
	width: calc(100% / 3 - 1em);
}
#company .access .office_list li > div .link{
	text-decoration: underline;
}

/* 軌跡 */
#company .trajectory {
	padding-bottom: 6em;
}
#company .trajectory p{
	font-size: 1.8rem;
	line-height: 2;
}
#company .trajectory .trajectory_main{
	background-color: #DB0E1E;
	padding: 40px 0 0;
	margin-bottom: 100px;
}
#company .trajectory .trajectory_logo{
	max-width: 880px;
	margin: 0 auto;
	display: flex;
	padding-bottom: 4em;
}
#company .trajectory .trajectory_logo .text {
	font-size: 1.8rem;
	display: flex;
	flex-wrap: wrap;
	width: 50%;
	align-items: center;
	padding-left: 1em;
}
#company .trajectory .trajectory_logo .text.en p{
	font-size: 1.5rem;
}
#company .trajectory .wedo{
	display: flex;
	flex-wrap: wrap;
	gap: 2em;
}
#company .trajectory .wedo .text{
	width: calc(45% - 1em);
}
#company .trajectory .wedo .text h3{
	padding-bottom: 2em;
}
#company .trajectory .wedo .figure{
	width: calc(55% - 1em);
}
#company .trajectory .wedo_img{
	padding: 4em 0;
}
#company .trajectory .strong_point{
	display: flex;
	flex-wrap: wrap;
	gap: 2em;
	padding-bottom: 4em;
}
#company .trajectory .strong_point .text{
	width: calc(50% - 1em);
}
#company .trajectory .strong_point .text p span{
	color: #DB0E1E;
}
#company .trajectory .strong_point .text .no1{
	padding: 2em 0;
}
#company .trajectory .strong_point .figure{
	width: calc(50% - 1em);
}
#company .trajectory .flow_img{
	padding-bottom: 4em;
}
#company .trajectory .map{
	padding-bottom: 4em;
}
#company .trajectory .future_img img{
	margin: 0 auto;
	padding-bottom: 6em;
}
#company .trajectory .future_img {
	padding: 2em 0;
}
@media screen and (max-width: 1400px) {
	#company .access .map_list a{
		font-size: 1.1vw;
	}
	#company .access .map_list .business{
		font-size: 1vw;
	}
	#company .access .map_list .text{
		font-size: .9vw;
	}
}
@media screen and (max-width: 1024px) {
	/* 拠点 */
	#company .access .map_pc {
		display: none;
	}
	#company .access .map_sp {
		display: block;
	}
	#company .access .map_sp li{
		width: 100%;
	}
	#company .access .map_list {
		display: none;
	}
	#company .access .map_list a{
		font-size: 1.3vw;
	}
	#company .access .map_list .business{
		font-size: 1.2vw;
	}
	#company .access .map_list .text{
		font-size: 1.1vw;
	}


	/* 軌跡 */
	#company .trajectory .trajectory_main {
		padding: 0;
	}
	#company .trajectory .trajectory_logo {
		flex-wrap: wrap;
	}
	#company .trajectory .trajectory_logo .logo{
		width: 100%;
		padding-bottom: 2em;
	}
	#company .trajectory .trajectory_logo .logo img{
		margin: 0 auto;
	}
	#company .trajectory .trajectory_logo .text{
		display: flex;
		flex-wrap: wrap;
		gap: 2em;
		width: 100%;
	}
	#company .trajectory .trajectory_logo .text picture{
		width: calc(120px - 1em)
	}
	#company .trajectory .trajectory_logo .text p{
		width: calc(100% - 120px - 1em);
		padding-bottom: 0;
	}
	#company .trajectory .wedo .text {
		width: 100%;
	}
	#company .trajectory .wedo .figure {
		width: 100%;
	}
	#company .trajectory .wedo .figure img{
		margin: 0 auto;
	}
	#company .trajectory .strong_point {
		gap: 1em;
	}
	#company .trajectory .strong_point .text {
		width: 100%;
	}
	#company .trajectory .strong_point .text .no1 {
		padding: 0 0 2em;
	}
	#company .trajectory .strong_point .figure {
		width: 100%;
	}

}

/*****SP*****/
@media screen and (max-width: 767px) {
	/* MT対応 */
    #company .c-h2.jp{
        font-size: 4rem;
    }
    #company .c-h2.en{
        font-size: 4rem;
    }
    #company .c-h3.en{
        line-height: 1.2;
        font-size: 4.6rem;
    }
    #company .c-h3.jp{
        font-size: 3.2rem;
    }
    #company .c-h3.min{
        font-size: 2rem;
    }
	/* ご挨拶 */
    #company #company_index .lead {
        padding: 40px 0 20px;
    }
	#company #message .message_img{
		flex-wrap: wrap;
		gap: 2em 0;
	}
	/* 会社概要 */
    /* 役員一覧 */
	#company .about .about_bnr .about_txt {
		font-size: 3.2rem;
	}
	#company .about .about_table .office{
		gap: 20px;
	}
	#company .about .about_table .office .text,
	#company .about .about_table .office .img{
		width: 100%;
	}
	/* 沿革 */
	#company .history.history .history_block{
		margin-left: 0;
	}
	#company .history .history_main img{
		margin: 0 auto;
		padding-bottom: 0em;
	}
	#company .history .year{
		font-size: 4.2rem;
		border-bottom: 1px solid #1A1A1A;
		padding-bottom: 20px;
		margin-top: 1em;
	}
	#company .history .year span{
		font-size: 1.4rem;
	}
	#company .history .year::after {
		content: none;
	}
	#company .history .history_block ,
	#company .history.en_history .history_block {
		margin-left: 0;
	}
	#company .history .history_block tr {
		flex-wrap: wrap;
	}
	#company .history .history_block th,
	#company .history .history_block td,
	#company .history.en_history .history_block th,
	#company .history.en_history .history_block td {
		width: 100%;
	}
	#company .history .history_block th {
		font-size: 2.8rem;
		padding-bottom: 10px;
		text-align: left;
	}
	#company .history .history_block th span{
		font-size: 1.3rem;
	}
	#company .history .history_block td{
		font-size: 1.5rem;
	}
	#company .history .history_block td .img {
		justify-content: center;
	}
	#company .history .history_block td.column .text,
	#company .history .history_block td.column .img{
		width: 100%;
	}
	/* 拠点 */
	#company .access .c-page_list {
		padding-top: 0;
	}
	#company .access .office_list {
		padding-top: 0;
	}
	#company .access .office_list li{
		padding: 1em 0 0;
	}
	#company .access .office_list li > div{
		width: 100%
	}
	/* 軌跡 */
	#company .trajectory p{
		font-size: 1.6rem;
		line-height: 1.5;
	}
	#company .trajectory .trajectory_logo .text{
		gap: 1em 0;
		padding-left: 0;
	}
	#company .trajectory .trajectory_logo .text picture{
		width: 80px
	}
	#company .trajectory .trajectory_logo .text p{
		width: calc(100% - 80px);
		padding-left: 1em;
	}
	#company .trajectory .map_img{
		width: 1000px;
	}
	#company .trajectory .wedo {
		gap: 1em;
	}

}
