@charset "utf-8";


@import url("setting.css");  

@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/NotoSerifCJKjp/NotoSerifCJKjp-Light.otf') format('opentype');
}



/* ----------------------------------------
	container
---------------------------------------- */

#container_wrap {
	min-width: 1020px;
}

#container {
	min-width: 1020px;
	padding-bottom: 180px;
	background: url(../img/common/bg_container.jpg) repeat-y center top;
	position: relative;
}


/* ----------------------------------------
	fix_header
---------------------------------------- */

#fix_header_wrap {
	width: 100%;
	min-width: 1020px;
	background: url(../img/common/fix_header_bg.png);
	position: fixed;
	top: -130px;
	z-index: 500;
}

#fix_header {
	width: 1020px;
	height: 125px;
	padding-top: 5px;
	margin: auto;
}

h1 {
	width: 380px;
	margin: 15px 0 0 20px;
	float: left;
}

#pagetop {
	display: block;
	position: fixed;
	bottom: -70px;
	right: -5px;
	z-index: 1000;
}

#pagetop img {
	display: block;
}


/* ----------------------------------------
	header
---------------------------------------- */

#header {
	width: 1020px;
	height: 140px;
	margin: auto;
	padding-top: 30px;
}

#header #logo {
	width: 380px;
	margin: 15px 0 0 20px;
	float: left;
}

/* ---------- facebook ---------- */
.facebook {
	display: block;
	padding: 19px 10px 0 18px;
	float: right;
}

.facebook img {
	display: block;
}

/* ---------- pdf ---------- */

.pdf {
	display: block;
	padding: 0 10px;
	float: right;
}

.pdf img {
	display: block;
}

/* ---------- lang ---------- */

.lang {
	width: 245px;
	width: 400px;
	height: 55px;
	padding: 0 10px 0 30px;
	position: relative;
	float: right;
}

.lang a,
.lang img {
	display: block;
}

.lang_title {
	position: absolute;
	top: 0;
	right: 10px;
	cursor: pointer;
}

.lang ul {
	display: none;
	opacity: 0;
	position: absolute;
	top: 0;
	right: 10px;
}

.lang li {
	float: left;
}

/* ---------- nav ---------- */

.nav {
	margin-top: 5px;
	float: right;
}

.nav li {
	position: relative;
	float: left;
}

.nav a {
	display: block;
}

.nav img {
	display: block;
	opacity: 0;
}

.nav_message  { background: url(../img/common/nav_message_bg.gif); }
.nav_outline  { background: url(../img/common/nav_outline_bg.gif); }
.nav_business { background: url(../img/common/nav_business_bg.gif); }
.nav_csr      { background: url(../img/common/nav_csr_bg.gif); }
.nav_contact  { background: url(../img/common/nav_contact_bg.gif); }

.nav ul {
	display: none;
	opacity: 0;
	padding-bottom: 30px;
	position: absolute;
	top: 30px;
	left: 0;
	z-index: 100;
}

.nav ul li {
	float: none;
}

.nav ul li a {
	padding: 1px 0 0 20px;
	background: url(../img/common/nav_dropdown.gif) no-repeat left top;
	font-size: 12px;
	line-height: 30px;
	color: #7d7d7d;
	text-decoration: none;
}

.nav ul li a:hover {
	background: url(../img/common/nav_dropdown.gif) no-repeat left bottom;
	color: #000;
}

.nav_outline_dropdown {
	width: 130px;
}

.nav_business_dropdown {
	width: 130px;
}


/* ----------------------------------------
	index
---------------------------------------- */

#index {
	width: 996px;
	height: 475px;
	height: 670px;
	margin: auto;
}

#slogan {
	margin: auto;
	padding-top: 200px;
	opacity: 0;
	cursor: pointer;
}

#slogan img {
	display: block;
	margin: auto;
}

/*fade off*/
#business_index {
	display: none;
	opacity: 0;
}

#business_index li {
	width: 173px;
	height: 120px;
	margin: 0 8px 16px 8px;
	padding: 5px 5px 50px 5px;
	float: left;
}

#business_index a {
	display: block;
	width: 173px;
	height: 120px;
	overflow: hidden;
	position: relative;
}

#business_index img {
	position: absolute;
}



/* ----------------------------------------
	index_bottom
---------------------------------------- */

#index_bottom_wrap {
	width: 100%;
	padding: 40px 0;
	background: #FFF;
}

#index_bottom {
	width: 980px;
	margin: auto;
}

#news {
	width: 560px;
	height: 105px;
	padding: 20px;
	background: #f0f0f0;
	font-size: 12px;
	line-height: 18px;
	position: relative;
	float: left;
	cursor: pointer;
}

#news h2 {
	margin-bottom: 15px;
}

#news h2 img {
	display: block;
}

#news dt {
	width: 80px;
	margin-bottom: 3px;
	float: left;
}

#news dd {
	width: 480px;
	margin-bottom: 3px;
	float: left;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

#news_more {
	width: 20px;
	height: 20px;
	overflow: hidden;
	position: absolute;
	bottom: 0;
	right: 0;
}

#news_more img {
	position: absolute;
	top: 0;
	left: 0;
}

#thumb_movie{
    position: relative;
}
#thumb_movie .thumb_movie-play{
    position: absolute;
    width: 60px;
    height: 60px;
    top: 50px;
    left: 80px;
    margin-left: -30px;
    margin-top: -30px;
    opacity: 0.5;
}
#thumb_movie .thumb_movie-play:hover{
    opacity: 1;
}

#thumb_movie,
#thumb_message,
#thumb_facebook {
	display: block;
	margin-left: 30px;
	float: left;
	width: 160px;
	height: 145px;
	font-family: "Times New Roman",Times,serif;
	font-size: 15.2px;
	line-height: 18px;
	text-decoration: none;
	overflow: hidden;
}

#thumb_movie img,
#thumb_message img,
#thumb_facebook img {
	width: 160px;
	height: 100px;
	margin-bottom: 9px;
	display: block;
}

#thumb_message:hover img,
#thumb_facebook:hover img {
	opacity: .9;
}
#thumb_facebook {
	color: #be963c;
}

/* ----------------------------------------
	contents
---------------------------------------- */

#contents {
	width: 100%;
	min-width: 1020px;
	background: url(../img/common/shadow.png) no-repeat center top;
}

.anchor {
	position: absolute;
	top: 0px;
	left: 0px;
}

#contents h2 {
	margin-bottom: 25px;
}

#contents h3 {
	margin-bottom: 30px;
}

#message,
#outline,
#strategy,
#philosophy,
#corporation,
#officer,
#business,
#csr {
	width: 980px;
	margin: auto;
	padding-top: 50px;
	position: relative;
}


/* ----------------------------------------
	message
---------------------------------------- */

#message_photo {
	display: block;
	float: left;
}

#message_inner {
	width: 650px;
	padding: 0 30px 0 40px;
	float: right;
}


/* ----------------------------------------
	outline
---------------------------------------- */

#outline_inner {
	padding-left: 20px;
	background: url(../img/outline/symbol.png) no-repeat right top;
}

#means {
	margin-top: 35px;
}


/* ----------------------------------------
	philosophy
---------------------------------------- */

#philosophy_diagram {
	display: block;
	margin-top: 120px;
	float: left;
}

#philosophy_inner {
	width: 650px;
	padding-left: 30px;
	float: left;
}

#philosophy_inner p {
    margin-bottom: 30px;
}

#philosophy_inner strong {
    display: list-item;
    list-style: square;
    margin-left: 15px;
    color: #111;
    font-size: 16px;
    font-weight: bold;
}


/* ----------------------------------------
	strategy
---------------------------------------- */

#strategy_diagram {
	display: block;
	margin-top: 80px;
	float: left;
}

#strategy_inner {
	width: 650px;
	padding-left: 50px;
	float: left;
}


/* ----------------------------------------
	corporation
---------------------------------------- */

#corporation li {
	margin-bottom: 30px;
	padding: 0 20px 25px;
	border-bottom: 1px solid #C8C8C8;
}

#corporation li:last-child {
	margin-bottom: 0;
}

#corporation h3 {
	margin-bottom: 10px;
}

#corporation th {
	text-align: right;
	vertical-align: top;
}


/* ----------------------------------------
	officer
---------------------------------------- */

#officer li {
	margin-bottom: 30px;
	padding: 0 0 25px 20px;
	border-bottom: 1px solid #C8C8C8;
	position: relative;
}

#officer li:last-child {
	margin-bottom: 0;
}

#officer li .anchor {
	top: -180px;
}

#officer h3 {
	margin-bottom: 10px;
}


/* ----------------------------------------
	business
---------------------------------------- */

#business li {
	margin-bottom: 50px;
	padding: 0 0 45px 20px;
	border-bottom: 1px solid #C8C8C8;
	position: relative;
}

#business li:last-child {
	margin-bottom: 0;
}

.business_link {
	margin-top: 35px;
	color: #be963c;
}

.business_link td {
	height: 45px;
	padding-right: 10px;
}

#business li .anchor {
	top: -170px;
}

.business_icon {
	width: 190px;
	padding-right: 20px;
	text-align: center;
	float: left;
}

.business_contents {
	width: 750px;
	float: left;
}

#business h3 {
	margin-bottom: 10px;
}


/* ----------------------------------------
	csr
---------------------------------------- */

#csr_inner {
	height: 100px;
	padding-top: 200px;
	text-align: center;
}


/* ----------------------------------------
	footer
---------------------------------------- */

#footer {
	width: 100%;
	min-width: 1020px;
	height: 28px;
	padding-top: 22px;
	background: #FFF;
}

#footer img {
	display: block;
	margin: auto;
}


/* ----------------------------------------
	pop
---------------------------------------- */

.pop {
	width: 100%;
	height: 100%;
	background: url(../img/common/pop_bg.png) repeat;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

.pop_close_area {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	cursor: default;
}

.pop_inner {
	width: 880px;
	height: 700px;
	margin: 20px auto 0;
	background: #FFF;
	position: relative;
}

.pop_close_btn {
	position: absolute;
	top: 40px;
	right: 40px;
}


/* ----------------------------------------
	news_pop
---------------------------------------- */

#news_pop {
	display: none;
	opacity: 0;
}

#news_pop_container {
	width: 820px;
	height: 470px;
	padding: 40px;
}

#news_pop_container h2 {
	height: 25px;
	margin-bottom: 30px;
}

#news_pop_container dl {
	width: 820px;
	height: 415px;
	overflow: auto;
	line-height: 21px;
}

#news_pop_container dt {
	width: 90px;
	padding-bottom: 14px;
	color: #BE963C;
	float: left;
	clear: both;
}

#news_pop_container dd {
	width: 690px;
	padding: 0 20px 14px 0;
	float: right;
}


/* ----------------------------------------
	movie_pop
---------------------------------------- */

#movie {
	padding: 30px;
}

#movie_pop {
	display: none;
	opacity: 0;
}

#movie_thumb {
	width: 120px;
	float: left;
}

#movie_thumb li {
	width: 120px;
	margin-bottom: 10px;
	cursor: pointer;
	font-size: 10px;
	line-height: 12px;
	text-align: center;
	color: #BE963C;
}

#movie_player {
	width: 640px;
	margin-left: 20px;
	float: left;
	max-height: 630px;
	overflow: auto;
}

#movie_player video {
	width: 640px;
}

#movie_2014 {
	width: 640px;
	height: 360px;
}

#movie_2013 {
	width: 640px;
	height: 360px;
}

#movie_2012 {
	width: 640px;
	height: 360px;
}

#movie_2011 {
	width: 640px;
	height: 480px;
}

#movie_2010 {
	width: 640px;
	height: 480px;
}



/* 20180306 add */

/* INDEX */

#index {
	width: 996px;
	height: 540px;
	margin: auto;
}

#business_index {
	display: none;
	opacity: 0;
}

#business_index li {
	width: 173px;
	height: 100px;
	margin: 0 8px 16px 8px;
	padding: 5px 5px 50px 5px;
	float: left;
}

#business_index a {
	display: block;
	width: 173px;
	height: 100px;
	overflow: hidden;
	position: relative;
}

#business_index .index-box {
	position: absolute;
}

.float-left {
float:left;
}

.f-box-text{
display: flex; 
flex-direction: column; 
justify-content: center; 
align-items: center; 
text-align:center; 
width:173px; 
height:100px; 
position: relative;
}

.f-box-arrow {
position: absolute;
bottom:15px;
right:15px;
}

.f-box-icon{
background: #f0f0f0;
width:173px; 
height:100px;
position: relative;
}

.f-box-icon-inner{
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}

.business-bg-text {
color: #fff;
font-weight: normal !important;
font-size: 14px;
font-family: 'Amiri', serif;
line-height: 1.4;
}

.move_left   { width:346px; height:1200px; top:0; left:0; !important}
.move_right  { width:346px; height:100px; top:0; right:0; !important}
.move_top    { width:173px; height:200px; top:0; left:0; !important}
.move_bottom { width:173px; height:200px; bottom:0; left:0; !important}

.business-bg-it { background: #8caa8c; }
.business-bg-advertise { background: #fdb33c; }
.business-bg-health { background: #00a096; }
.business-bg-beauty { background: #ff828c; }
.business-bg-food { background: #78323c; }
.business-bg-finance { background: #a0825a; }
.business-bg-marketing { background: #00c8e6; }
.business-bg-trading { background: #143c8c; }
.business-bg-energy { background: #f97008; }
.business-bg-investments { background: #785096; }
.business-bg-design { background: #c83c50; }
.business-bg-office { background: #98c433; }
.business-bg-management { background: #969696; }
.business-bg-resort-dev { background: #b3a7c2; }
.business-bg-insurance { background: #ff0000; }
.business-bg-telecom { background: #8e35b0; }
.business-bg-staffing { background: #503b9a; }

.en {
font-family: 'Amiri', serif;
}

.heading-news {
color: #000;
font-weight: normal !important;
font-size: 18px;
font-family: 'Amiri', serif;
letter-spacing: 0.1em;
line-height: 1;
}




.h2-heading-ja {
color: #000;
font-size: 30px;
font-family: 'Noto Serif Japanese';
font-style: normal;
font-weight: 300;
letter-spacing: 0.1em;
background: #fff;
padding: 10px 20px 10px;
margin-bottom: 0 !important;
line-height: 1.4;
font-feature-settings : "palt";

}

.h2-heading-en {
color: #000;
font-weight: normal !important;
font-size: 32px;
font-family: 'Amiri', serif;
letter-spacing: 0.05em;
background: #fff;
padding: 13px 20px 4px;
margin-bottom: 0 !important;
line-height: 1.4;
}

.h2-heading-sub {
float:right;
font-size:16px;
padding-top:20px;
font-family: 'Amiri', serif;
font-weight:300;
}

.h2-shadow {
margin-bottom: 20px;
}

.h3-heading-ja{
color: #000;
font-size: 21px;
font-family: 'Noto Serif Japanese';
font-style: normal;
font-weight: 300;
letter-spacing: 0.05em;
line-height: 1.6;
}

.h3-heading-en{
color: #000;
font-weight: normal !important;
font-size: 22px;
font-family: 'Amiri', serif;
letter-spacing: 0.05em;
line-height: 1.6;
}

.hr {
display: block;
width: 100%;
height: 1px;
background-color: #ccc;
border: 0; 
}

.t12 { font-size: 12px; }
.t14 { font-size: 14px; }
.t16 { font-size: 16px; }
.t18 { font-size: 18px; }
.t21 { font-size: 21px; }
.t22 { font-size: 22px; }
.t24 { font-size: 24px; }
.t26 { font-size: 26px; }
.t28 { font-size: 28px; }

.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }

.profile-text {
color: #000;
font-weight: normal !important;
font-size: 16px;
font-family: 'Noto Serif Japanese';
font-style: normal;
 font-weight: 300;
letter-spacing: 0.05em;
margin: -5px 0 15px;
line-height: 1.4;
}

.profile-photo-text1 {
color: #000;
font-weight: normal !important;
font-size: 12px;
font-family: 'Noto Serif Japanese';
font-style: normal;
font-weight: 300;
line-height: 1.6 !important;
padding:0 !important;
margin:0 !important;
letter-spacing: 0.05em;
-webkit-margin-before: 0.5em;
-webkit-margin-after: 0.5em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
display: inline-block;
}



.profile-photo-text2 {
color: #000;
font-weight: normal !important;
font-family: 'Noto Serif Japanese';
font-style: normal;
font-weight: 300;
line-height: 1.6 !important;
padding:0 !important;
margin:0 !important;
letter-spacing: 0.05em;
-webkit-margin-before: 0.5em;
-webkit-margin-after: 0.5em;
-webkit-margin-start: 0px;
-webkit-margin-end: 0px;
display: inline-block;
}

.business_index_wrap { 
background: #fff;
position: relative
}

.business-bg-text-ja {
color: #fff;
font-weight: normal !important;
font-size: 11px;
font-family: 'Noto Serif Japanese';
font-weight: 300;
line-height: 1.8;

}

.business-index-textwrap-ja {
display: flex; 
flex-direction: column; 
justify-content: center; 
align-items: center; 
text-align:center; 
width:173px;
height:50px; 
bottom:0;
position: absolute;
color: #000;
font-weight: 300;
font-size: 12px;
font-family: 'Noto Serif Japanese';
letter-spacing: 0.05em;
line-height:1.3;
}

.business-index-en {
padding-top: 5px !important;
font-family: 'Amiri', serif;
font-size: 11px;
line-height: 1.2;
color: #a28844;
}


