@charset "UTF-8";
.company .mv-wrap-01{
	background: url(/common/imgs/bg_gray.jpg)no-repeat center center/cover;
}
.company .section{
	padding-bottom: 160px;
}
/*====================
会社情報TOP
====================*/
#COMP_IDX .main .subttl-01{
	margin-bottom: 80px;
}
#COMP_IDX .main .btn-list{
	display: flex;
	flex-wrap: wrap;
	gap: 40px 120px;
}
#COMP_IDX .main .btn-list li{
	width: calc((100% - 120px)/2);
	border-bottom: 1px solid #717F88;

}

/*====================
MESSAGE
====================*/
#MESSAGE .main .txt-02{
	margin-bottom: 40px;
}
#MESSAGE .main .txt-06:not(:first-of-type){
	margin-top: 40px;
}
#MESSAGE .main .name{
	text-align: right;
	margin-top: 50px;
}
#MESSAGE .main .name .txt-05{
	margin-right: 20px;
}

/*====================
会社概要
====================*/
#OUTLINE .main .list-01{
	position: relative;
}
#OUTLINE .main .list-01 .txt-04,
#OUTLINE .main .list-01 .txt-05{
	line-height: 2;
}
#OUTLINE .main .list-cnt {
	padding-left: 0;
}
#OUTLINE .main .list-cnt .img-cnt{
	position: absolute;
	width: 308px;
	right: 0;
	top: 0;
	margin-top: 0;
}
#OUTLINE .main .member-list{
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 0.5em;
}
#OUTLINE .main .section-02 .subttl-01{
	margin-bottom: 60px;
}
#OUTLINE .main .section-02 .list-01>li{
	position: relative;
}
#OUTLINE .main .section-02 .list-01>li::after{
	content: "";
	position: absolute;
	width: 2px;
	height: 100%;
	background: #0072BC;
	left: 268px;
	bottom: 0;
}
#OUTLINE .main .section-02 .list-01>li:first-child::after{
	height: 50%;
}
#OUTLINE .main .section-02 .list-01 .txt-04{
	position: relative;
}
#OUTLINE .main .section-02 .list-01 .txt-04::after{
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #0072BC;
	right: -8px;
	top: 50%;
	transform: translateY(-50%);
}
/*====================
強み
====================*/
#STRENGTH .section .txt-07{
	font-weight: normal;
	margin-bottom: 100px;
}
#STRENGTH .section .block-01{
	margin-top: 40px;
	border-radius: 10px;
	padding: 50px 45px;
	overflow: hidden;
	background-color: #D1F1F1;
}
#STRENGTH .section .block-01:nth-last-of-type(1){
	background-color: #DFEAF4;
}
#STRENGTH .section .block-01:nth-last-of-type(2){
	background-color: #DAECF4;
}
#STRENGTH .section .block-01:nth-last-of-type(3){
	background-color: #D8ECF2;
}
#STRENGTH .section .block-01:nth-last-of-type(4){
	background-color: #D4EFF2;
}
#STRENGTH .section .block-01 .txt-cnt{
	font-weight: bold;
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 20px;
}
#STRENGTH .section .block-01 .num{
	font-size: 1.429em;
}
#STRENGTH .section .block-01 .txt{
	font-size: 2em;
	letter-spacing: 0.08em;
}
#STRENGTH .section .block-01 .txt .big{
	font-size: 166.67%;
}
#STRENGTH .section .block-01 .txt-09{
	line-height: 2;
}

/*====================
営業拠点
====================*/
.tabs {
	display: flex;
	margin-bottom: 60px;
	flex-wrap: wrap;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid #0072BC;
}
.tabs button {
	flex: 1;
	padding: 20px;
	/* border: 1px solid #0072BC; */
	background: #fff;
	cursor: pointer;
	/* border-radius: 10px; */
}
.tabs button:not(:last-child) {
	border-right: 1px solid #0072BC;
}
.tabs button[aria-selected="true"] {
	background: #EFF6FB;
}
.tabs button:focus {
	outline: 3px solid rgba(0, 120, 215, 0.25);
	outline-offset: -3px;
}
/* カード群 */
.cards {
	display: flex;
	flex-wrap: wrap;
	gap: 80px;
}
.card {
	width: calc((100% - 80px)/2);
	padding: 40px 35px;
	box-sizing: border-box;
	border-radius: 10px;
	background: #EFF6FB;
}
.card .txt-03 {
	margin-bottom: 10px;
}
.card .txt-05 {
	margin-bottom: 15px;
	font-feature-settings: "palt";
}
.card .link-01 a .link-ex{
	width: 12px;
	height: 16px;
}


@media only screen and (max-width: 768px) {
	.company .mv-wrap-01 {
		background: url(/common/imgs/bg_gray_sp.jpg)no-repeat center center/cover;
	}
	.company .section{
		padding-bottom: 26.042vw;
	}
	/*====================
	会社情報TOP
	====================*/
	#COMP_IDX .main .subttl-01{
		margin-bottom: 10.417vw;
	}
	#COMP_IDX .main .btn-list{
		/* display: flex; */
		/* flex-wrap: wrap; */
		flex-direction: column;
		gap: 7.813vw 0;
	}
	#COMP_IDX .main .btn-list li{
		width: 100%;
	}
	/*====================
	MESSAGE
	====================*/
	#MESSAGE .main .txt-02{
		margin-bottom: 4.167vw;
	}
	#MESSAGE .main .txt-06:not(:first-of-type){
		margin-top: 7.813vw;
	}
	#MESSAGE .main .name{
		/* text-align: right; */
		margin-top: 4.557vw;
	}
	#MESSAGE .main .name .txt-05{
		margin-right: 3.906vw;
	}

	/*====================
	会社概要
	====================*/

	#OUTLINE .main .list-01>li{
		position: relative;
	}
	#OUTLINE .main .list-01 .txt-04,
	#OUTLINE .main .list-01 .txt-05{
		line-height: 1.44;
	}
	#OUTLINE .main .list-cnt .img-cnt{
		position: absolute;
		width: 27.604vw;
		right: 0;
		top: 5.208vw;
		margin-top: 0;
	}
	#OUTLINE .main .list-01>li:has(.img-cnt){
		min-height: 42.969vw;
		box-sizing: border-box;
	}
	#OUTLINE .main .section-02 .subttl-01{
		margin-bottom: 5.208vw;
	}
	#OUTLINE .main .section-02 .list-01>li{
		/* position: relative; */
		padding-left: 11.979vw;
	}
	#OUTLINE .main .section-02 .list-01>li::after{
		/* content: ""; */
		/* position: absolute; */
		/* width: 2px; */
		/* height: 100%; */
		/* background: #0072BC; */
		left: 5.078vw;
		/* bottom: 0; */
	}
	#OUTLINE .main .section-02 .list-01>li:first-child::after{
		height: 19.531vw;
	}
	#OUTLINE .main .section-02 .list-01 .txt-04{
		/* position: relative; */
	}
	#OUTLINE .main .section-02 .list-01 .txt-04::after{
		/* content: ""; */
		/* position: absolute; */
		width: 3.125vw;
		height: 3.125vw;
		/* border-radius: 50%; */
		/* background: #0072BC; */
		right: inherit;
		left: -8.333vw;
		/* top: 50%; */
		/* transform: translateY(-50%); */
	}

	/*====================
	強み
	====================*/
	#STRENGTH .section .txt-07{
		/* font-weight: normal; */
		margin-bottom: 10.4167vw;
	}
	#STRENGTH .section .block-01{
		margin-top: 5.2083vw;
		border-radius: 1.3021vw;
		padding: 5.2083vw 2.6042vw 4.0365vw;
		/* overflow: hidden; */
		background-color: #D1F1F1;
	}
	#STRENGTH .section .block-01 .txt-cnt{
		/* font-weight: bold; */
		/* display: flex; */
		/* flex-direction: column; */
		gap: 1.3021vw;
		margin-bottom: 2.6042vw;
	}
	#STRENGTH .section .block-01 .num{
		font-size: 3.6458vw;
	}
	#STRENGTH .section .block-01 .txt{
		font-size: 4.1667vw;
	}
	#STRENGTH .section .block-01 .txt .big{
		font-size: 156.25%;
	}
	#STRENGTH .section .block-01 .txt-09{
		font-size: 2.083vw;
	}



	/*====================
	営業拠点
	====================*/
	.tabs {
		/* display: flex; */
		margin-bottom: 13.021vw;
		/* flex-wrap: wrap; */
		border-radius: 0;
		overflow: inherit;
		border: none;
		flex-direction: column;
	}
	.tabs button {
		color: #182D3A;
		/* flex: 1; */
		padding: 3.906vw;
		border: 1px solid #0072BC;
		/* background: #fff; */
		/* cursor: pointer; */
		border-radius: 1.302vw;
	}
	.tabs button:not(:last-child) {
		border: 1px solid #0072BC;
		margin-bottom: -1px;
	}
	/* .tabs button[aria-selected="true"] {
		background: #EFF6FB;
	} */
	/* .tabs button:focus {
		outline: 3px solid rgba(0, 120, 215, 0.25);
		outline-offset: -3px;
	} */
	/* カード群 */
	.cards {
		/* display: flex; */
		/* flex-wrap: wrap; */
		gap: 5.208vw;
		flex-direction: column;
	}
	.card {
		width: 100%;
		padding: 6.51vw;
		/* box-sizing: border-box; */
		border-radius: 1.302vw;
		/* background: #EFF6FB; */
	}
	.card .txt-03 {
		margin-bottom: 1.302vw;
	}
	.card .txt-05 {
		margin-bottom: 1.953vw;
	}
	.card .link-01 a .link-ex{
		width: 3.385vw;
		height: 4.557vw;
	}
}