@charset "UTF-8";
/* CSS Document */
@import url("reset.css");
*, *::after, *::before { box-sizing: border-box; }
body { background: url(../images/bg.) bottom no-repeat; font-family: "Microsoft JhengHei", "Helvetica", 黑體-繁, sans-serif; }
/* box-2
---------------------------------------------------------*/
#PAGE_VISUAL_BOX { width: 100%; height: 120px; margin-top: 0 }
#SLOGAN_BOX { width: 100%; height: 120px; margin: 0 auto; }
#SLOGAN {   text-align: center; margin: 0 auto }
#SLOGAN span.S1 { color: #00A1DF; font-size: 2.5em; font-weight: lighter }
#SLOGAN span.S2 { color: #b8b8b0; font-size: 2em; line-height: 28px; padding-right: 6px; }
#SLOGAN span.S3 { color: #fed900; font-size: 1.7em; line-height: 28px; }
#SLOGAN span.S4 { color: #b8b8b0; font-size: 1.4em; font-family: 微軟正黑體; font-weight: bold; }
.BANNER_ABOUT_BG { background: #fff url(../img/page_about_bg.png) center top no-repeat; }
.BANNER_SERVICE_BG { background: #f5e8de url(./img/page_service_bg.jpg) center top no-repeat; }
.BANNER_STRATEGY_BG { background: #f5e8de url(./img/page_strategy_bg.jpg) center top no-repeat; }
.BANNER_QC_BG { background: #f5e8de url(../img/page_qc_bg.jpg) center top no-repeat; }
.BANNER_CASE_BG { background: #f5e8de url(../img/page_case_bg.jpg) center top no-repeat; }
.BANNER_EQUIPMENT_BG { background: #f5e8de url(../img/page_equipment_bg.jpg) center top no-repeat; }
.BANNER_PRODUCT_BG { background: #f5e8de url(../img/page_products_bg.jpg) center top no-repeat; }
.BANNER_SITEMAP_BG { background: #f5e8de url(../img/page_sitemap_bg.jpg) center top no-repeat }
#PAGE_CONTENT { width: 100%; margin-top: 20px; overflow: hidden; background: #f5f5f3; }
#box-2 { width: 100%; font-family: 'Microsoft JhengHei', 微軟正黑體, "Helvetica"; }
.logosarea { width: 100%; margin: 0 auto; }
.logos ul { list-style: none }
.logos ul li { font-size: 0.8em; width: 27%; height: 80px; line-height: 1.2em; color: #898989; float: left; }
.logos ul li.sponsor { width: 61%; height: 100px; float: left; line-height: 1.3em; font-size: 0.8em; color: #898989 }
.logos { width: 95%; margin: 10px auto 10px auto; background: #fff; position: relative }
.logos p { padding: 0.2em; }
.logos img { padding-top: 0.2em; vertical-align: middle; }
#run_bg { margin: 0; }
#soon { font-size: 10em; text-align: center; width: 100%; margin: .1em auto 0 auto; text-transform: uppercase }
#adam { position: absolute; z-index: 999; background: url(../images/adam.png); width: 120px; height: 180px; animation: walk-east 1.0s steps(8) infinite; margin: -180px 0 0 200px }
@keyframes walk-east {
 from {
background-position: 0px;
}
 to {
background-position: 960px;
}
}
#box-2 .area-background { background-image: url('../images/bg_index.jpg') !important; background-repeat: no-repeat !important; background-position: 50% 0 !important; background-size: auto !important; background-color: transparent !important; background: inherit; }

@media only screen and ( max-width: 30em ) /* 320 */ {
#box-2 .area-background { background-image: url('../images/bg_index.jpg') !important; background-repeat: no-repeat !important; background-position: 50% 0 !important; background-size: auto !important; background-color: transparent !important; background: inherit; height: 523px; }
.logosarea { width: 100%; margin: 0 auto; }
.logos { width: 95%; margin: 5px 10px; background: #fff; float: left; position: relative }
.logos ul li { font-size: 0.8em; width: 33.3%; height: 7em; float: left; list-style: none; line-height: 1.2em; color: #898989 }
.logos ul li.sponsor { height: 12em; }
.logos img { padding-top: 0.1em; }
#run_bg { margin: 2.5% 0 0 0; }
#soon { font-size: 4em; text-align: center; width: 100%; margin: .1em auto 0 auto; text-transform: uppercase }
#theme { position: absolute; z-index: 9999; background: url(../images/theme-m-320.png) no-repeat top center; width: 100%; height: 100%; margin: 15px 0 0 0; }
#theme img { width: 100%; }
.tag { position: relative; right: 0; top: 3% }
.tag .text { font-size: .8em; height: 0; position: relative; clear: left; margin-bottom: 1%; padding-top: 1%; padding-bottom: 8.5%; overflow: hidden; }
.round-button { width: 20px; height: 20px; margin-bottom: 1%; border-radius: 50%; border: 2px solid #f5f5f5; overflow: hidden; background: #FFF; box-shadow: 0 0 3px gray; }
.round-button:hover { background: #fff; }
.round-button img { display: block; width: 100%; padding: 3%; height: auto; }
}
p.title { font-size: 14px; color: #838383; line-height: 2em; }
p.brand { font-size: 2em; color: #000; padding-top: 10px; line-height: 1em; text-align: center }
p.price { font-size: 14px; margin: 0px 0 0 0; padding: 0 5px; line-height: 1.8em; color: #8791c3; }
p.sale { font-size: 14px; margin: 0px 0 0 0; padding: 0 5px; line-height: 1.8em; color: #f00; }
p.sale span { font-size: 14px; margin: 0px 0 0 0; padding: 0 5px; text-decoration: line-through; color: #8791c3; }
p.tb1 { margin: 5px; border-top: #dddddd solid 1px; line-height: 1em }
p.promo { margin: 0; padding: 0; line-height: 1.6em; color: #8791c3; }
/* Clear (used for horizontal thumbnails)
-------------------------------------------*/
.clear { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; float: none; }
/* footer
-------------------------------------------*/
footer { background-image: url(../images/info_shadow.png); background-position: center top; background-repeat: no-repeat; width: 100%; float: left; background-color: #fff }
footer .area-2 { width: 100%; float: left; padding: 0 0 0px 0; margin: 20px 0; }
address { text-align: center; margin: 0; color: #76675d; }
address ul { }
address ul li { list-style: none; font-size: 12px; line-height: 1.5em; margin: 5px }
footer h1 { text-align: center; margin: 20px auto 10px auto; width: 150px }
.go-top { position: fixed; bottom: 2em; width: 80px; height: 80px; right: 2em; text-decoration: none; background: url(../images/btn_top.png) no-repeat; font-size: 12px; text-indent: -9999px; padding: 1em; display: none; z-index: 999999; }
.go-top { }
/*bread & clearfix*/

#bread { font-family: "微軟正黑體", "Microsoft JhengHei", "Helvetica", 黑體-繁, Heiti TC, sans-serif; width: 100%; height: 20px; font-size: 14px; list-style: none; color: #40220f; margin: 10px 0; float: left; }
#bread li { float: left; list-style: none; }
#bread li a { font-weight: bold; color: #76675d; }
#bread li a:hover { color: #f5bf4b }
.clearfix:after { clear: both; content: "."; display: block; height: 0; visibility: hidden; }
.clearfix { display: inline-block; }
.clearfix { display: block; }
/* ====================================================================================================================
 * RESPONSIVE
 * ====================================================================================================================*/
footer img { max-width: 100% }

@media only screen and (max-width: 1169px) {
body.nav-on-left.overflow-hidden { overflow: hidden; }
}
a { color: #00A0E9; text-decoration: none; }
img { /* make images responsive */ max-width: 100%; }
/* Navi
---------------------------------------------------------*/
#nav { width: 100%; /* 1000 */ position: relative; z-index: 99999;/* 30 480 */ float: left; }
#nav > a { display: none; }
#nav li { position: relative; }
#nav li a { color: #9FA0A0; display: block; }
#nav li a:active { background-color: #FF8300 !important; }
#nav span:after { width: 0; height: 0; border: 0.313em solid transparent; /* 5 */ border-bottom: none; border-top-color: #4DB3E6; content: ''; vertical-align: middle; display: inline-block; position: relative; right: -0.313em; /* 5 */ }
/* first level */

#nav > ul { width: 100%; margin: 0 auto; height: 2.75em; /* 60 */ background-color: #fff; }
#nav > ul.en { width: 100%; /* 60 */ background-color: #fff; }
#nav > ul > li { width: 11.1%; height: 100%; float: left; }
#nav > ul > li > a { display: flex; height: 100%; font-size: 0.9em; /* 24 */ line-height: 1em; /* 60 (24) */ text-align: center; align-items: center;  justify-content: center; }
#nav > ul > li:not( :last-child ) > a { border-right: 1px solid #9FA0A0; }
#nav > ul > li:hover > a, #nav > ul:not( :hover ) > li.active > a { background-color: #00A1DF; color: #fff; }
/* second level */

#nav li ul { background-color: #00A1DF; display: none; position: absolute; top: 100%; }
#nav li:hover ul { display: block; left: 0; right: 0; }
#nav li:not( :first-child ):hover ul { left: -1px; }
#nav li ul a { font-size: 1em; /* 20 */ color: #DCDDDD; border-bottom: 1px solid #4DB3E6; padding: 0.75em;
	line-height: 1.4em/* 15 (20) */ }
#nav li ul li a:hover, #nav li ul:not( :hover ) li.active a { background-color: #4DB3E6; color: #fff; }

@media only screen and ( max-width: 62.5em ) /* 1000 */ {
#nav { width: 100%; /*position: static;*/ margin: 0; }
}

@media only screen and ( max-width: 40em ) /* 640 */ {
	#SLOGAN {  width:300px; }
#box-2 .area-background { background-image: url('../images/bg_index.jpg') !important; background-repeat: no-repeat !important; background-position: 50% 0 !important; background-size: auto !important; background-color: transparent !important; background: inherit; height: 523px; }
#theme { position: absolute; z-index: 999; background: url(../images/theme-m.png) no-repeat top center; width: 100%; height: 100%; margin: 2px 0 0 0; }
.tag { position: relative; float: right; top: 3%; padding-right: 20px }
.tag p { display: block; font-size: 8px; padding: 5px 0;color: #ffffff }
.round-button { display: block; width: 50px; height: 50px; margin-bottom: 10%; border-radius: 50%; border: 2px solid #f5f5f5; overflow: hidden; background: #FFF; box-shadow: 0 0 3px gray; }
.round-button:hover { background: #ccc; }
.round-button img { display: block; width: 100%; padding: 3%; height: auto; }
#nav { position: relative; top: auto; left: auto; }
#nav > a { width: 2.125em; /* 50 */ height: 2.75em; /* 50 */ padding: 10px 0 0 0; text-indent:;
color: #9FA0A0; background-color: #fff; position: relative; float: right; top: -55px; right: 10px }
#nav > a:before, #nav > a:after { position: absolute; border: 2px solid #9FA0A0; top: 40%; left: 25%; right: 25%; content: ''; }
#nav > a:after { top: 60%; }
#nav:not( :target ) > a:first-of-type, #nav:target > a:last-of-type { display: block; }
/* first level */

#nav > ul { height: auto; display: none; position: absolute; left: 0; right: 0; top: 0; box-shadow: 0 0 30px rosybrown; }
#nav:target > ul { display: block; }
#nav > ul > li { width: 100%; float: none; }
#nav > ul > li > a { height: auto; text-align: center; line-height: 3em; padding: 0 0.833em; /* 20 (24) */ }
#nav > ul > li:not( :last-child ) > a { border-right: none; border-bottom: 1px solid #DCDDDD; }
/* second level */
#nav li ul { position: static; padding: 1.25em; /* 20 */ padding-top: 0; }
}
/* -------------------------------- 

Main header

-------------------------------- */

.main-header { height: 85px; background: #FFF; width: 100%; }

@media only screen and (min-width: 1170px) {
.main-header { height: 100px; }
.main-header::after { clear: both; content: ""; display: table; }
}
/*logoの設定*/
header h1 { margin: 0; padding: 15px 5px 7px 5px; width: 60%; }
header h1 img { width: 100%; max-width: 200px; }
header { text-align: center; position: relative; overflow: hidden; }
.cd-header-buttons { position: absolute; display: inline-block; top: 30px; right: 15%; }
.cd-header-buttons li { display: inline-block; }
.ball { position: absolute; margin-top: 10%; margin-left: 5%; z-index: 10; }
.ball img { width: 100px; display: block; }
#adam { position: absolute; z-index: 999; background: url(../images/adam.png); width: 120px; height: 180px; animation: walk-east 1.0s steps(8) infinite; }
@keyframes walk-east {
 from {
background-position: 0px;
}
 to {
background-position: 960px;
}
}

@media screen and (max-width: 640px) {
#PAGE_CONTENT { background: #f5f5f3 url(../img/page_content_bg2.jpg) left top repeat-x; }
}

/* PC向けおよび大型タブレット向けのレイアウトの指定：737px～960px */
@media only screen and (min-width: 736px) {
/*logoの設定*/
#PAGE_VISUAL_BOX { width: 100%; height: 120px; margin-top: 30px }
#SLOGAN { padding-top: 2em; }
header h1 { margin: 0 auto; padding: 5px 5px 7px 5px; width: 233px; }
header h1 img { width: 100%; max-width: 300px; }
header { /*#s_navのセンタリングの解除*/ position: static; overflow: visible; }
.cd-header-buttons { position: absolute; display: inline-block; top: 16px; right: 5%; }
.cd-header-buttons li { display: inline-block; }
#run_bg { margin: 0; }
#theme { position: absolute; z-index: 9999; background: url(../images/theme-m-700.png) no-repeat top center; width: 100%; height: 100%; margin: 90px 0 0 0px; }
.logosarea { width: 95%; margin: 0 auto; }
.area-background { background-image: url('../images/bg_index.jpg') !important; background-repeat: no-repeat !important; background-position: 50% 0 !important; background-size: auto !important; background-color: transparent !important; background: inherit; height: 349px; }
footer { width: 100%; float: left; }
.logos { width: 90%; margin: 10px auto 0 auto; background: #fff; }
.logos ul { list-style: none }
.logos ul li { font-size: 0.6em; width: 16.5%; height: 80px; margin-bottom: 5px; line-height: 1.3em; color: #898989; float: left; }
.logos ul li.sponsor { width: 65%; height: 100px; float: left; line-height: 1.3em; font-size: 0.8em; color: #898989 }
.logos img { padding: 0; line-height: 0 }
}

@media only screen and (min-width: 736px) {
.tag { position: relative; float: right; right: 4%; top: 0 }
.tag .text { font-size: .8em; margin-top: -135% }
.round-button { display: block; width: 60px; height: 60px; clear: left; margin-bottom: 20%; border-radius: 50%; border: 2px solid #f5f5f5; overflow: hidden; background: #FFF; box-shadow: 0 0 3px gray; }
.round-button:hover { background: #fff; }
.round-button img { display: block; width: 100%; padding: 3%; height: auto; }
}

/* PC向けレイアウトの指定：961px以上では固定レイアウト */
@media only screen and (min-width: 961px) {
/* header */
.main-header { height: 90px; background: #FFF; width: 100%; }
#PAGE_VISUAL_BOX { width: 100%; height: 120px; margin-top: 45px }
#SLOGAN_BOX { width: 100%; }
#SLOGAN { padding-top: 3em; }
#nav > ul.en { width: 100%; margin: 0 auto 0 60px; height: 2.75em; /* 60 */ background-color: #fff; }
#nav { background-color: #fff; }
header { width: 960px; margin-left: auto; margin-right: auto; }
header h1 { margin: 10px auto 0 auto; padding: 5px 5px 7px 5px; width: 233px; }
#run_bg { margin: 0 }
#soon { font-size: 7em; text-align: center; width: 100%; margin: .1em auto 0 auto; text-transform: uppercase }
#theme { position: absolute; z-index: 9999; background: url(../images/theme.png) no-repeat top center; width: 100%; height: 60%; margin: 55px 0 0 0px; }
#box-2 .area-background { background-image: url('../images/bg_index.jpg') !important; background-repeat: no-repeat !important;  background-size: auto !important; background-color: transparent !important; background: inherit; height: 440px; margin-bottom: 10px }
footer { width: 100%; float: left; }
.logosarea { width: 70%; margin: 0 auto }
.logos { width: 100%; margin: 0 0 0 40px; line-height: 0.5em; position: relative; float: left }
.logos ul { list-style: none }
.logos ul li { width: 11%; height: 100px; margin-left: 25px; float: left; line-height: 1.3em; font-size: 0.6em; color: #898989 }
.logos ul li.sponsor { width: 100%; height: 100px; float: left; line-height: 1.3em; font-size: 0.6; color: #898989 }
.logos img { padding-top: 0em; }
address { text-align: center; margin: 0; color: #76675d; }
address ul li { list-style: none; font-size: 15px; line-height: 1.5em; }
footer h1 { text-align: center; margin: 20px auto 10px auto; width: 200px }
.tag { position: relative; float: right; right: 4%; top: 5% }
.tag p { font-size: 0.5em; color: #ffffff }
.round-button { display: block; width: 50px; height: 50px; clear: left; margin-bottom: 20%; border-radius: 50%; border: 2px solid #f5f5f5; overflow: hidden; background: #FFF; box-shadow: 0 0 3px gray; }
.round-button:hover { background: #fff; }
.round-button img { display: block; width: 100%; padding: 3%; height: auto; }
/* SearchBar End */
}

/* SearchBar */

@import url(http://fonts.googleapis.com/css?family=Lato:300,400,700);
@font-face { font-family: 'codropsicons'; src: url('../fonts/codropsicons/codropsicons.eot'); src: url('../fonts/codropsicons/codropsicons.eot?#iefix') format('embedded-opentype'), url('../fonts/codropsicons/codropsicons.woff') format('woff'), url('../fonts/codropsicons/codropsicons.ttf') format('truetype'), url('../fonts/codropsicons/codropsicons.svg#codropsicons') format('svg'); font-weight: normal; font-style: normal; }
.column { float: left; width: 100%; padding: 0 2em; min-height: 0px; position: relative; }
.column:nth-child(2) { box-shadow: -1px 0 0 rgba(0,0,0,0.1); }
.column p { font-weight: 300; font-size: 2em; padding: 0; margin: 0; text-align: right; line-height: 1.5; }
.column a { border: 3px solid #b4c7da; padding: 0 15px; display: inline-block; margin: 20px 0; }
.column a:hover { border-color: #fff; }

@media screen and (max-width: 46.0625em) {
.column { width: 100%; min-width: auto; min-height: auto; padding: 1em; }
.column p { text-align: left; font-size: 1.5em; }
.column:nth-child(2) { box-shadow: 0 -1px 0 rgba(0,0,0,0.1); }
}

.people { background: url(../images/people.png) no-repeat; position: relative; float: right; width: 50%; height: 30vh;margin-top: -100px }
/* CSS talk bubble */
.talk-bubble {
	margin: 0 auto 40px auto;
	padding: 20px;
  display: inline-block;
  position: relative;
	width: 100%;
	height: auto;
	background-color: #EFEFEF;
}
.border{
  border: 8px solid #EFEFEF;
}
.round{
  border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;

}

/* Right triangle placed top left flush. */
.tri-right.border.left-top:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: -40px;
	right: auto;
  top: -8px;
	bottom: auto;
	border: 32px solid;
	border-color: #666 transparent transparent transparent;
}
.tri-right.left-top:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: -20px;
	right: auto;
  top: 0px;
	bottom: auto;
	border: 22px solid;
	border-color: lightyellow transparent transparent transparent;
}

/* Right triangle, left side slightly down */
.tri-right.border.left-in:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: -40px;
	right: auto;
  top: 30px;
	bottom: auto;
	border: 20px solid;
	border-color: #666 #666 transparent transparent;
}
.tri-right.left-in:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: -20px;
	right: auto;
  top: 38px;
	bottom: auto;
	border: 12px solid;
	border-color: #EFEFEF #EFEFEF transparent transparent;
}

/*Right triangle, placed bottom left side slightly in*/
.tri-right.border.btm-left:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: -8px;
  right: auto;
  top: auto;
	bottom: -40px;
	border: 32px solid;
	border-color: transparent transparent transparent #666;
}
.tri-right.btm-left:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: 0px;
  right: auto;
  top: auto;
	bottom: -20px;
	border: 22px solid;
	border-color: transparent transparent transparent lightyellow;
}

/*Right triangle, placed bottom left side slightly in*/
.tri-right.border.btm-left-in:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: 30px;
  right: auto;
  top: auto;
	bottom: -40px;
	border: 20px solid;
	border-color: #666 transparent transparent #666;
}
.tri-right.btm-left-in:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
	left: 38px;
  right: auto;
  top: auto;
	bottom: -20px;
	border: 12px solid;
	border-color: lightyellow transparent transparent lightyellow;
}

/*Right triangle, placed bottom right side slightly in*/
.tri-right.border.btm-right-in:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 10em;
	bottom: -40px;
	border: 20px solid;
	border-color: #EFEFEF #EFEFEF transparent transparent;
}
.tri-right.btm-right-in:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 10em;
	bottom: -20px;
	border: 12px solid;
	border-color: #EFEFEF #EFEFEF transparent transparent;
}
/*
	left: -8px;
  right: auto;
  top: auto;
	bottom: -40px;
	border: 32px solid;
	border-color: transparent transparent transparent #666;
	left: 0px;
  right: auto;
  top: auto;
	bottom: -20px;
	border: 22px solid;
	border-color: transparent transparent transparent lightyellow;

/*Right triangle, placed bottom right side slightly in*/
.tri-right.border.btm-right:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -8px;
	bottom: -40px;
	border: 20px solid;
	border-color: #666 #666 transparent transparent;
}
.tri-right.btm-right:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: 0px;
	bottom: -20px;
	border: 12px solid;
	border-color: lightyellow lightyellow transparent transparent;
}

/* Right triangle, right side slightly down*/
.tri-right.border.right-in:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -40px;
  top: 30px;
	bottom: auto;
	border: 20px solid;
	border-color: #666 transparent transparent #666;
}
.tri-right.right-in:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -20px;
  top: 38px;
	bottom: auto;
	border: 12px solid;
	border-color: lightyellow transparent transparent lightyellow;
}

/* Right triangle placed top right flush. */
.tri-right.border.right-top:before {
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -40px;
  top: -8px;
	bottom: auto;
	border: 32px solid;
	border-color: #666 transparent transparent transparent;
}
.tri-right.right-top:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
  left: auto;
	right: -20px;
  top: 0px;
	bottom: auto;
	border: 20px solid;
	border-color: lightyellow transparent transparent transparent;
}

/* talk bubble contents */
.talktext{
  padding: 1em;
	text-align: left;
  line-height: 1.5em;
}
.talktext p{
  /* remove webkit p margins */
  -webkit-margin-before: 0em;
  -webkit-margin-after: 0em;
}

