
/* ------------------------------
会社情報共通 css
------------------------------ */
.mainVis{
	position: relative;
}
.commonTitle{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	font-size:24px;
	font-size:2.4rem;
	font-weight: normal;
	letter-spacing: 0.2em;
	color: #00579E;
	width: 100%;
}
.commonTitle span{
	display: block;
	line-height: 1;
}
.commonTitle span.en{
	display: inline-block;
	margin-bottom: 25px;
	padding:0 40px 20px 40px;
	border-bottom: solid 1px #c8c8c8;
	font-size:30px;
	font-size:3.0rem;
}
.mainTitle span.ja{
	color: #ffffff;
}

#main{
	border-bottom: solid 1px #cccccc;
}
#main .wrap{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	text-align: left;
	margin-top: 50px;
}
#main .wrap .content{
	width: 70%;
	text-align: left;
}
#main .wrap .sidebar{
	width: 30%;
	padding: 0 0 0 50px;
	font-size:16px;
	font-size:1.6rem;
}
#main .wrap .sidebar ul{
	list-style: none;
	border-top: solid 1px #c8c8c8;
}
#main .wrap .sidebar li{
	border-bottom: solid 1px #c8c8c8;
	padding: 2px 0;
}
#main .wrap .sidebar li span{
	display: block;
	padding: 13px 0;
}
#main .wrap .sidebar li.current span{
	border-left: solid 5px #00579E;
}
#main .wrap .sidebar li a{
	color: #3E3F44;
	background-image: url(../image/company_side_icon_tri_black.png);
	background-repeat: no-repeat;
	background-position: 0% 50%;
	margin: 0 0 0 40px;
	padding: 0 0 0 20px;
}
#main .wrap .sidebar li a:hover{
	color: #00579E;
	background-image: url(../image/company_side_icon_tri_blue.png);
}
#main .wrap .sidebar li.current a{
	color: #00579E;
	background-image: url(../image/company_side_icon_tri_blue.png);
	margin: 0 0 0 35px;
}
#main .wrap .sidebar li.index a{
	margin: 0 0 0 20px;
}
#main .wrap .sidebar li.index.current a{
	margin: 0 0 0 15px;
}

/* ------------------------------
会社情報ページ(index) css
------------------------------ */
.mainTitle{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	font-size:24px;
	font-size:2.4rem;
	font-weight: normal;
	letter-spacing: 0.2em;
	color: #ffffff;
	width: 100%;
}
.mainTitle span{
	display: block;
	line-height: 1;
}
.mainTitle span.en{
	display: inline-block;
	margin-bottom: 25px;
	padding:0 40px 20px 40px;
	border-bottom: solid 1px #ffffff;
	font-size:24px;
	font-size:2.4rem;
}
.companyIndex .menu{
	list-style: none;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 50px 0;
}
.companyIndex .menu li{
	width: 48%;
	max-width: 337px;
	margin: 0 0 50px 0;
}
.companyIndex .menu li a{
	color: #3E3F44;
	display: block;
}
.companyIndex .menu li a:hover{
	opacity: 0.7;
}
.companyIndex .menu li .image{
	margin: 0 0 15px 0;
}
.companyIndex .menu li h3{
	margin: 0 0 20px 0;
	font-size:18px;
	font-size:1.8rem;
	font-weight: normal;
	display: flex;
    align-items: center;
}
.companyIndex .menu li h3:after {
    border-top: 1px solid #c8c8c8;
    content: "";
    display: inline;
    flex-grow: 1;
}
.companyIndex .menu li h3:after {
    margin-left: 0.5em;
}
.companyIndex .menu li p{
	margin: 0 0 0 0;
	font-size:16px;
	font-size:1.6rem;
}

/* ------------------------------
トップメッセージページ(message) css
------------------------------ */
.messageTitle{
	position: absolute;
	top: 50%;
	left: 20%;
	-webkit-transform: translate(0%,-50%);
	-moz-transform: translate(0%,-50%);
	-ms-transform: translate(0%,-50%);
	-o-transform: translate(0%,-50%);
	transform: translate(0%,-50%);
	font-size:28px;
	font-size:2.8rem;
	letter-spacing: 0.2em;
	color: #2662ab;
	line-height: 1.8;
}

.companyMessage{
	padding: 0 0 100px 0;
}

.companyMessage .content p{
	font-size:16px;
	font-size:1.6rem;
	line-height: 1.8;
}
.companyMessage .content p.right_syomei{
	text-align: right;
	font-size: 0.8em;
	padding-top: 3rem;
}
.companyMessage .content span.syomei{
	font-size: 1.75em;
}
/* ------------------------------
経営理念ページ(philosophy) css
------------------------------ */
.companyPhilosophy{
	padding: 0 0 50px 0;
}
.companyPhilosophy h3{
	font-weight: normal;
	border-bottom: solid 1px #c8c8c8;
	margin: 0 0 18px 0;
	padding: 0 0 18px 0;
	font-size:16px;
	font-size:1.6rem;
}
.companyPhilosophy p{
	line-height: 1.8;
	font-size:16px;
	font-size:1.6rem;
}
.companyPhilosophy .block {
	margin: 0 0 50px 0;
}
.companyPhilosophy .image{
	margin: 30px 0 30px 0;
}
.companyPhilosophy .center{
	padding: 0 47px;
}

/* ------------------------------
会社概要ページ(outline) css
------------------------------ */
.companyOutline{
	padding: 0 0 100px 0;
}
.companyOutline table {
	border-collapse: collapse;
	width: 100%;
	border-top: solid 1px #c8c8c8;
	font-size:16px;
	font-size:1.6rem;
}
.companyOutline th,
.companyOutline td {
	border-bottom: solid 1px #c8c8c8;
	padding: 18px 0;
	line-height: 1.8;
}
.companyOutline th{
	font-weight: normal;
	width: 18%;
}

/* ------------------------------
事業内容ページ(description) css
------------------------------ */
.companyDescription{
	padding: 0 0 100px 0;
}
.companyDescription p{
	font-size:16px;
	font-size:1.6rem;
	line-height: 1.8;
}
.companyDescription .read{
	margin: 0 0 50px 0;
}
.companyDescription h3{
	font-size:16px;
	font-size:1.6rem;
	font-weight: normal;
	color: #2662ab;
	border-bottom: solid 1px #c8c8c8;
	margin: 0 0 50px 0;
	margin-top:-100px;
	padding-top:100px;
}
.companyDescription h3 span{
	display: inline-block;
	border-bottom: solid 1px #6a93c6;
	padding: 0 0 20px 0;
}
.companyDescription .flex{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 50px 0;
}
.companyDescription .flex p{
	width: 55%;
}
.companyDescription .flex .image{
	width: 45%;
	max-width: 264px;
}

/* ------------------------------
事業所一覧ページ(office) css
------------------------------ */
.companyOffice{
	padding: 0 0 100px 0;
}
.companyOffice table {
	border-collapse: collapse;
	width: 100%;
	border-top: solid 1px #c8c8c8;
	font-size:16px;
	font-size:1.6rem;
}
.companyOffice th,
.companyOffice td {
	border-bottom: solid 1px #c8c8c8;
	padding: 20px 0;
	line-height: 1.8;
}
.companyOffice th{
	width: 26%;
	vertical-align: top;
	text-align: left;
}
.companyOffice td.map{
	width: 100px;
}
.companyOffice .mapBtn{
	display: block;
	border: solid 1px #00579E;
	line-height: 1.0;
	text-align: center;
	padding: 15px 0px 14px;
	width: 100px;
}

/* ------------------------------
沿革ページ(history) css
------------------------------ */
.companyHistory{
	padding: 0 0 100px 0;
}
.companyHistory table {
	border-collapse: collapse;
	width: 100%;
	border-top: solid 1px #c8c8c8;
	font-size:16px;
	font-size:1.6rem;
}
.companyHistory th,
.companyHistory td {
	border-bottom: solid 1px #c8c8c8;
	padding: 18px 0;
	line-height: 1.8;
}
.companyHistory th{
	width: 23%;
	vertical-align: top;
	padding: 18px 0 18px 15px;
}


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

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

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


/* ------------------------------
トップメッセージページ(message) css
------------------------------ */
.messageTitle{
	font-size:24px;
	font-size:2.4rem;
}

.companyDescription h3{
	margin-top:-40px;
	padding-top:40px;
}

.companyOffice th,
.companyOffice td{
	display: block;
	width: 100%;
	border-bottom: none;
	padding: 0 0;
}
.companyOffice th{
	width: 100%;
	padding: 20px 0;
}
.companyOffice td.map{
	width: 100%;
	border-bottom: solid 1px #c8c8c8;
	padding: 20px 0;
}

}


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

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

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

@media screen and (max-width: 767px){
/* ------------------------------
会社情報共通 css
------------------------------ */
.commonTitle{
	font-size:12px;
	font-size:1.2rem;
}
.commonTitle span.en{
	margin-bottom: 10px;
	padding:0 30px 10px 30px;
	font-size:15px;
	font-size:1.5rem;
}

#main .wrap{
	display:block;
	margin-top: 25px;
}
#main .wrap .content{
	width: 100%;
}

#main .wrap .sidebar{
	width: 100%;
	padding: 0 0 0 0;
}
#main .wrap .sidebar p{
	font-size:10px;
	font-size:1.0rem;
	font-weight: bold;
	background-color: #d4eaff;
	padding: 9px 0;
	margin: 0 0 12px 0;
}
#main .wrap .sidebar p a{
	background-image: url(../image/company_side_icon_tri_blue_sp.png);
	background-repeat: no-repeat;
	background-position: 0% 50%;
	background-size: 15%;
	margin: 0 0 0 17px;
	padding: 0 0 0 17px;
}
#main .wrap .sidebar ul{
	list-style: none;
	border-top: none;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 25px 0;
}
#main .wrap .sidebar li{
	width: 48%;
	border: solid 1px #00579E;
	padding: 7px 0 7px;
	text-align: center;
	font-size:8px;
	font-size:0.8rem;
	margin: 0 0 6px 0;
}
#main .wrap .sidebar li span{
	padding: 0;
}
#main .wrap .sidebar li.current span{
	border-left: none;
}
#main .wrap .sidebar li a{
	color: #3E3F44;
	background-image: none;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	display: block;
}
#main .wrap .sidebar li a:hover{
	color: #00579E;
	background-image: none;
}
#main .wrap .sidebar li.current a{
	color: #00579E;
	background-image: none;
	margin: 0 0 0 0;
}

/* ------------------------------
会社情報ページ(index) css
------------------------------ */
.mainTitle{
	font-size:12px;
	font-size:1.2rem;
}
.mainTitle span.en{
	margin-bottom: 10px;
	padding:0 30px 10px 30px;
	font-size:15px;
	font-size:1.5rem;
}
.companyIndex .menu{
	display:block;
	margin: 0 0 25px 0;
}
.companyIndex .menu li{
	width: 100%;
	max-width: 100%;
	margin: 0 0 25px 0;
}
.companyIndex .menu li .image{
	margin: 0 0 10px 0;
}
.companyIndex .menu li h3{
	margin: 0 0 8px 0;
	font-size:12px;
	font-size:1.2rem;
}
.companyIndex .menu li p{
	margin: 0 0 0 0;
	font-size:12px;
	font-size:1.2rem;
}

/* ------------------------------
トップメッセージページ(message) css
------------------------------ */
.messageTitle{
	position: absolute;
	top: 50%;
	left: 20%;
	font-size:10px;
	font-size:1.0rem;
	line-height: 1.8;
}

.companyMessage{
	padding: 0 0 25px 0;
}

.companyMessage .content p{
	font-size:8px;
	font-size:0.8rem;
	margin: 0 0 25px 0;
}
.companyMessage .content p.right_syomei{
	text-align: right;
	font-size: 0.8rem;
	padding-top: 0;
}
.companyMessage .content span.syomei{
	font-size: 1.25rem;
}
/* ------------------------------
経営理念ページ(philosophy) css
------------------------------ */
.companyPhilosophy{
	padding: 0 0 25px 0;
}
.companyPhilosophy h3{
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
	font-size:14px;
	font-size:1.4rem;
}
.companyPhilosophy p{
	font-size:12px;
	font-size:1.2rem;
}
.companyPhilosophy .block {
	margin: 0 0 25px 0;
}
.companyPhilosophy .image{
	margin: 17px 0 17px 0;
}
.companyPhilosophy .center{
	padding: 0;
}

/* ------------------------------
会社概要ページ(outline) css
------------------------------ */
.companyOutline{
	padding: 0 0 0 0;
}
.companyOutline table {
	font-size:12px;
	font-size:1.2rem;
	margin: 0 0 25px 0;
}
.companyOutline th,
.companyOutline td {
	padding: 18px 0;
}
.companyOutline th{
	width: 17%;
	min-width: 75px;
}

/* ------------------------------
事業内容ページ(description) css
------------------------------ */
.companyDescription{
	padding: 0 0 0 0;
}
.companyDescription p{
	font-size:12px;
	font-size:1.2rem;
	line-height: 1.8;
}
.companyDescription .read{
	margin: 0 0 25px 0;
}
.companyDescription h3{
	font-size:12px;
	font-size:1.2rem;
	margin: 0 0 25px 0;
}
.companyDescription h3 span{
	padding: 0 0 10px 0;
}
.companyDescription .flex{
	display:block;
	margin: 0 0 25px 0;
}
.companyDescription .flex p{
	width: 100%;
	margin: 0 0 25px 0;
}
.companyDescription .flex .image{
	width: 100%;
	max-width: 100%;
}

/* ------------------------------
事業所一覧ページ(office) css
------------------------------ */
.companyOffice{
	padding: 0 0 0 0;
}
.companyOffice table {
	margin: 0 0 25px 0;
}
.companyOffice th,
.companyOffice td {
	padding: 0;
}
.companyOffice th{
	padding: 10px 0 5px;
	font-size:12px;
	font-size:1.2rem;
}
.companyOffice td{
	font-size:11px;
	font-size:1.1rem;
}
.companyOffice td.map{
	padding: 10px 0;
}
.companyOffice .mapBtn{
	padding: 8px 0px 7px;
	width: 50px;
	font-size:8px;
	font-size:0.8rem;
}

/* ------------------------------
沿革ページ(history) css
------------------------------ */
.companyHistory{
	padding: 0 0 0 0;
}
.companyHistory table {
	font-size:12px;
	font-size:1.2rem;
	margin: 0 0 25px 0;
}
.companyHistory th,
.companyHistory td {
	display: block;
	width: 100%;
	padding: 0 0;
}
.companyHistory th{
	width: 100%;
	min-width: 100%;
	border-bottom: none;
	padding: 12px 0 0 15px;
}
.companyHistory td{
	padding: 5px 0 12px 15px;
}


}
