@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainImg {
	color: #fff;
	background-image: url(../img/company/main_img.jpg);
}
#main .bakuchis {
	padding: 11.7rem 0 7rem;
}
#main .bakuchis h3 {
	margin-bottom: 4.8rem;
	font-size: 2.1rem;
	text-align: center;
	letter-spacing: 0.12em;
}
.comListBox .listUl {
	width: 100%;
	border-color: rgba(100, 100, 100, 0.2);
}
.comListBox .listUl li {
	padding: 2.2rem 0;
	border-color: rgba(100, 100, 100, 0.2);
}
.comListBox .listUl .ttl {
	align-self: center;
}
#main .access {
	padding: 6rem 0;
}
#main .access .headLine04 {
	margin-bottom: 5rem;
}
#main .mapBox {
	margin-bottom: 7.5rem;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
#main .mapBox:last-child {
	margin-bottom: 0;
}
#main .mapBox .rBox {
	width: 46.7rem;
	margin-left: 3rem;
	aspect-ratio: 467 / 233;
}
#main .mapBox .rBox iframe {
	width: 100%;
	height: 100%;
	display: block;
}
#main .mapBox .lBox {
	margin-top: -0.4rem;
	flex: 1;
}
#main .mapBox .lBox .ttl {
	margin-bottom: 4rem;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1.722;
}
#main .mapBox .lBox dl {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.57;
	justify-content: space-between;
}
#main .mapBox .lBox dt {
	width: 7rem;
}
#main .mapBox .lBox dd {
	margin-bottom: 0.8rem;
	width: calc(100% - 7rem);
}
#main .history {
	padding: 8.4rem 0;
}
#main .history .headLine04 {
	margin-bottom: 3rem;
}
#main .historyBox {
	padding: 5.4rem 5rem 5.3rem 7.5rem;
	background-color: rgba(226, 232, 232, 0.8);
}
#main .historyBox dl {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
#main .historyBox dt {
	font-size: 3rem;
	letter-spacing: 0.05em;
	color: #B8C2D7;
	width: 15rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.01em;
	position: relative;
	font-family: Arial, Helvetica, sans-serif;
}
#main .historyBox dt:after {
	width: 0.7rem;
	aspect-ratio: 1;  
	border-radius: 100%;
	background-color: #8F9BB7;
	position: absolute;  
	top: 1rem;
	right: 0;  
	content: ""; 
}
#main .historyBox dd {
	position: relative;
	padding: 0.3rem 0 2.85rem 2.5rem;
	width: calc(100% - 15rem);
}
#main .historyBox dd:last-of-type {
	padding-bottom: 0;
}
#main .historyBox dd::before {
	width: 1px;  
	background-color: #8F9BB7;
	position: absolute;  
	top: 1rem;
	bottom: -1rem;
	left: -0.4rem;
	content: ""; 
}
#main .privacy {
	padding: 4.5rem 0 0;
}
#main .privacy .headLine04 {
	margin-bottom: 4.9rem;
}
#main .privacy .inner {
	padding: 5.5rem 0;
	border-block: 1px solid #545454;
}
#main .privacy .sub {
	margin-bottom: 4rem;
}
#main .privacy .sub:last-child {
	margin-bottom: 0;
}
#main .privacy h3 {
	margin-bottom: 0.9rem;
	font-size: 1.8rem;
	font-weight: 500;
}
#main .privacy p {
	line-height: 1.714;
}
#main .privacy p .txtSpan {
	display: block;
	margin-top: 0.5rem;
}
#main .privacy .list {
	margin: 0.5rem 0 0 4.7rem;
	line-height: 1.714;
}
#main .privacy .list li {
	text-indent: -0.5em;
	padding-left: 0.5em;
}

@media all and (min-width: 897px) {
	.comListBox .listUl .ttl {
		width: 27.7rem;
		padding-left: 7.6rem;
	}
	#main .mapBox .lBox dd .ico {
		font-size: 0.9rem;
		vertical-align: 0.2rem;
	}
}

@media all and (max-width: 896px) {
	.mainImg h2 {
		font-size: 3.6rem;
	}
	#main .bakuchis {
		padding: 7.3rem 0 4.8rem;
	}
	#main .bakuchis h3 {
		margin-bottom: 3rem;
		font-size: 1.8rem;
		letter-spacing: 0.12em;
		line-height: 1.56;
	}
	.comListBox .listUl {
		border-color: #545454;
	}
	.comListBox .listUl li {
		padding: 1.4rem 0;
		border-color: #545454;
	}
	.comListBox .listUl .ttl {
		align-self: flex-start;
	}
	#main .access .headLine04 {
		margin-bottom: 3.7rem;
	}
	#main .mapBox {
		margin-bottom: 5.7rem;
		flex-direction: column;
	}
	#main .mapBox .lBox {
		margin-bottom: 2.4rem;
		width: 100%;
	}
	#main .mapBox .rBox {
		width: 100%;
		margin: 0;
		aspect-ratio: 650 / 325;
	}
	#main .mapBox .lBox .ttl {
		margin-bottom: 2.2rem;
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		line-height: 1.65;
	}
	#main .mapBox .lBox dt {
		width: 6rem;
	}
	#main .mapBox .lBox dd {
		margin-bottom: 1.1rem;
		width: calc(100% - 6rem);
	}
	#main .history {
		padding: 5.3rem 0;
	}
	#main .history .headLine04 {
		margin-bottom: 2.5rem;
	}
	#main .historyBox {
		padding: 4.3rem 3.3rem 4.1rem;
	}
	#main .historyBox dl {
		display: block;
		position: relative;
	}
	#main .historyBox dl::before {
		width: 1px;  
		background-color: #8F9BB7;
		position: absolute;  
		top: 1rem;
		bottom: -1rem;
		left: 0;
		content: ""; 
	}
	#main .historyBox dt {
		padding: 0 0 0.1rem 2.7rem;
		width: auto;
		font-size: 2.2rem;
	}
	#main .historyBox dd {
		padding: 0.3rem 0 1.45rem 2.7rem;
		width: auto;
		line-height: 1.69;
	}
	#main .historyBox dd::before {
		display: none;
	}
	#main .historyBox dt::after {
		right: auto;
		left: -0.3rem;
		top: 0.7rem;
	}
	#main .historyBox dl::before {
		bottom: 0rem;
	}
	#main .privacy {
		padding-top: 5.6rem;
	}
	#main .privacy .headLine04 {
		margin-bottom: 2.9rem;
	}
	#main .privacy .inner {
		padding: 3.2rem 0;
	}
	#main .privacy h3 {
		margin-bottom: 0.6rem;
		font-size: 1.5rem;
	}
	#main .privacy .sub {
		margin-bottom: 2.6rem;
	}
	#main .privacy p {
		text-align: justify;
	}
	#main .privacy p .txtSpan {
		margin-top: 0;
	}
	#main .privacy .list {
		margin: 0 0 -0.2rem 3.9rem;
	}
}