@charset "UTF-8";
/* ------------------------------
固定ページ　企業情報用css
------------------------------ */

.img_center {
	text-align: center;
	padding: 30px 0;
}
.img_center.logo {
	text-align: center;
	padding: 50px 0;
}
.img_center img{
	max-width: 100%;
}
.img_center p a{
	text-decoration: underline;
}
h3 span.underline {
	border-bottom: 1px solid #333;
}

.company-section02.padding table th, .company-section02.padding table td{
	height: auto;
	padding: 20px 0;
	line-height: 1.5;
}



/* --------------------------- mainvis */
.page-network-child .mainvis-large,
.page-profile .mainvis-large,
.page-profile-child .mainvis-large,
.page-about-child .mainvis-large,
.page-profile02 .mainvis-large{
	background:url(../img/profile_mainvis.png) 50% top no-repeat;
	background-size:cover;
	height: 707px;
}
.page-network-child .mainvis-large .mainvis-white-board,
.page-profile .mainvis-large .mainvis-white-board,
.page-profile-child .mainvis-large .mainvis-white-board{
/*	top: 14%;*/
}
.page-profile .mainvis .mainvis-menu,
.page-network-child .mainvis-large .mainvis-menu,
.page-profile .mainvis-large .mainvis-menu,
.page-profile-child .mainvis-large .mainvis-menu,
.page-about-child .mainvis-large .mainvis-menu,
.page-profile02 .mainvis-large .mainvis-menu{
	position: absolute;
	bottom: 0px;
	left: 10%;
	letter-spacing: 0em;
	font-size: 0;
}
.page-profile .mainvis .mainvis-menu li,
.page-network-child .mainvis-large .mainvis-menu li,
.page-profile .mainvis-large .mainvis-menu li,
.page-profile-child .mainvis-large .mainvis-menu li,
.page-about-child .mainvis-large .mainvis-menu li,
.page-profile02 .mainvis-large .mainvis-menu li{
	display: inline-block;
	letter-spacing: normal;
	font-size:18px;
	background: #FFFFFF;
	opacity: 0.9;
	margin: 0 1px 0 0;
}
.page-profile .mainvis .mainvis-menu li.current,
.page-network-child .mainvis-large .mainvis-menu li.current,
.page-profile .mainvis-large .mainvis-menu li.current,
.page-profile-child .mainvis-large .mainvis-menu li.current,
.page-about-child .mainvis-large .mainvis-menu li.current,
.page-profile02 .mainvis-large .mainvis-menu li.current{
	background: #0090FA;
	opacity: 0.8;
	color: #FFFFFF;
	padding: 30px 42px;
}
.page-profile .mainvis .mainvis-menu li a,
.page-network-child .mainvis-large .mainvis-menu li a,
.page-profile .mainvis-large .mainvis-menu li a,
.page-profile-child .mainvis-large .mainvis-menu li a,
.page-about-child .mainvis-large .mainvis-menu li a,
.page-profile02 .mainvis-large .mainvis-menu li a{
	display: block;
	width:100%;
	height:100%;
	padding: 30px 42px;
}

/* --------------------------- page-menu */
.page-profile .page-menu{
	letter-spacing: -.4em;
	margin: 0 auto;
	text-align: center;
	background: #FAFAFA;
	padding: 13px 0 12px 0;
	margin: 20px 0 0 0;
}
.page-profile .page-menu li{
	display: inline-block;
	letter-spacing: normal;
	background:url(../img/cmn_icon_sort.png) 100% 50% no-repeat;
	margin: 0 83px 0 0;
	padding: 0 15px 0 0;
	font-size:112.5%;
}
page-profile .page-menu li:last-child{
	margin: 0;
}

/* --------------------------- company-section01 */
.company-section01{
	padding:65px 0;
}
.company-section01 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
}
.company-section01 h3 span{
	border-bottom:1px solid #333;
}
.company-section01 h3 strong{
	font-size:110%;
	font-weight:bold;
}
.company-section01 h4 span{
	display: block;
	text-align: center;
	line-height: 1.4;
	margin: 30px 0 20px 0;
}
.company-section01 .block{
	display: flex;
	padding:0;
	justify-content:space-between;
	padding: 15px 0 0 0;
	flex-wrap: wrap;
}
.company-section01 .block .section01-left{
	width: 100%;
	/* flex: 1; */
}
.company-section01 .block .section01-left img{
	width: 80%;
	margin-left: 10%;
}
.company-section01 .block .section01-right{
    width: 80%;
	padding: 100px 0 0;
    line-height: 2.0;
    font-size: 20px;
    margin: auto;
	text-align: center;
}
.company-section01 .block .section01-right h4{
	margin: 0 0 30px 0;
}
.company-section01 .block .section01-right p{
	width: 100%;
	line-height: 2.0;
	text-align: justify;
}
.company-section01 .block .section01-right .sign{
	text-align: right;
	margin: 20px 0 0 0;
	padding: 0 1.5em 0 0;
}

/* --------------------------- company-section02 */
.company-section02{
	padding:55px 0 40px;
	background: #FAFAFA;
}
.company-section02 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
}
.company-section02 h3 span{
	border-bottom:1px solid #333;
}
.company-section02 table{
	margin: 51px auto 0;
	width: 84%;
	text-align: center;
	border-top: solid #dddddd 1px;
	border-spacing:0px;
}
.company-section02 table th,
.company-section02 table td{
	text-align: left;
	border-bottom: solid #dddddd 1px;
	vertical-align: middle;
	height: 67px;
}
.company-section02 table th{
	width: 30%;
	padding: 0 0 0 34px;
}
.company-section02 table td img{
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 20px;
}

/* --------------------------- company-section03 */
.company-section03{
	padding:40px 0 75px;
	background: #FAFAFA;
}
.company-section03 .title{
	text-align: center;
	color:#333333;
	line-height: 1.3;
}
.company-section03 table{
	margin: 0 auto;
	width: 84%;
	text-align: center;
	border-top: solid #dddddd 1px;
	border-spacing:0px;
}
.company-section03 table th,
.company-section03 table td{
	text-align: left;
	border-bottom: solid #dddddd 1px;
	vertical-align: middle;
	height: 67px;
}
.company-section03 table th{
	width: 40%;
	padding: 0 0 0 34px;
}
.company-section03 .yakuin table{
	margin: 50px auto 0;
}
.company-section03 .komon .title{
	margin: 50px 0 0 0;
}
/* --------------------------- company-section04 */
.company-section04{
	padding:55px 0 60px;
}
.company-section04 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
}
.company-section04 h3 span{
	border-bottom:1px solid #333;
}
.company-section04 table{
	margin: 0 auto;
	width: 100%;
	margin: 65px 0 0 0;
	border-spacing:0px;
}
.company-section04 table td{
	border-top: solid #dddddd 1px;
	padding: 45px 0 45px 70px;
	vertical-align: top;
	line-height: 1.8;
}
.company-section04 table td:first-child{
	border-right: solid #dddddd 1px;
}
.company-section04 table td.honsya{
	border-right: none !important ;
	padding: 45px 0 30px 0px;
}
.company-section04 table td.honsya .center{
	float: left;
	margin: 0 0 0 50%;
	transform: translateX(-50%);
}
.company-section04 table td.honsya .name{
	float: left;
}
.company-section04 table td.honsya .detail{
	float: left;
	margin: 0 0 0 60px;
}
.company-section04 table td .map{
	margin: 8px 0 0 0;
}
.company-section04 table td.td50p {
	width: 50%;
}

.company-section04 {
  padding: 55px 0 60px;
}
.company-section04 h3 {
  text-align: center;
  color: #333333;
  line-height: 1.4;
  margin-bottom: 60px;
}
.company-section04 h3 span {
  border-bottom: 1px solid #333;
}
.company-list {
  max-width: 900px;
  margin: 0 auto;
}
.company-item {
  margin-bottom: 50px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ddd;
}
.company-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.item-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 15px;
}
.item-head .name {
  font-weight: bold;
  margin: 0;
}
.item-body {
  padding-left: 0;
  line-height: 1.8;
}
.item-body .address {
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .item-head {
    display: block;
  }
  .item-head .blue-btn {
    margin-top: 15px;
    width: 100%;
    text-align: center;
  }
  .blue-btn a {
    padding: 15px 0;
    width: 100%;
    box-sizing: border-box;
  }
}
/* --------------------------- company-section05 */
.company-section05{
	padding:55px 0 60px;
	background: #F5F8FA;
}
.company-section05 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	margin: 0 0 48px 0;
}
.company-section05 h3 span{
	border-bottom:1px solid #333;
}
.company-section05 table{
	width: 100%;
	padding: 0 0 0 42px;
	border-spacing:0px;
}
.company-section05 table th{
	font-weight: normal;
	width: 160px;
	text-align: left;
}
.company-section05 table th,
.company-section05 table td{
	vertical-align: top;
	padding: 0 0 15px 0;
}


/* --------------------------- philosophy-section01 */
.philosophy-section01{
	padding:130px 0 80px;
}
.philosophy-section01 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
}
.philosophy-section01 h3 span{
	border-bottom:1px solid #333;
}
.philosophy-section01 .philosophy{
	text-align: center;
	margin: 110px 0 90px 0;
	letter-spacing: 0.4em;
}
.philosophy-section01 ul{
	/*background: #FAFAFA;*/
	width: 65%;
	margin: 0 auto;
	list-style: none;
	padding: 35px 50px;
}
.philosophy-section01 ul li{
	line-height: 2.0;
}
.philosophy-section01 ul li:before {
	content: '・';
	margin-left:-1em;
}

/* --------------------------- philosophy-section02 */
.philosophy-section02{
	padding:80px 0 70px;
	background: #FAFAFA;
}
.philosophy-section02 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	margin: 0 0 75px 0;
}
.philosophy-section02 h3 span{
	border-bottom:1px solid #333;
}
.philosophy-section02 .block{
	text-align: center;
	margin: 0 auto 90px;
}
.philosophy-section02 .block h4{
	border: solid 1px #95989A;
	width: 180px;
	text-align: center;
	margin: 0 auto 25px;
	padding: 10px 0 8px;
}
.philosophy-section02 .block p{
	line-height: 1.4;
	margin: 0 0 30px 0;
}
.philosophy-section02 .block ul{
	list-style: none;
}
.philosophy-section02 .block ul li{
	line-height: 2.0;
}
.philosophy-section02 .block ul li:before {
	content: '・';
	margin-left:-1em;
}


/* --------------------------- governance-section01 */
.governance-section01{
	padding:110px 0 120px;
}
.governance-section01 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	margin: 0 0 95px 0;
}
.governance-section01 h3 span{
	border-bottom:1px solid #333;
}
.governance-section01 p{
	width: 82%;
	margin: 0 auto;
}
.governance-section01 h4{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	margin: 70px 0 45px 0;
}
.governance-section01 h4 span{
	border-bottom:1px solid #333;
}
.governance-section01 .image{
	text-align: center;
	margin: 60px auto 0 auto;
	width: 80%;
}
/* --------------------------- governance-section02 */
.governance-section02{
	padding:70px 0 90px;
	background: #FAFAFA;
}
.governance-section02 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	margin: 0 0 95px 0;
}
.governance-section02 h3 span{
	border-bottom:1px solid #333;
}
.governance-section02 dl{
	width: 82%;
	margin: 0 auto;
	line-height: 2.0;
}
.governance-section02 dd{
	margin: 0 0 40px 0;
}
.governance-section02 dd:last-child{
	margin: 0;
}
/* --------------------------- governance-section02 */
.governance-section03{
	padding:85px 0 115px;
}
.governance-section03 h3{
	text-align: center;
	color:#333333;
	line-height: 1.4;
	padding: 0 0 15px 0;
}
.governance-section03 h3 span{
	border-bottom:1px solid #333;
}
.governance-section03 dl{
	width: 82%;
	margin: 0 auto;
	line-height: 2.0;
}
.governance-section03 dt{
	font-weight: bold;
	margin: 35px 0 0 0;
}
.governance-section03 .date{
	width: 82%;
	margin: 35px auto 0;
	line-height: 2.0;
}
h4.border {
	font-size: 20px;
	display: inline-block;
	border: 1px solid #707070;
	padding: 3px 50px;
	margin-top: 50px;
}

.network_item {
	display: flex;
	margin-top: 50px;
}
.network_item .img{
	width: 400px;
}
.network_item .img img{
	max-width: 100%;
}
.network_item .tx{
	width: calc(100% - 400px);
}
.network_item .tx h5{
	font-size: 22px;
	font-weight: bold;
}
.network_item .tx p{
	margin-top: 30px;
}
.network_item .tx .taright{
	text-align: right;
}
p.strong {
	margin-top: 30px;
	font-size: 18px;
	font-weight: bold;
}
p.strong + p {
	margin-top: 30px;
}


/* ---------------------------------------------------------------------------- 

▼▼▼ ウィンドウサイズ1140px以下にのみ適用されるcss ▼▼▼

---------------------------------------------------------------------------- */
@media only screen and (max-width: 1140px) {

	.mainvis .mainvis-menu,
	.mainvis-large .mainvis-menu{
		left: 3%;
	}
	.mainvis .mainvis-menu li,
	.mainvis-large .mainvis-menu li{
		font-size: 100%;
	}
	.page-menu{
		text-align: center;
	}
	.page-menu li{
		margin: 0 20px 0 0;
		font-size:100%;
	}
	.company-section01{
		padding:40px 3%;
	}
	.company-section01 .block{
		display: block;
		padding:0;
		padding: 15px 0 0 0;
	}
	.company-section01 .block .section01-left{
		width: 100%;
		text-align: center;
	}
	.company-section01 .block .section01-left img{
		width: 70%;
		max-width: 580px;
		margin-left: 0;
	}
	.company-section01 .block .section01-right{
		width: 100%;
		padding: 20px 0 0 0;
	}
	.company-section01 .block .section01-right p{
		width: 100%;
	}
	
	.philosophy-section01{
		padding:130px 3%;
	}
	.company-section04 table td.honsya .center{
		float: left;
		margin: 0 0 0 50%;
		transform: translateX(-50%);
	}
	.company-section04 table td.honsya .detail{
		float: left;
		margin: 0 0 0 30px;
	}

}


/* ---------------------------------------------------------------------------- 

▼▼▼ ウィンドウサイズ768px以下にのみ適用されるcss ▼▼▼

---------------------------------------------------------------------------- */

@media screen and (max-width: 768px){
	
	
	.page-network-child .mainvis-large,
	.page-profile .mainvis-large,
	.page-profile-child .mainvis-large,
	.page-about-child .mainvis-large{
		height: 45vh;
		min-height:300px;
	}
	.page-network-child .mainvis-large .mainvis-white-board,
	.page-profile .mainvis-large .mainvis-white-board,
	.page-profile-child .mainvis-large .mainvis-white-board,
	.page-about-child .mainvis-large .mainvis-white-board{
		position: absolute;
		top: auto;
		bottom: 65px;
		left: 0%;
		font-size: 12px;
	}
	.page-network-child .mainvis-large .mainvis-menu,
	.page-profile .mainvis .mainvis-menu,
	.page-profile .mainvis-large .mainvis-menu,
	.page-profile-child .mainvis-large .mainvis-menu,
	.page-about-child .mainvis-large .mainvis-menu  {
		left:2%;
	}
	.page-network-child .mainvis-large .mainvis-menu li,
	.page-profile .mainvis .mainvis-menu li,
	.page-profile .mainvis-large .mainvis-menu li,
	.page-profile-child .mainvis-large .mainvis-menu li,
	.page-about-child .mainvis-large .mainvis-menu li{
		font-size:10px;
		margin-right: 2px;
	}
	.page-network-child .mainvis-large .mainvis-menu li.current,
	.page-profile .mainvis .mainvis-menu li.current,
	.page-profile .mainvis-large .mainvis-menu li.current,
	.page-profile-child .mainvis-large .mainvis-menu li.current,
	.page-about-child .mainvis-large .mainvis-menu li.current{
		padding: 10px 8px;
	}
	.page-network-child .mainvis-large .mainvis-menu li a,
	.page-profile .mainvis .mainvis-menu li a,
	.page-profile .mainvis-large .mainvis-menu li a,
	.page-profile-child .mainvis-large .mainvis-menu li a,
	.page-about-child .mainvis-large .mainvis-menu li a{
		display: block;
		width:100%;
		height:100%;
		padding: 10px 8px;
	}
	.page-profile .page-menu{
		text-align: left;
		padding: 13px 0 12px 3%;
	}
	.page-profile .page-menu li{
		display: inline-block;
		background:url(../img/cmn_icon_sort.png) 0% 50% no-repeat;
		margin: 0.5em 2em 0.5em 0;
		padding: 0 0 0 15px;
	}
	.page-profile .page-menu li:last-child{
		margin: 0;
	}
	.company-section01 .block .section01-left img {
		width: 80%;
	}
	.company-section02{
		padding:40px 0;
	}
	.company-section02 table{
		margin: 20px auto 0;
		width: 100%;
	}
	.company-section02 table th,
	.company-section02 table td{
		height: auto;
		padding: 20px 0 18px
	}
	.company-section02 table th{
		padding: 0 10px 0 0px;
		white-space:nowrap;
	}
	.company-section02 table td img{
		display: block;
		width: 50px;
		height: auto;
		margin:5px 0 0 0;
	}
	.company-section03{
		padding:40px 0;
	}
	.company-section03 table{
		width: 100%;
	}
	.company-section03 table th,
	.company-section03 table td{
		height: auto;
		padding: 20px 0 18px
	}
	.company-section03 table th{
		padding: 0 10px 0 0px;
		white-space:nowrap;
	}
	.company-section03 .yakuin table{
		margin: 20px auto 0;
	}
	.company-section03 .komon .title{
		margin: 20px 0 0 0;
	}
	.company-section04{
		padding:40px 0;
	}
	.company-section04 table{
		margin: 20px 0 0 0;
	}
	.company-section04 table td{
		display: block;
		padding: 20px 0 20px 10px;
	}
	.company-section04 table td.honsya{
		padding: 20px 0 20px 10px;
	}
	.company-section04 table td:first-child{
		border-right: none;
	}
	.company-section04 table td.honsya .center{
		float: none;
		margin: 0 0 0 0;
		transform: none;
	}
	.company-section04 table td.honsya .name{
		float: none;
	}
	.company-section04 table td.honsya .detail{
		float: none;
		margin: 0 0 0 0;
	}
	.company-section04 table td.td50p {
		width: auto;
	}
	.company-section04 table td img{
		width: 50px;
		height: auto;
	}
	.company-section05{
		padding:30px 0;
	}
	.company-section05 table th{
		width: 15%;
		padding: 0 10px 0 0;
		white-space:nowrap;
	}
	.company-section05 h3{
		margin: 0 0 20px 0;
	}
	.company-section05 table{
		padding: 0;
	}
	
	.philosophy-section01{
		padding:40px 3%;
	}
	.philosophy-section01 .philosophy{
		text-align: center;
		margin: 40px 0 40px 0;
		letter-spacing: 0.1em;
		font-size: 28px;
	}
	.philosophy-section01 ul{
		width: 100%;
		margin: 0 auto;
		list-style: none;
		padding: 20px 30px;
	}
	.philosophy-section02{
		padding:40px 2%;
	}
	.philosophy-section02 h3{
		text-align: center;
		color:#333333;
		line-height: 1.4;
		margin: 0 0 40px 0;
	}
	.philosophy-section02 .block h4{
		margin-bottom:20px;
	}
	.philosophy-section02 .block{
		text-align: center;
		margin: 0 auto 40px;
	}
	.philosophy-section02 .block:last-child{
		margin: 0 auto;
	}
	
	.governance-section01{
		padding:20px 3%;
	}
	.governance-section01 h3{
		margin: 0 0 20px 0;
	}
	.governance-section01 p{
		width: 100%;
	}
	.governance-section01 h4{
		margin: 20px 0 20px 0;
	}
	.governance-section01 .image{
		margin: 20px 0 0 0;
		width: 100%;
	}
	.governance-section02{
		padding:20px 3%;
	}
	.governance-section02 h3{
		margin: 0 0 20px 0;
	}
	.governance-section02 dl{
		width: 100%;
	}
	.governance-section02 dd{
		margin: 0 0 20px 0;
	}
	.governance-section02 dd:last-child{
		margin: 0;
	}
	.governance-section03{
		padding:20px 3%;
	}
	.governance-section03 h3{
		padding: 0;
	}
	.governance-section03 dl{
		width: 100%;
	}
	.governance-section03 dt{
		font-weight: bold;
		margin: 20px 0 0 0;
	}
	.governance-section03 .date{
		width: 100%;
		margin: 20px auto 0;
	}

.network_item {
	display: block;
	margin-top: 50px;
}
.network_item .img{
	width: auto;
}
.network_item .tx{
	width: auto;
	margin-top: 30px;
}
.network_item .tx h5{
	font-size: 22px;
	font-weight: bold;
}
.network_item .tx p{
	margin-top: 30px;
}
.network_item .tx .taright{
	text-align: center;
}
p.strong + p {
	margin-top: 20px;
}

}