﻿body{
font-size:12px;
word-break:break-all;
}
a{
color:#000000;
}
a:hover{
text-decoration:underline;
}
a:hover img{
opacity:0.75;
}
/*
#header{
position:fixed;
z-index:2000;
width:100%;
min-width:960px;
background-color:#ffffff;
border-bottom:3px solid #002063;
}
.header_in{
display:flex;
align-items:center;
box-sizing:border-box;
width:100%;
padding:7px 1rem 5px;
margin:0 auto;
background:#ffffff;
}
.header_left{
}
.header_left img{
width:auto;
height:32px;
}
.header_right{
flex:1;
text-align:right;
}
.header_right li{
display:inline-block;
margin-left:1em;
}
.header_right a{
display:flex;
align-items:center;
margin-left:12px;
}
.header_right a:first-child{
margin-left:0;
}
.header_right a img{
vertical-align:middle;
margin-right:0.5rem;
width:1.25em;
}
.header_smartphone{
display:none;
}
*/
#contents{
padding:47px 0 0;
}

.contents_in{
max-width:1024px;
margin:0 auto;
/* コンテンツ全体の余白(画面左のメニューのため) */
padding:0 2rem;
line-height:normal;
}

.contents_left{
flex:1;
margin-right:0.5rem;
padding:1rem 0.5rem 3rem 0;
border-right:1px solid #8f8f8f;
}
.contents_right{
width:200px;
padding:1rem 0 1.5rem;
}

#go_top{
position:fixed;
bottom:calc(3em + 20px);
right:20px;
max-width:15%;
width:60px;
background:#002063;
}
#go_top:hover{
opacity:0.75;
cursor:pointer;
}
#go_top img{
width:100%;
}

.big_title{
width:100%;
margin:0 auto;
margin-bottom:1rem;
padding:0 1rem;
box-sizing:border-box;
}
.big_title h1{
font-size:16px;
font-weight:bold;
border-left: 8px solid #002063;
padding: 0.5rem 0 0.5rem 0.5rem;
}
.news_title{
width:100%;
margin:0 auto;
margin-top:1rem;
padding:0 1rem;
box-sizing:border-box;
line-height: 1rem;
}
.news_title h1{
line-height: 1.25rem;
font-size:16px;
font-weight:bold;
text-align: center;
}
.news_title p{
text-align: center;
}
.press_title{
width:100%;
margin-top:1rem;
padding:0 0.5rem;
box-sizing:border-box;
line-height: 1.25rem;
}
.press_title h1{
line-height: 1.25rem;
font-size:16px;
font-weight:bold;
text-align: center;
}
.date{
margin:0 0.5rem;
padding:0 0.5rem;
border-bottom:1px solid #8f8f8f;
text-align: right;
line-height: 1.5rem;
}
.press-date{
margin:1rem 0;
padding:0 0.5rem;
line-height: 0.5rem;
}
.news_image {
margin:1.5rem 0;
}
.news_image img{
border:1px solid #000000;
}
.page_navi{
display: flex;
justify-content: center;
border-top: 1px solid #c0c0c0;
margin:1.5rem 0;
line-height: 1.25rem;
}
.page_navi div{
margin-top:0.5rem;
text-align: center;
}
.page_navi a{
display: inline-block;
}

.all_small_title{
padding:0.25em 0 0.25em 0.5em;
border-left:8px solid #002063;
border-bottom:1px solid #8f8f8f;
font-weight:bold;
font-size:14px;
color:#4a4a4a;
}

.category_in{
width:100%;
margin:3rem auto 0;
padding:0 0 0 1rem;
box-sizing:border-box;
}

.category a{
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
box-sizing:border-box;
height:100%;
font-size:16px;
font-weight:bold;
text-align:center;
color:#333333;
}
@media all and (-ms-high-contrast: none){
  .category a{
  display:inline;
 }
}

.category a:hover{
text-decoration:none;
}
.category a img{
width:100%;
}
.category a:hover img{
opacity:1;
}
/*
#footer{
background-color:#002063;
color:#ffffff;
}
.footer_in{
position:relative;
width:100%;
margin:0 auto;
padding:1em 0;
text-align:center;
}
*/
/* -∵-∴-∵-∴-∵-∴-∵-∴-∵-∴-∵-∴-∵- */

/* サイドバー */

.sidebar a{
color:#231815;
text-decoration:none;
}

.sidebar_in > div{
margin-bottom:1rem;
border:1px solid #B0B0B1;
}

.sidebar_in > div:last-child{
margin-bottom:0;
}
.sidebar_in > .sidebar_upcomming,
.sidebar_in > .sidebar_products,
.sidebar_in > .sidebar_banners,
.sidebar_in > .sidebar_fpb{
border:0;
}
.sidebar_upcomming dd{
border-right:1px solid #b0b0b1;
border-bottom:1px solid #b0b0b1;
border-left:1px solid #b0b0b1;
}
.sidebar_contact dd{
display:flex;
align-items:center;
}
.sidebar_contact dd > p{
width:24px;
margin-right:0.5rem
}
.sidebar_contact dd > ul{
flex:1;
}
.sidebar_block dt{
background:#BAD1EC;
padding:0.5em 0.5em;
}
.sidebar_block dd{
padding:0.5em 1.5em 0.5em 0.5em;
}
.sidebar_block_split li{
display:flex;
}
.sidebar_block_split li span{
white-space:nowrap;
}
.sidebar_block_split li a{
margin-left:0.5em;
}

.sidebar_block_list li{
line-height:1.4;
}
.sidebar_block_list li a{
display:block;
}
.sidebar_upcomming dd{
padding:0.5em;
}
.sidebar_banners li{
margin-top:0.5rem;
box-shadow:2px 2px 0 #cccccc;
}
.sidebar_banners li:first-child{
margin-top:0;
}
.sidebar_banners li a{
display:block;
width:100%;
}
.sidebar_banners li a img{
width:100%;
}
.sidebar_banners > p{
margin-top:0.5rem;
}
.sidebar_fpb > p > a{
display:block;
}
.sidebar_fpb > ul li{
margin-top:0.5rem
}
.sidebar_seminar dt p + p{
margin-top:0.25em;
}
.sidebar_seminar dd p{
margin:0.25em 0 0.5em;
}

/* 詳細ページ共通 */

.common_contents{
margin-top:3rem;
padding:0 0 0 1rem;
}
.big_title + .common_contents,
.breadcrumb + .common_contents,
.common_kamban + .common_contents{
margin-top:1rem;
}
.breadcrumb{
padding-left:1rem;
}

/* 詳細ページ左側のテーブル */

.common_table{
border-bottom:1px solid #b0b0b1;
margin-top:1rem;
}
.common_table > dl{
display:flex;
flex-direction:row;
border-top:1px solid #b0b0b1;
padding:0.5em 1em;
}
.common_table > dl > dt,
.common_table > dl > dd{
line-height:1.5;
}
.common_table > dl > dt{
width:10em;
}
.common_table > dl > dd{
flex:1;
}
.common_table > dl > dd > *{
margin-top:0.5rem;
}
.common_table > dl > dd > *:first-child{
margin-top:0;
}

/* 詳細画面に看板画像がある場合 */

.common_kamban{
margin-top:1rem;
padding:0 1rem;
}

/* 詳細画面に背景が灰色のお知らせがある場合 */

.common_appeal_in{
width: 90%;
padding:1em;
background:#f2f2f2;
border:1px solid #b0b0b1;
}
.common_appeal_in dl + dl{
margin-top: calc(1rem - 0.4em)
}
.common_appeal_in dl dt,
.common_appeal_in dl dd{
line-height:1.5;
}
.common_appeal_in dl dt{
margin-bottom:0.5em;
padding-bottom:0.5em;
border-bottom:1px solid #b0b0b1;
}
.common_appeal_in dl dd{
position:relative;
padding-left:1em;
}
.common_appeal_in dl dd.common_appeal_list:before{
content:"・";
position:absolute;
top:0;
left:0;
width:1em;
height:1em;
}
.common_appeal_in dl dd + dd{
margin-top:1em;
}
.common_appeal_in_article{
	display: flex;
	justify-content: space-between;
}
.common_appeal_in_article_left{
	width: 75%;
	padding-right: 1em;
}

/* 新卒者募集要項ページ */

.recruit_info_salary_teate dd div > ul > li{
list-style:disc inside;
}
.recruit_info_salary_teate_split{
display:flex;
}
.recruit_info_salary_teate_split .split_left{
flex:1;
}
.recruit_info_salary_teate_split .split_right{
width:calc(147px * 2 + 0.5em);
max-width:100%;
margin-left:1em;
}
.recruit_info_salary_teate_split .split_right p{
margin-top:1em;
}
.recruit_info_salary_teate_split .split_right p:first-child{
margin-top:0;
}
.recruit_info_salary_teate_split .split_right p:first-child img{
width:147px;
max-width:calc(50% - 0.25em);
}
.recruit_info_salary_teate_split .split_right p img + img{
margin-left:0.5em;
}
.recruit_info_salary_teate_hotel p:first-child{
display:inline;
}
.recruit_info_salary_teate_hotel p:last-child{
padding-left:1.5em;
}

/* 採用情報・お問い合わせ */

.overview_in{
display:flex;
width:100%;
margin:1rem auto 0;
padding:47px 0 0 1rem;
box-sizing:border-box;
}
.overview_in > *{
width:calc(50% - 0.5rem);
}
.overview_in > .overview_left{
margin-right:1rem;
}

.menu_list{
display:flex;
margin-top: 1rem;
}
.menu_list > li{
margin-right: 1rem;
width: calc((100% - 5rem) / 6);
box-shadow: 3px 3px 3px #cccccc;
}
.menu_list_half > li{
width: calc((100% - 2rem) / 3);
}
.menu_list > li:last-child{
margin-right:0;
}
.menu_list > li > a{
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
box-sizing: border-box;
height: 100%;
font-size: 16px;
font-weight: bold;
text-align: center;
color: #333333;
}
.menu_list > li > a:hover{
text-decoration:none;
}
.menu_list_thumbnail,
.menu_list_thumbnail img{
width:100%;
}
.menu_list > li > a:hover .menu_list_thumbnail img{
opacity:1;
}
.menu_list_thumbnail{
background:#7A88C9;
}
.menu_list_icon img{
width: auto;
}
.menu_list_title{
display: flex;
flex-direction: column;
align-items: center;
justify-content:center;
width:100%;
height:100%;
}
.menu_list_title p:first-child{
display: flex;
align-items: center;
justify-content:center;
height:2.8em;
margin-top: 0;
padding: 0.5rem 0;
line-height: 1.4;
color: #333333;
font-weight: bold;
font-size: 14px;
}

/* ご挨拶 */

.greeting_in{
width:100%;
margin:1rem auto 0;
padding:0 0 0 1rem;
box-sizing:border-box;
}
.greeting_contents{
display:flex;
align-items:flex-start;
margin-top:1rem;
}
.greeting_link{
margin-right: 1rem;
width: calc((100% - 5rem) / 6);
box-shadow: 3px 3px 3px #cccccc;
}
.greeting_link > a{
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
box-sizing: border-box;
height: 100%;
font-size: 16px;
font-weight: bold;
text-align: center;
color: #333333;
}
.greeting_link > a:hover{
text-decoration:none;
}
.greeting_link > a p,
.greeting_link > a img{
width:100%;
}
.greeting_link > a:hover img{
opacity:1;
}
.greeting_message{
flex:1;
line-height:1.4;
margin-right: 20px;
}

/* 画面左に固定されてるボタン */
/*
.side_buttons_area,
.side_navi_area{
position:fixed;
left:0;
top:103px;
z-index:7999;
}
.side_buttons_area li,
.side_navi_close{
display:flex;
justify-content:center;
align-items:center;
margin-bottom:1rem;
background:#002063;
border-radius:0 5px 5px 0;
color:#ffffff;
cursor:pointer;
}
.side_navi_close{
padding:1rem 0.5rem;
}
.side_buttons_area li a{
padding:1rem 0.5rem;
color:#ffffff;
}
.side_buttons_area li a:hover{
text-decoration:none;
}
.side_buttons_area li:last-child{
margin-bottom:0;
}

.side_navi_area{
top:235px;
left:-100vw;
width:400px;
background:#ffffff;
-webkit-transition: 0.2s ease-in-out;
-moz-transition: 0.2s ease-in-out;
-o-transition: 0.2s ease-in-out;
transition: 0.2s ease-in-out;
}
.side_navi_tabs{
display:flex;
}
.side_navi_tabs p{
flex:1;
padding:1em;
border:1px solid #002063;
color:#002063;
cursor:pointer;
text-align:center;
}
.side_navi_tabs p.active{
background:#002063;
color:#ffffff;
cursor:auto;
}
.side_navi_list{
display:none;
padding:0.5rem;
border:1px solid #002063;
width: 100%;
box-sizing: border-box;
}
.side_navi_list.active{
display:block;
}
.side_navi_list h3{
padding-top:0.25rem;
padding-bottom:0.25rem;
border-top:1px solid #cccccc;
font-size:12px;
}
.side_navi_list > h3:first-of-type{
padding-top:0;
border-top:0;
}
.side_navi_list ul{
display:flex;
flex-wrap:wrap;
padding-left:1em;
}
.side_navi_list > ul > li{
width:50%;
padding-bottom:0.25em;
}
.side_navi_list ul li a{
display:block;
color:#002063;
}

.side_nav_list_nocontents{
display:flex;
align-items:center;
border-top:1px solid #cccccc;
padding-top:0.25rem;
padding-bottom:0.25rem;
}
.side_nav_list_nocontents h3{
flex:1;
padding-top: 0;
padding-bottom: 0;
border-top: 0;
}
.side_nav_list_nocontents ul{
padding-left:0;
}
.side_nav_list_nocontents ul li{
padding-bottom:0;
}
.side_navi_close{
position:absolute;
top:0;
right:calc(-1rem - 1em);
}
.side_navi_area_bg{
display:none;
position:fixed;
top:0;
left:0;
z-index:7998;
width:100%;
height:100%;
background:rgba(0,0,0,0.2);
}
.side_navi_area_bg.active{
display:block;
}
*/
/* リンクの色 */
a{
  color: #0066CC;
}
.black{
  background-color: #000;
}
.red{
  color: #cc0000;
}

/* 楽する用 */
.mt_1em{
margin-top:1em;
}
.color_blue{
color:#0000cc;
}
.color_purple{
color:#002063;
}
.font_weight_bold{
font-weight:bold;
}

/* FLEX */
.display_flex{
display:flex;
}

/* modaal */
.modaal-inner-wrapper{
  padding:1.5vw;
}
.modaal-content-container{
  padding:1em;
}

/* リスト用 */
.common_list_disc{
	list-style: disc inside;
}
.common_list_decimal{
	list-style: decimal outside;
	margin-left: 1.75rem;
}

.support_list{
	display: flex;
	list-style: disc inside;
}
.support_list >li {
	margin-right: 1.5rem;
}
.topics_list{
	display: flex;
	list-style: none;
	line-height: 1.5rem;
	font-size: 14px;
}
.topics_list >li {
	margin-right: 1.5rem;
}
ul.serial {
    display: table;
    width:100%;
	line-height: 1.5rem;
}
ul.serial > li:nth-child(2n+1) {
    clear: both;
}
ul.serial > li {
    display: table-cell;
    float: left;
    width: 50%;
}
ul.serial > li >p{
	line-height: 1.5rem;
}
/* 会社概要・組織体制 */
.page_summary_img{
	display: flex;
	text-align: center;
	margin: 0 0.5rem;
}
.page_summary_img p+p{
	margin-left: 2rem;
}

/*　Up&Comingユーザ紹介　*/
.page_upcoming_user_num{
	padding-left: 1em;
	margin-top: 1rem;
}
.user_num_title{
	color: #FFFFFF;
	background: #002063;
	padding: 0.5em 1em;
	margin-right: 1em;
	font-size: 1.3em;
	display: inline-block;
	box-sizing: border-box;
}
.user_num{
	color: #0000CC;
	font-weight: bold;
	font-size: 1.3em;
}
.page_upcoming_user p{
	width: 50%;
}
.page_upcoming_user_p_right{
	margin-top: 0 !important;
	padding-left: 1.5rem;
}
.page_upcoming_user_comment{
	padding: 1.5em 1em 0.5em;
	text-align: right;
}

/* 所属団体 */
.admission_table > dl:first-child{
	background:#BAD1EC;
}
.admission_table > dl > dt{
	width: 50%;
}
.admission_table > dl:first-child > dt,
.admission_table > dl > dd{
	text-align: center;
}

/* 一般事業主行動計画 */
.page_actionplan{
	margin-top: 1rem;
}
.page_actionplan_in{
	padding: 0.5em 1em;
}
.page_actionplan_in p{
	line-height: 1.4;
}
.page_actionplan_title{
	margin: 0.5em 0;
	font-size: 120%;
}
.page_actionplan_plan{
	line-height: 1.4;
}
.page_actionplan_article{
	padding-left: 1em;
}
.page_actionplan_article_2{
	padding: 0.5em 0 0 4em;
}
.page_actionplan_article_3{
	padding: 0.5em 0 0.5em 4em;
}

/* 特許一覧 */
.patent_table > dl > dt{
	width: 75%;
	text-align: left;
}
.r_table > dl > dt{
	width: 70%;
	text-align: center;
}

/* 登録・認定・ISO認定 */
.page_registration{
	margin-top: 1rem;
}
.registration_table{
	margin-right: 1em;
}
.registration_table dl > dt{
	border: 0;
}
.registration_table dl + dl{
	margin-top: 0;
}
.registration_left_in{
	padding-left: 2em;	
}
.registration_left_in + p{
	border-top: 1px solid #b0b0b1;
	margin-top: 1em;
	padding: 0.5em 1em;
}
.iso_left{
	width: 65%;
}
.iso_right{
	display: flex;
	justify-content: flex-end;
}
.iso_right p{
	text-align: center;
}
.iso_right p:not(:last-child){
	margin-right: 1em;
}
.iso_right p img{
	height: 100px;
}

/* 資格 */
.certification_table > dl > dt{
	width: 80%;
}
.certification_table > dl > dd{
	text-align: center;
}
.page_certification_1 > dt{
	width: 16em;
}
.page_certification_2 > dt{
	width: 6em;
}
.page_certification_3 > dt{
	width: 10em;
}
.page_certification_4 > dt{
	width: 12em;
}
.page_certification_1 > dd > *:not(:first-child),
.page_certification_2 > dd > *:not(:first-child),
.page_certification_3 > dd > *:not(:first-child),
.page_certification_4 > dd > *:not(:first-child){
	margin-top: 0.5rem;
}

/* よくあるご質問 */
.page_mainfaq_answer{
	margin-left: -1em;
}
.page_mainfaq_table > dl > dt{
	width: 30%;
}

/* お問い合わせ */
.page_contact p{
	line-height: 1.4;
}
.page_contact_form{
	padding: 0.5em 0 0 2em;
}
.page_contact_appeal{
	border: 0;
	background: transparent;
	padding: 1rem;
}
.font_red{
	color: #CC0000;
}
.page_contact_appeal dl dd{
	padding-left: 0;
}
.page_contact_appeal > dl > .common_appeal_in_article > .common_appeal_in_article_right{
	width: 25%;
}

/* 決算公告 */
.page_account_right{
	text-align: right;
	border-bottom: 1px solid #b0b0b1;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.page_account_small{
	font-size: smaller;
	color: #979799;
	padding-left: 0.5rem;
}
.page_account{
	line-height: 1.4;
	justify-content: space-around;
}

/* ショールーム */
.page_showroom{
	justify-content: center;
}
.page_showroom > div:first-child{
	margin-right: 5em;
}
.page_showroom > div:last-child{
	border: 1px solid #808080;
	padding: 1em;
}
.page_showroom > .display_flex{
	flex-direction: column;
	justify-content: space-between;
}
.page_showroom > .display_flex > .display_flex{
	justify-content: space-around;
}
.page_showroom_country{
	text-align: center;
}

.page_showroom_title{
	justify-content: space-between;
	padding-right: 0.5em;
}
.page_showroom_title_in{
	font-weight:bold;
	font-size:14px;
	color:#4a4a4a;
}
.gray{
	color: #808080;
	font-weight:bold;
}

.page_showroom_appeal > div{
	/*width: 55%;*/
	margin: 0.5rem;
	line-height: 1.4;
}
.page_showroom_appeal > div:first-child,
.page_showroom_appeal > div:last-child{
	width: 20%;
}
.page_showroom_appeal > div:first-child > a > img,
.page_showroom_appeal > div:last-child > a > img{
	width: 100%;
}

.page_showroom_branch{
	justify-content: space-between;
	padding-right: 1em;
	line-height: 1.4;
}
.page_showroom_left{
	width: 35%;
}
.page_showroom_left > p + p{
	margin-top: 1em;
	margin-bottom: 1em;
}
.page_showroom_left > div{
	margin-top: 1em;
	border: 1px solid #808080;
	padding: 1em;
}
.page_showroom_left > div > p{
	margin-top: 0.5em;
}

.page_showroom_right{
	line-height: 1.8;
	width: 60%;
}
.page_showroom_right > img{
	width: 100%;
	display: block;
	margin-bottom: 0.5em;
	border: 1px solid #808080;
}