
/* -------------------------------------
	ページ：TOP
----------------------------------------*/
.company__top-container {
}
.company__top-list {
	width: 80%;
	margin: auto;
	display: flex;
	gap: 10vw 6vw;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 8%;
}
@media screen and (max-width: 750px) {
	.company__top-list {
		width: 90%;
		flex-direction: column;
		font-size: 3.95vw;
		row-gap: 12vw;
		margin-bottom: 17%;
	}
}

.company__top-list-image {
	overflow: hidden;
	border-radius: 5px;
	margin-bottom: 4%;
}

.company__top-list-image.waku {
	border: 1px solid #d3d3d3;
}

.company__top-list>div {
	width: calc((100% - 6vw) / 2);
}
@media screen and (max-width: 750px) {
	.company__top-list>div {
		width: 100%;
	}
}

.div1 {
	width: 100%!important;
}

.zoom img {
	scale: 1.0;
	transition: .5s;
}
.zoom:hover img {
	scale: 1.05;
	transition-duration: 0.35s;
}

.company__top-list-info {
#	color: #2a2a2a;
	font-size: 1.08vw;
}
@media screen and (max-width: 750px) {
	.company__top-list-info {
		font-size: 3.95vw;
	}
}
.company__top-list-info .arrow-link {
	padding-right: 7%;
}
@media screen and (max-width: 750px) {
	.company__top-list-info .arrow-link {
		padding-right: 7%;
	}
}

.company__top-list-info label {
	font-size: 1.1vw;
	font-weight: bold;
	margin-bottom: 2%;
}
@media screen and (max-width: 750px) {
	.company__top-list-info label {
		font-size: 2.7vw;
	}
}


.company__top-list-info span {
	font-size: 2.4vw;
}
@media screen and (max-width: 750px) {
	.company__top-list-info span {
		font-size: 5.4vw;
	}
}

.company__top-list>div:hover .arrow-link {
	color: var(--main-cp-color);
}
.company__top-list>div:hover .arrow-link::after {
	background-image: url(/images/common/common_btn_arrow_02.png);
}
.company__top-list-info .arrow-link::after {
	top: 70%;
	width: 100%;
	height: 100%;
	background-size: auto 47%;
}
@media screen and (max-width: 750px) {
	.company__top-list-info .arrow-link::after {
		top: 63%;
		background-size: auto 40%;
	}
}

/* -------------------------------------
	ページ：Access 
----------------------------------------*/

/*** mainメニュー ***/
.company__access-container {
}
.company__access-image {
	width: 54%;
	margin-right: auto;
}
@media screen and (max-width: 750px) {
	.company__access-image {
		width: 100%;
		margin: auto;
	}
}

.company__access-address {
	font-size: 1.1vw;
	line-height: 170%;
	margin-top: 3%;
	margin-bottom: 5%;
}
@media screen and (max-width: 750px) {
	.company__access-address {
		margin-top: 0;
		font-size: 3.8vw;
	}
}

.company__access-address .common__text-with-underline {
	font-size: 1.7vw;
	margin-bottom: 4%;
}
@media screen and (max-width: 750px) {
	.company__access-address .common__text-with-underline {
		font-size: 4.7vw;
	}
}

.company__access-map {
	margin-bottom: 7%;
}

.company__access-map iframe {
	height: 500px;
}
@media screen and (max-width: 750px) {
	.company__access-map iframe {
		height: 300px;
	}
}

.company__access-map-google {
	text-align: right;
	padding: 1% 0;
	font-size: 0.9vw;
}
@media screen and (max-width: 750px) {
	.company__access-map-google {
		font-size: 3.4vw;
	}
}

.company__access-map-google .arrow-link {
	padding-right: 3%;
}
@media screen and (max-width: 750px) {
	.company__access-map-google .arrow-link {
		padding-right: 10%;
	}
}


.company__access-map iframe {
    /* filter: grayscale(1); */
    /* filter: sepia(.25); */
    /* filter: invert(100%); */
    /* filter: invert(100%) hue-rotate(-180deg); */
}

.company__access-text {
	margin-bottom: 9%;
}
@media screen and (max-width: 750px) {
	.company__access-text {
		margin-bottom: 15%;
	}
}

.company__access-text .common__text-with-leftline {
	font-size: 1.24vw;
	margin-bottom: 2%;
}
@media screen and (max-width: 750px) {
	.company__access-text .common__text-with-leftline {
		font-size: 4.2vw;
		margin-bottom: 5%;
	}
}

.company__access-text p {
	font-size: 1.1vw;
	line-height: 190%;
}
@media screen and (max-width: 750px) {
	.company__access-text p {
		font-size: 3.8vw;
	}
}

.company__access-text a {
	color: var(--main-cp-color);
}


/* -------------------------------------
	ページ：Route 
----------------------------------------*/
.company__route-container {
	background: #F8F8F8;
	padding-top: 7%;
	padding-bottom: 10%;
	margin-bottom: 10%;
}
@media screen and (max-width: 750px) {
	.company__route-container {
		padding-top: 10%;
		padding-bottom: 1%;
		margin-bottom: 13%;
	}
}

.company__route-list-wrap {
	width: 74%;
	margin: auto;
	background: #fff;
	padding: 3% 6% 6%;
	border-radius: 5px;
}
@media screen and (max-width: 750px) {
	.company__route-list-wrap {
		width: 87%;
		padding: 7% 6% 11%;
		margin-bottom: 15%;
	}
}

.company__route-text {
	width: 100%;
	margin: 0 auto 3%;
	font-size: 1.3vw;
}
@media screen and (max-width: 750px) {
	.company__route-text {
		font-size: 2.9vw;
		margin: 0 auto 7%;
	}
}

.company__route-text .common__text-with-underline {
	padding-bottom: 2%;
}
@media screen and (max-width: 750px) {
	.company__route-text .common__text-with-underline {
		font-size: 4.6vw;
		padding-bottom: 5%;
	}
}


.company__route-list {
	width: 100%;
	margin: 0 auto 10%;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	row-gap: 3vw;
}
@media screen and (max-width: 750px) {
	.company__route-list {
		row-gap: 10vw;
	}
}

.company__route-list-info {
	font-size: 1.1vw;
	line-height: 1.9;
}
@media screen and (max-width: 750px) {
	.company__route-list-info {
		font-size: 3.7vw;
		line-height: 1.7;
	}
}

.company__route-list-info img {
    margin-bottom: 3vw;
}

.company__route-button {
	width: 30%;
	margin: auto;
}
@media screen and (max-width: 750px) {
	.company__route-button {
		width: 82%;
	}
}
.company__route-button a {
	font-size: 1.0vw;
}
@media screen and (max-width: 750px) {
	.company__route-button a {
		font-size: 3.5vw;
		padding: 8% 0;
	}
}

.company__route-button .arrow-link-button {
	padding: 8% 9%;
}

.company__route-button .arrow-link-button::after {
	width: 13%;
	height: 13%;
}


/* -------------------------------------
	ページ：overview 
----------------------------------------*/
@media screen and (max-width: 750px) {
	.split__2-container {
		margin-bottom: 17%;
	}
}

.company__overview-container {
	margin-bottom: -1%;
}

@media screen and (max-width: 750px) {
	.company__overview-container .split__2-container {
		width: 89%;
		margin-bottom: 4%;
	}
}

.company__overview-list {
	font-size: 1.1vw;
	line-height: 1.9;
}
@media screen and (max-width: 750px) {
	.company__overview-list {
		font-size: 3.97vw;
		margin-bottom: 10%;
	}
}

.company__overview-list .route {
	text-decoration: underline;
	color: var(--main-cp-color);
}

.company__overview-list li {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 4% 1%;
	word-break: break-all;
	border-bottom: 1px solid #c5c5c5;
}
@media screen and (max-width: 750px) {
	.company__overview-list li {
		padding: 7% 0;
		flex-flow: column;
	}
}

.company__overview-list li:first-child {
	padding: 3% 1%;
}

.company__overview-list li:last-child {
	border-bottom: none;
}


.company__overview-list li>span {
	width: 17%;
	font-weight: bold;
}
@media screen and (max-width: 750px) {
	.company__overview-list li>span {
		width: 100%;
		font-size: 3.6vw;
		margin-bottom: 3%;
	}
}
.company__overview-list li>div {
	width: 80%;
}
@media screen and (max-width: 750px) {
	.company__overview-list li>div {
		width: 100%;
	}
}

.company__overview-list .business_txt {

}
@media screen and (max-width: 750px) {
	.company__overview-list .business_txt {

	}
}

.company__overview-list-image1 {
	margin-top: 3%;
}
@media screen and (max-width: 750px) {
	.company__overview-list-image1 {
		margin-top: 6%;
	}
}

.company__overview-list-image2 {
	width: 57%;
	margin-top: 5%;
}
@media screen and (max-width: 750px) {
	.company__overview-list-image2 {
		width: 100%;
		margin-top: 10%;
	}
}

.personnel-list {
	width: 70%;
	margin-bottom: 5%;
}
@media screen and (max-width: 750px) {
	.personnel-list {
		width: 100%;
		font-size: 3.9vw;
	}
}

.personnel-list2 {
	width: 70%;
}
@media screen and (max-width: 750px) {
	.personnel-list2 {
		width: 100%;
		font-size: 3.9vw;
	}
}

.company__overview-personnel-item {
	display: flex;
	justify-content: space-between;
}
.company__overview-personnel-item .role {
	width: 49%;
}
@media screen and (max-width: 750px) {
	.company__overview-personnel-item .role {
		width: 51%;
	}
}
.company__overview-personnel-item .name {
	width: 49%;
}
@media screen and (max-width: 750px) {
	.company__overview-personnel-item .name {
		width: 39%;
	}
}
.company__overview-abroad p span {
	font-weight: bold;
}


.company__overview-link-image-icon {
	width: 0.9vw;
	margin-left: 7px;
	vertical-align: middle;
}
@media screen and (max-width: 750px) {
	.company__overview-link-image-icon {
		width: 2.8vw;
	}
}

/* -------------------------------------
	ページ：message 
----------------------------------------*/
.company__message-image {
	margin-bottom: 5%;
}
@media screen and (max-width: 750px) {
	.company__message-image {

	}
}



.company__message-info {
	font-size: 1.1vw;
	line-height: 1.9;
	margin-top: 3%;
}
@media screen and (max-width: 750px) {
	.company__message-info {
		font-size: 4vw;
		margin-top: 0;
	}
}

.company__message-profile-label {
	font-weight: bold;
	margin-bottom: 1%;
}

.company__message-profile-personnel {
	text-align: right;
	margin-top: 2%;
	margin-bottom: 2%;
}
.company__message-profile-personnel .role {
	font-size: 1.08vw;
}
@media screen and (max-width: 750px) {
	.company__message-profile-personnel .role {
		font-size: 3.2vw;
	}
}
.company__message-profile-personnel .name {
	font-size: 1.5vw;
}
@media screen and (max-width: 750px) {
	.company__message-profile-personnel .name {
		font-size: 4.25vw;
	}
}

.company__message-profile-area {
	background: var(--bg-color-gray);
}

.company__message-profile-area a {
	color: #424242;
	text-decoration: underline;
}

.company__message-profile-area a:hover {
	border-bottom: none;
}

.company__message-profile-list {
	width: 100%;
	margin: auto;
	padding: 3% 2%;
	font-size: 1.1vw;
	line-height: 1.9;
}
@media screen and (max-width: 750px) {
	.company__message-profile-list {
		width: 95%;
		font-size: 3.2vw;
	}
}

.company__message-profile-list li {
	display: flex;
	justify-content: space-between;
}
.company__message-profile-list li>span {
	width: 12%;
}
@media screen and (max-width: 750px) {
	.company__message-profile-list li>span {
		width: 16%;
	}
}

.company__message-profile-list li>p {
	width: 85%;
}
@media screen and (max-width: 750px) {
	.company__message-profile-list li>p {
		width: 82%;
	}
}
.company__message-link {
	width: 100%;
	margin: auto;
	padding: 3% 2%;
}
@media screen and (max-width: 750px) {
	.company__message-link {
		width: 95%;
		font-size: 3.2vw;
	}
}

/* -------------------------------------
	ページ：philosophy 
----------------------------------------*/
.company__philosophy-text {
	font-size: 1.1vw;
	line-height: 1.9;
	margin-top: 3%;
}
@media screen and (max-width: 750px) {
	.company__philosophy-text {
		font-size: 4.0vw;
		margin-top: 0;
	}
}
.company__philosophy-text span {
	font-size: 2.2vw;
	line-height: 1.5;
	font-weight: bold;
}
@media screen and (max-width: 750px) {
	.company__philosophy-text span {
		font-size: 5.2vw;
	}
}
.company__philosophy-image {
	margin: 10% auto 3%;
}
@media screen and (max-width: 750px) {
	.company__philosophy-image {
		margin: 16% auto 25%;
	}
}

.company__philosophy-image img {
	border-radius: 5px;
}


/* -------------------------------------
	ページ：history 
----------------------------------------*/
.company__history-container {
	margin-bottom: 2%;
}

.company__history-list {
	font-size: 1.1vw;
}
@media screen and (max-width: 750px) {
	.company__history-list {
	    font-size: 3.8vw;
	}
}

.company__history-list li {
	display: flex;
	justify-content: space-between;
	padding: 4% 0 2%;
	word-break: break-all;
	border-bottom: 1px solid #c5c5c5;
}
@media screen and (max-width: 750px) {
	.company__history-list li {
		padding: 7% 1%;
		flex-flow: column;
	}
}

.company__history-list li:first-child {
	padding: 3% 0 2%;
}

.company__history-list li>span {
	width: 17%;
	color: var(--main-cp-color);
	font-weight: bold;
	font-size: 1.8vw;
}
@media screen and (max-width: 750px) {
	.company__history-list li>span {
		width: 100%;
		margin-bottom: 3%;
		font-size: 5.7vw;
	}
}
.company__history-list li>div {
	width: 80%;
	line-height: 1.9;
}
@media screen and (max-width: 750px) {
	.company__history-list li>div {
		width: 100%;
	}
}

.company__history-list .month dt {
	font-weight: bold;
}
.company__history-list .month dd {
	margin-bottom: 1em;
}


/* -------------------------------------
	左メニュー(共通)
----------------------------------------*/
.company__left-menu {
	font-size: 1.1vw;
}
.company__left-menu li {
	border-bottom: 1px solid #c5c5c5;
}
.company__left-menu li:first-child {
	border-bottom: 1.5px dotted #969696;
}
.company__left-menu li:first-child a {
	padding: 0 0 10%!important;
}
.company__left-menu li:hover {
#	color: var(--main-cp-color);
	border-bottom: 1px solid var(--main-cp-color);
}
.company__left-menu li:hover a {
	color: var(--main-cp-color);
}

.company__left-menu a {
	display: block;
	padding: 10% 0;
}
.company__left-menu li a:hover {
	border-bottom: unset;
}

.company__left-menu .arrow a {
	display: block;
	background-image: url(/images/common/common_btn_arrow_01.png);
	background-position: bottom 48% right;
	background-size: auto 29%;
	font-size: 1.3vw;
	font-weight: 600;
}
.company__left-menu .arrow a:hover {
	background-image: url(/images/common/common_btn_arrow_02.png);
}

.company__left-menu a span {
	font-size: 0.75vw;
}

/* -------------------------------------
	下部リンクエリア(共通)
----------------------------------------*/
.company__top-link {
	background: #F8F8F8;
	padding-top: 7%;
	padding-bottom: 7%;
}
.company__top-link-1 {
	width: 74%;
	margin: 0 auto 3%;
}
@media screen and (max-width: 750px) {
	.company__top-link-1 {
		width: 88%;
		padding-bottom: 4%;
		border-bottom: 1px solid #ececec;
	}
}
.company__top-link-head {
	font-size: 1.1vw;
	width: 37%;
	font-weight: bold;
}
@media screen and (max-width: 750px) {
	.company__top-link-head {
		width: 100%;
		font-size: 3.3vw;
	}
	.company__top-link-head a {
		width: 100%;
	}
}
.company__top-link-head span {
	font-size: 2.4vw;
}
@media screen and (max-width: 750px) {
	.company__top-link-head span {
		font-size: 7.0vw;
	}
}

.company__top-link-2 {
	width: 68%;
	margin: auto;
}
@media screen and (max-width: 750px) {
	.company__top-link-2 {
		width: 88%;
	}
}
.company__top-link-main {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8vw;
	row-gap: 2vw;
	justify-items: flex-start;
	font-size: 0.8vw;
}
@media screen and (max-width: 750px) {
	.company__top-link-main {
		grid-template-columns: repeat(1, 1fr);
		font-size: 2.7vw;
	}
}
.company__top-link-main span {
	font-size: 1.25vw;
	font-weight: bold;
}
@media screen and (max-width: 750px) {
	.company__top-link-main span {
		font-size: 4.0vw;
	}
}

.company__top-link-main li {
	width: 100%;
	background-image: url(/images/common/common_btn_arrow_01.png);
	background-position: bottom 50% right;
	background-repeat: no-repeat;
	background-size: auto 45%;
	border-bottom: 1px solid #ececec;
	padding-bottom: 4%;
}
.company__top-link-main li:hover {
	background-image: url(/images/common/common_btn_arrow_02.png);
}

.company__top-link a {
	color: #000;
}
.company__top-link a:hover {
	color: var(--main-cp-color);
	border: unset;
}

.company__top-link-head .arrow-link {
    padding-right: 10%;

}
.company__top-link-head .arrow-link::after {
	width: 100%;
	height: 100%;
	background-size: auto 48%;
	top: 62%;
}

@media screen and (max-width: 750px) {
	.company__top-link-head .arrow-link::after {
		background-size: auto 60%;
	}
}


/* -------------------------------------
	xxxxxxx
----------------------------------------*/

.dotted-two {
	border-bottom: 1px dashed #b4b4b4;
}
.box {
	margin-top: 8%;
	margin-bottom: 8%;
}
@media screen and (max-width: 750px) {
	.box {
		margin-top: 12%;
		margin-bottom: 12%;
	}
}
