@charset "utf-8";
/* CSS Document */
/*  PC 1200px レスポンシブル設定は890px～ 1em = 16px */

/* コンテンツ大枠 */
#page_contents{max-width:950px; width: calc(100% - 20px); padding: 0 10px; margin: auto; display: flex; font-size: 14px;}
#page_contents #page_contents_detail{width: calc(100% - 250px);}
#page_contents #page_contents_menu{width: 220px; margin-left: 30px;}

@media screen and (max-width: 890px) {
	#page_contents{width: calc(100% - 0px); padding: 0 0 70px; flex-wrap: wrap;}
	#page_contents #page_contents_detail{width: calc(100% - 20px); padding: 0 10px;}
	#page_contents #page_contents_menu{width: 100%; margin-left: 0px;}		
}

/* 右メニュー */
#app_company_menu_tmp{position: sticky; top:10px; z-index: 9;}
#app_company_menu_tmp nav ul{width: 100%; margin: 0px 0px;}
#app_company_menu_tmp nav ul li a{display: block; padding: 13px 10px 11px 10px; text-decoration: none; color: #666; border-bottom: 1px solid #eeeeee; line-height: 128.6%; position: relative;}
#app_company_menu_tmp nav ul li a:before{content: ""; display: block; background: url(../img/arrow_gray.png) right bottom no-repeat; width: 10px; height: 10px; position: absolute; bottom: 0px; right: 0px;}
#app_company_menu_tmp nav ul li a:hover{background: #eeeeee;}
#app_company_menu_tmp nav ul li a:hover:before{content: ""; display: block; background: url(../img/arrow_bk.png) right bottom no-repeat; width: 10px; height: 10px; position: absolute; bottom: 0px; right: 0px;}

#app_company_menu_tmp nav ul li a.active{background: #eeeeee;}
#app_company_menu_tmp nav ul li a.active:before{content: ""; display: block; background: url(../img/arrow_bk.png) right bottom no-repeat; width: 10px; height: 10px; position: absolute; bottom: 0px; right: 0px;}

@media screen and (max-width: 890px) {
	#app_company_menu_tmp{position: relative; z-index: 9;}
}

/* コンテンツ */
#page_contents #page_contents_detail h2{border-bottom: 3px solid #2069c9; padding: 20px 15px 15px; margin: 0px 0px 25px; 
	font-size: 128.6%; font-weight: bold; color: #333;}

#page_contents #page_contents_detail h3{color: #222; font-size: 18px; font-weight: bold; margin: 40px 0px 10px; padding: 10px 10px 7px; 
background-color: #f4f4f4; border-left: 3px solid #1e73be;}

#page_contents #page_contents_detail table{width: 100%; margin: auto auto 50px; border-collapse: collapse; border-spacing: 0; font-size: 85.7%; line-height: 141.7%;}

#page_contents #page_contents_detail table td p{margin: 0px 0px 5px; padding: 0;}
#page_contents #page_contents_detail table th{border: 1px solid #ccc; padding: 10px 15px; background-color: #f5f5f5; display: table-cell; vertical-align: middle; text-align: left;}
#page_contents #page_contents_detail table td{border: 1px solid #ccc; padding: 10px 15px; vertical-align: top;}

#page_contents #page_contents_detail table.company_profile th{width: 25%;}
#page_contents #page_contents_detail table.company_profile td{width: calc(100% - 25%);}

#page_contents #page_contents_detail table.company_history th{width: 10%;}
#page_contents #page_contents_detail table.company_history td{width: calc(100% - 10%);}

#page_contents #page_contents_detail .border_box_bold{width: calc(100% - 46px); padding: 15px 20px; border: 3px solid #e5e5e5;}
#page_contents #page_contents_detail .border_box_normal{width: calc(100% - 42px); padding: 15px 20px; border: 1px solid #e5e5e5;}
#page_contents #page_contents_detail .border_box_double{width: calc(100% - 50px); padding: 15px 20px; border: 5px double #8491c3;}
#page_contents #page_contents_detail .border_box_normal_blue{width: calc(100% - 42px); padding: 15px 20px; border: 1px solid #3366ff; border-radius: 10px;}

#page_contents #page_contents_detail dl dt{font-size: 1.0em; font-weight: 900; color: #2069c9; 
margin: 30px 0px 20px; padding: 10px 0px 5px; border-bottom: 1px dotted #ccc;}

#page_contents #page_contents_detail dl.topmessage{}
#page_contents #page_contents_detail dl.topmessage dt{font-size: 18px!important; font-weight: 900; color: #2069c9; 
margin: 30px 0px 20px; padding: 6px 0px 1px; border-top: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee;}

#page_contents #page_contents_detail dl.equipment{}
#page_contents #page_contents_detail dl.equipment dt{font-size: 18px!important; font-weight: 900; color: #2069c9; 
margin: 30px 0px 20px; padding: 6px 0px 1px; border-top: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee;}

#page_contents #page_contents_detail dl.equipment dd table th{background-color: #f5f5f5;}

#page_contents #page_contents_detail ul li{text-indent: -1em; padding-left: 1em;}

#page_contents #page_contents_detail .flex{width: 100%; display: flex;}
#page_contents #page_contents_detail .flex .flex_50{width: 50%;}
#page_contents #page_contents_detail .flex .flex_70{width: 70%;}
#page_contents #page_contents_detail .flex .flex_30{width: 30%;}

#page_contents #page_contents_detail ul.item_lst_col3{display: flex; justify-content:space-between; align-items: flex-start;}
#page_contents #page_contents_detail ul.item_lst_col3 li{width: 32%; text-indent: 0; padding-left: 0;}
#page_contents #page_contents_detail ul.item_lst_col3 li a{display: block;}
#page_contents #page_contents_detail ul.item_lst_col3 li img{width: 100%; height: auto; border: 2px solid #cfcfcf; margin-bottom: 10px;}
#page_contents #page_contents_detail ul.item_lst_col3 li p{display: block;}

#page_contents #page_contents_detail ul.item_lst_col4{display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap;}
#page_contents #page_contents_detail ul.item_lst_col4 li{width: 23%; text-indent: 0; padding-left: 0;}
#page_contents #page_contents_detail ul.item_lst_col4 li a{display: block;}
#page_contents #page_contents_detail ul.item_lst_col4 li img{width: 100%; height: auto; border: 2px solid #cfcfcf; margin-bottom: 10px;}

@media screen and (max-width: 890px) {
	#page_contents #page_contents_detail img{ width: auto; height: auto; margin: auto auto 10px;}
	
	#page_contents #page_contents_detail .flex{width: 100%; display: flex; flex-wrap: wrap;}
	#page_contents #page_contents_detail .flex .flex_50{width: 100%; text-align: center;}
	
	#page_contents #page_contents_detail ul.item_lst_col3{align-items: flex-start;}	
	#page_contents #page_contents_detail ul.item_lst_col4{align-items: flex-start;}
}
