@charset "UTF-8";
/* CSS Document */

@import "../../../../files/css/common/layout.css";



/*-------------------------------------------------------------------------
	mainContents
/*-----------------------------------------------------------------------*/


#mainContents h1{
	clear:both;
	position:relative;
	zoom:1;
	}

#mainContents h1 #newsNavi{
	width:430px;
	display:inline;
	position:absolute;
	right:0;
	bottom:-1px;
	}

#mainContents h1 #newsNavi li{
	margin-right:8px;
	float:left;
	width:135px;
	height:37px;
	}



#main #content #mainContents .section p{
	font-size:100%;
	}
	
	
/*-------------------------------------------------------------------------
	article　記事ページ共通css
/*-----------------------------------------------------------------------*/

#article #main h1 {
	border-bottom: 1px solid #c9caca;
}
#article #main #content #mainContents h2 {
	margin-top: 30px;
	padding: 0;
	padding-bottom: 0.4em;
	background: none;
	border-bottom: 4px solid #C9CACA;
	font-size: 115%;
	font-weight: bold;
}
#article #main #content #mainContents h3 {
	margin-bottom: 0;
	padding: 0;
	background: none;
}
#article #mainContents .section p {
	margin-bottom: 2em;
		
}
#article #mainContents p.send {
	margin-bottom: 0;
}
#article #mainContents p.from {
	text-align: right;	
}
#article #mainContents p.imgbox {
	text-align: center;
}
#article #mainContents .section dl {
	margin-bottom: 2em;
	padding-left: 1em;
	text-indent: -1em;
}
#article #mainContents .inquiry {
	padding: 15px 30px;
	width: 25em;
	border: 1px solid #C9CACA;
}
#article #mainContents .inquiry #address img {
	vertical-align:-4.25px;
	}
#article #mainContents .section ul {
	padding-left: 1em;
	text-indent: -1em;
}

#article #mainContents .section .line {
	margin-bottom:1em;
	padding:10px 0;
	border-top:1px solid #C9CACA;
	border-bottom:1px solid #C9CACA;
	}
#article #mainContents .note {
	margin-bottom:2em;
	}
#article #mainContents .note li {
	margin-bottom:1em;
	padding-left:0;
	}
#article #mainContents .note li.last {
	margin-bottom:0;
	}
#article #mainContents .section .inquiry h3 {
	margin: 0;
	font-size: 1.5rem;
	line-height: 1.6;
}
	

/*-------------------------------------------------------------------------
	新体制の概要チャート用css
/*-----------------------------------------------------------------------*/

.org-chart-container {
    line-height: 1.6;
    max-width: 600px;
    padding-top: 20px;
}

.org-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 25px;
}

.root-node {
    /* 線を表示するためのスペースを確保 */
    margin-bottom: 30px;
}

.role-name {
    font-size: 16px;
    display: block;
}

.company-name {
    font-size: 16px;
    display: block;
    padding-left: 1em; /* 2行目を少し下げる */
    margin-bottom: 5px;
}


/* ツリー構造エリア全体 */
.tree-structure {
    position: relative;
    margin-left: 40px; /* 左端からの距離 */
    padding-left: 30px; /* 縦線とテキストの距離 */
}

/* 縦線の描画 */
.tree-structure::before {
    content: '';
    position: absolute;
    /* 【修正点】文字に重ならないよう、開始位置を下げる */
    /* マージン分の高さだけ上に伸ばして接続させる */
    top: -20px; 
    bottom: 0;  /* 一番下まで引く */
    left: 0;    /* 左端に配置 */
    width: 1px; /* 線の太さ */
    background-color: #000;
    z-index: -1; /* 文字や横線より後ろに配置 */
}

/* 各事業ノード */
.child-node {
    position: relative;
    margin-bottom: 30px; /* 各項目の間隔 */
}

/* 最後の項目だけ下の余白をなくす */
.child-node:last-child {
    margin-bottom: 0;
}

/* 横線（枝）の描画 */
.child-node::before {
    content: '';
    position: absolute;
    top: 0.7em; /* 線の高さ位置調整 */
    left: -30px; /* 線の開始位置（縦線にくっつける） */
    width: 30px; /* 横線の長さ */
    height: 1px; /* 線の太さ */
    background-color: #000;
}

/* 最後の項目の「下にはみ出た縦線」を隠す処理 */
.child-node:last-child::after {
    content: '';
    position: absolute;
    /* 横線の位置より少し下から隠し始める */
    top: 0.8em; 
    left: -32px; 
    width: 4px; /* 線より少し太くして確実に隠す */
    height: 100%; /* 下まで隠す */
    background-color: #fff; /* 背景色（白） */
    z-index: -1;
}