@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
#main {
	font-feature-settings: "palt";
}

.business li p {
	letter-spacing: 5px;
}

.bannerTop h2 p {
	letter-spacing: 6px;
}

.busPubList li p {
	letter-spacing: 3.5px;
}

.industry {
	padding-top: 140px;
}

.indWord {
	margin-bottom: 134px;
}

.indWord h3 {
	margin-bottom: 35px;
	font-size: 30px;
	text-align: center;
	letter-spacing: 5px;
}

.indWord > p {
	padding-bottom: 52px;
	font-size: 14px;
	text-align: center;
	line-height: 2.15;
	letter-spacing: 1.5px;
}

.indImg01 {
	margin: 17px auto 0;
	width: 265px;
	font-size: 12px;
	position: relative;
}

.indImg01 p {
	position: absolute;
	letter-spacing: 2px;
	word-break: keep-all;
}

.indImgP1 {
	color: #328ce2;
	top: -23px;
	left: 64px;
}

.indImgP2 {
	color: #6891b4;
	top: -26px;
	right: 65px;
}

.indImgP3 {
	color: #4c7490;
	top: 68px;
	right: -92px;
}

.indImgP4 {
	color: #7dbbba;
	bottom: -17px;
	right: -12px;
}

.indImgP5 {
	color: #5b868c;
	bottom: 5px;
	left: -60px;
	text-align: center;
}

.indImgP6 {
	color: #7a9fc2;
	top: 90px;
	left: -24px;
}

.indImg01 img {
	max-width: 100%;
}

.mapBox {
	margin: 0 auto;
	width: 1100px;
}

.map {
	margin-left: 32px;
	width: 831px;
	float: left;
}

.map img {
	width: 100%;
}

.countList {
	margin-right: 2px;
	margin-top: 6px;
	width: 205px;
	float: right;
	text-align: center;
}

.countList ul {
	display: inline-block;
	vertical-align: top;
}

.countList ul:first-child {
	padding-right: 11px;
}

.countList li {
	font-size: 10px;
	color: #276c83;
	text-align: left;
}

.countList li p {
	margin-bottom: 5px;
}

.business .linkTo {
	display: none;
}

.ps {
	margin: 0 auto 87px;
	width: 1050px;
	position: relative;
	background: #003f54;
}

.ps a {
	display: block;
	position: relative;
}

.ps a::after {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .6s ease;
    content: "";
    background: url(//cdn.xuansiwei.com/meili8437/img/common/img_business_cover.png) no-repeat center;
    background-size: cover;
}

.ps a:hover::after {
	opacity: .7;
}

.ps a img {
	width: 100%;
}

.ps p {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	font-size: 36px;
	color: #fff;
	text-align: center;
	letter-spacing: 2.4px;
}

.industryEn .indWord h3 {
	font-size: 34px;
	letter-spacing: 0;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.industryEn .indWord > p {
	font-size: 16px;
	line-height: 1.62;
	letter-spacing: 0.25px;
}

.industryEn .indImg01 p {
	font-size: 13px;
	letter-spacing: 0;
	white-space: nowrap;
}

.industryEn .indImgP1 {
    top: -23px;
    left: 57px;
}

.industryEn .indImgP2 {
    top: -24px;
    right: -69px;
}

.industryEn .indImgP3 {
    top: 71px;
    right: -167px;
}

.industryEn .indImgP4 {
    bottom: -21px;
    right: 25px;
}

.industryEn .indImgP5 {
    bottom: 4px;
    left: -38px;
	line-height: 1.4;
}

.industryEn .indImgP6 {
    top: 92px;
    left: -38px;
}

.busEn .business li p {
    letter-spacing: .6px;
}

@media all and (min-width: 0) and (max-width: 767px) {
	.business li p {
		letter-spacing: 3px;
	}
	
	.bannerSub .bannerTop h2 {
		letter-spacing: 12px;
	}
	
	.busPubList li p {
		letter-spacing: 2.5px;
	}
	
	.industry {
		padding-top: 72px;
	}

	.indWord {
		margin-bottom: 79px;
		padding: 0 25px;
	}

	.indWord h3 {
		margin: 0 -20px 21px;
		font-size: 24px;
		letter-spacing: 4px;
	}

	.indWord > p {
		padding-bottom: 41px;
		font-size: 13px;
		line-height: 2;
		text-align: left;
	}

	.indImg01 {
		margin-top: 13px;
		width: 57.7%;
	}

	.indImgP1 {
		top: -20px;
		left: 23%;
	}

	.indImgP2 {
		top: -23px;
		right: auto;
		left: 52%;
		width: 42%;
	}

	.indImgP3 {
		top: 22%;
		right: -53px;
	}

	.indImgP4 {
		bottom: -10px;
		right: auto;
		left: 73%;
		word-break: keep-all;
	}

	.indImgP5 {
		bottom: -1px;
		left: -74px;
	}

	.indImgP6 {
		top: 31%;
		left: -18px;
	}

	.mapBox {
		width: auto;
	}

	.map {
		margin: 0 -16px 12px;
		width: auto;
		float: none;
	}

	.countList {
		margin: 0 -25px;
		width: auto;
		float: none;
	}

	.countList li {
		padding: 0 8px;
		display: inline-block;
		vertical-align: top;
	}

	.countList ul:first-child {
		padding-right: 0;
	}

	.business {
		margin-top: 79px;
	}

	.ps {
		margin: 0 25px 62px;
		width: auto;
	}

	.ps p {
		font-size: 24px;
		letter-spacing: 1.4px;
	}

	.ps a:hover::after {
		display: none;
	}
	
	.industryEn .indWord h3 {
		margin-left: 0;
		margin-right: 0;
		font-size: 29px;
		line-height: 1.25;
	}
	
	.industryEn .indWord > p {
		font-size: 15px;
		line-height: 1.54;
		letter-spacing: 0.35px;
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
		text-align: justify;
	}
	
	.industryEn .indImg01 p {
		line-height: 1.2;
	}
	
	.industryEn .indImgP1 {
		top: -20px;
		left: 37px;
	}
	
	.industryEn .indImgP2 {
		top: -35px;
		right: auto;
		left: 55.5%;
	}
	
	.industryEn .indImgP3 {
		top: 46px;
		right: -85px;
	}
	
	.industryEn .indImgP4 {
		bottom: -12px;
		right: auto;
		left: 75%;
	}
	
	.industryEn .indImgP5 {
		bottom: -9px;
		left: -42px;
	}
	
	.industryEn .indImgP6 {
		top: 62px;
		left: -31px;
	}
	
	.iphone5 .industryEn .indImg01 p {
		letter-spacing: -.5px;
	}
	
	.iphone5 .industryEn .indImgP3 {
		right: -80px;
	}
	
	.iphone5 .industryEn .indWord h3 {
		letter-spacing: -.6px;
	}
}

/*------------------------------------------------------------
	shipbuilding
------------------------------------------------------------*/
.ship h2 {
	letter-spacing: 17px;
}

.shipHead {
	margin: 112px auto 67px;
	text-align: center;
}

.shipHead h3 {
	margin-bottom: 11px;
	font-size: 25px;
	letter-spacing: 2px;
}

.shipHead ul {
	margin: 0 auto;
	/* width: 630px; */
}

.shipHead li {
	margin-bottom: 3px;
	display: inline-block;
}

.shipHead li a {
	padding: 5px 28px;
	display: block;
	position: relative;
	font-size: 12px;
	letter-spacing: 1.7px;
}

.shipHead li a:hover {
	color: #999;
}

.shipHead li a:after {
	width: 1px;
	height: 15px;
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	background: #cccccc;
}

.shipHead li.noLinePc a:after,
.shipHead li:last-child a:after {
	width: 0;
}

.shipInfo {
	margin-bottom: 150px;
}

.shipBox {
	position: relative;
}

.shipImg {
	width: 50%;
}

.shipImg img {
	width: 100%;
}

.shipImg a:hover {
	opacity: .5;
}

.shipWord {
	width: 33%;
	position: absolute;
	right: 8%;
	top: 50%;
	transform: translateY(-50%);
}

.shipInfo .shipBox:nth-child(2n) .shipImg {
	float: right;
}

.shipInfo .shipBox:nth-child(2n) .shipWord {
	right: auto;
	left: 9%;
}

.shipWord h4 {
	margin-bottom: 37px;
	font-size: 24px;
	letter-spacing: 4px;
}

.shipWord p {
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 1.8px;
}

.underLine, .linkTo a {
	letter-spacing: 1.8px;
}

.shipWord .linkTo a {
	float: right;
}

.shipWord .linkTo a img {
	width: 14px;
	margin: 4px 0 0 6px;
	display: inline-block;
}

.ship.shipEn h2 {
	letter-spacing: .9px;
}

.shipHeadEn.shipHead li a {
	letter-spacing: 0.2px;
}

.shipInfoEn .shipWord h4 {
	font-size: 26px;
	line-height: 1.35;
	letter-spacing: 0;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.shipInfoEn .shipWord p {
	font-size: 13px;
	line-height: 1.62;
	letter-spacing: 0.2px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

.linkToEn a {
	letter-spacing: .2px;
}

.busPubListEn li p {
	letter-spacing: .8px;
}

.electronics .shipHead li:last-child {
	display: block;
}

.electronics .shipHead li:last-child a {
	display: inline-block;
}

.healthcare .shipHead ul {
	width: 760px;
}

.food .shipHead ul {
	width: 750px;
}

.shipWord .linkTo a.linkSite {
	margin-right: 20px;
}

.shipWord .linkTo a.linkSite img {
	position: absolute;
}

@media all and (min-width: 0) and (max-width: 767px) {
	.shipHead {
		margin: 69px 0 57px;
	}

	.shipHead h3 {
		margin-bottom: 15px;
		font-size: 16px;
		letter-spacing: 1px;
		line-height:1.2;
	}
	
	.shipHead ul {
		width: auto;
		margin: 0 10px;
	}

	.shipHead li a {
		padding: 5px 24px;
		font-size: 10px;
		letter-spacing: 1px;
	}

	.food .shipHead li a {
		padding-left: 15px;
		padding-right: 15px;
	}

	.shipHead li.noLinePc a:after {
		width: 1px;
	}

	.shipHead li.noLineSp a:after {
		width: 0;
	}
	
	.shipHead li a:hover {
		color: #000;
	}

	.shipInfo {
		margin-bottom: 104px;
	}

	.shipBox {
		margin-bottom: 63px;
	}

	.shipImg {
		margin-bottom: 33px;
		width: auto;
	}
	
	.shipImg a:hover {
		opacity: 1;
	}

	.shipWord {
		padding: 0 25px;
		width: auto;
		position: static;
		transform: none;
	}
	
	.shipInfo .shipBox:nth-child(2n) .shipImg {
		float: none;
	}

	.shipWord h4 {
		margin-bottom: 19px;
		font-size: 20px;
		letter-spacing: 4px;
	}

	.shipWord p {
		margin-bottom: 17px;
		line-height: 1.76;
		font-size: 13px;
		letter-spacing: 1.6px;
	}
	
	.ship.shipEn h2 {
		font-size: 32px;
		line-height: 1.2;
	}
	
	.shipInfoEn .shipWord h4 {
		font-size: 24px;
		line-height: 1.3;
	}
	
	.busPubListEn li p {
		letter-spacing: 0.3px;
	}
	
	.iphone5 .shipHeadEn.shipHead li a {
		letter-spacing: -.2px;
	}

	.living .shipHead li a {
		padding: 5px 15px;
		letter-spacing: 1px;
	}

	.living.iphone5 .shipHead li a {
		padding: 5px 10px;
		letter-spacing: 0;
	}
	
	.iphone5 .shipHead li a {
		padding-left: 18px;
		padding-right: 18px;
		letter-spacing: .5px;
	}
	
	.food.iphone5 .shipHead li a {
		padding-left: 12px;
		padding-right: 12px;
	}
	
	.electronics .shipHead li:last-child {
		display: inline-block;
	}

	.electronics .shipHead li:last-child a {
		display: block;
	}

	.healthcare .shipHead ul,
	.food .shipHead ul {
		width: auto;
	}
	
	.iphone5 .ship.shipEn h2 {
		letter-spacing: .6px;
	}
}

@media all and (min-width: 0) and (max-width: 360px) {
	.living .shipHead li a {
		letter-spacing: .5px;
	}
	
	.shipHead ul {
		margin: 0;
	}

}

/*------------------------------------------------------------
	machinery
------------------------------------------------------------*/
.bannerTop.mask:after {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: .2;
	content: "";
	background: #000;
}

.macMess {
	margin: 92px auto 138px;
}

.macMess h3 {
	margin-bottom: 26px;
	font-size: 24px;
	text-align: center;
	letter-spacing: 7px;
}

.macMess p {
	margin: 0 auto;
	width: 590px;
	font-size: 14px;
	line-height: 2.05;
	letter-spacing: 1.5px;
}

.macStitBox {
	padding-bottom: 53px;
}

.macStitBox:last-child {
	padding-bottom: 0;
}

.macStitBox .macPart {
	padding-top: 6px;
	margin-bottom: 94px;
}

.macStitBox .macPart:last-child {
	margin-bottom: 45px;
}	

.macStitBox:nth-child(n+2) h3 {
	padding-top: 48px;	
}

.macStit {
	padding-bottom: 95px;
	margin: 0 auto;
	width: 1000px;
}

.macStit h3 {
	margin-bottom: 70px;
	font-size: 20px;
	text-align: center;
	letter-spacing: 4px;
}

.macWord {
	margin-top: -7px;
	width: 405px;
	float: left;
}

.macWord h4 {
	margin-bottom: 28px;
	position: relative;
	font-size: 19px;
	letter-spacing: 3px;
}

.macWord h4:after {
	width: 25px;
	height: 1px;
	display: block;
	position: absolute;
	top: 17px;
	left: -40px;
	content: "";
	background: #2e4b9b;
}

.macWord p {
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.86;
	letter-spacing: 1.8px;
}

.macWord .linkTo {
	padding-right: 24px;
}

.macWord .linkTo a {
	float: right;
}

.macWord .linkTo a img {
	width: 12.5px;
	position: absolute;
	top: 6px;
	right: -20px;
}

.macImg {
	width: 500px;
	float: right;
}

.macImg img {
	width: 100%;
}

.psBg {
	margin-bottom: 137px;
	padding: 100px 0 45px;
	overflow: hidden;
	background: #f0f2f2;
}

.psBox {
	margin: 0 auto;
	width: 1000px;
}

.psBox h3 {
	margin-top: -4px;
	margin-left: -15px;
	font-size: 36px;
	float: left;
	white-space: nowrap;
	writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	letter-spacing: 2.3px;
}

.psList {
	margin-left: 86.5px;
	width: 1260px;
}

.psList .slick-track {
  margin-left: 0;
}

.psList li {
  padding: 0 32.5px 5px;
  width: 25%;
  float: left;
  box-sizing: border-box;
}

.psList li a {
	display: block;
}

.psListImg {
	margin-bottom: 24px;
}

.psListImg img {
	width: 100%;
	transition: opacity .6s ease;
}

.psList li a:hover {
	color: #999;
}

.psList li a:hover .psListImg img {
	opacity: .7 !important;
}

.psList li a:hover .psListWord  span:after {
	opacity: .7;
}

.psListWord h4 {
	margin-bottom: 7px;
	margin-left: -2px;
	font-size: 14px;
	letter-spacing: 1px;
}

.psListWord p {
	font-size: 14px;
	line-height: 1.89;
	letter-spacing: 1px;
}

.psListWord span {
	margin-top: 11px;
	display: block;
	font-size: 12px;
	float: right;
}

.psSwitch {
	margin-top: 48px;
	float: right;
}

.psSwitch .linkTo {
	margin-top: -3px;
	float: right;
}

.psSwitch > div {
	display: inline-block;
	vertical-align: middle;
	float: right;
}

.psArrow {
	margin-right: -7px;
	margin-left: 20px;
}

.psArrow > div {
	display: inline-block;
}

.psArrow a {
	padding: 0 7px;
	display: block;
}

.psArrowPrev {
	margin: 0 12px;
}

.psArrow svg {
	width: 7px;
	height: 14px;
	transition: fill .6s ease;
}

.psArrowPrev.slick-disabled svg,
.psArrowNext.slick-disabled svg {
	opacity: .2;
}

.psArrowPrev.slick-disabled a,
.psArrowNext.slick-disabled a {
	cursor: auto;
}

.psArrowNext svg {
	transform: rotateZ(180deg);
}

.team {
	margin: 0 auto 145px;
	width: 576px;
}

.team h3 {
	margin-bottom: 35px;
	font-size: 36px;
	text-align: center;
	letter-spacing: 2px;
}

.teamInfo {
	padding-bottom: 17px;
}

.teamWord {
	margin-bottom: 31px;
}

.teamWord span {
	margin-top: -1px;
	width: 100px;
	display: block;
	float: left;
	font-size: 15px;
	line-height: 1.8;
	letter-spacing: 1px;
}

.teamWord p {
	margin-left: 109px;
	font-size: 13px;
	line-height: 1.8;
	letter-spacing: .8px;
}

.teamWord p a:hover {
	color: #999;
}

.busContact {
	margin: 0 auto 150px;
	width: 860px;
}

.busContTitle {
	margin-bottom: 37px;
}

.busContTitle h3 {
	margin-bottom: 13px;
	font-size: 36px;
	text-align: center;
	letter-spacing: 3px;
}

.busContTitle p {
	font-size: 14px;
	text-align: center;
	line-height: 1.9;
	letter-spacing: 1.7px;
}

.busContLeft {
	padding-right: 75px;
	width: 50%;
	float: left;
	position: relative;
	box-sizing: border-box;
}

.busContRight:after {
	width: 1px;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 1px;
    content: "";
    background: #d4dde0;
}

.busContWord ,.busContWord01 ,.busContWord02 {
	padding-left: 5px;
	font-size: 14px;
	text-align: center;
	line-height: 1.8;
	letter-spacing: 1.5px;
}

.busContWord{
    margin-bottom: 30px;
}

.busContWord01{
    margin-bottom: 26px;
}

.busContWord02{
    margin-bottom: 20px;
}

/*
.busContLeft .busContStore {
	padding-bottom: 60px;
}
*/

.busContLeft .busContStore a {
	padding: 13px 10px;
	font-size: 14px;
	font-weight: 400;
	display: block;
	text-align: center;
	letter-spacing: 1px;
	transition: color .6s ease,border .6s ease,background .6s ease;
	box-sizing: border-box;
	border: 1px solid #aabcc2;
}

.busContLeft .busContStore a:hover {
    color: #fff;
    border: 1px solid #2e6c9b;
    background: #2e6c9b;
}

.busContRight {
/*	width: 388px;*/
    width: 50%;
	float: right;
    position: relative;
    box-sizing: border-box;
    display: block;
    padding-left: 42px;
}

.busContRight .busContStore {
	margin-top: -7px;
}

.busContStoreInfo {
	margin-bottom: 12px;
}

.busContRight .busContStore.onlyOne {
	margin-top: 0;
	padding-bottom: 7px;
	width: 100%;
	display: table;
}

.busContStore.onlyOne .busContStoreInfo {
	display: table-cell;
	vertical-align: middle;
}

.busContStore .busContStoreInfo:last-child {
	margin-bottom: 0;
}

.busContStoreInfo > span {
	margin-top: 1px;
	width: 75px;
	float: left;
	font-size: 14px;
	display: block;
	letter-spacing: .7px;
}

.busContStorePhone {
	margin-left: 82px;
}

.busContStorePhone p {
	font-size: 18px;
	display: inline-block;
	letter-spacing: .4px;
}

.busContStorePhone p:first-child {
	margin-right: 16px;
}

.macSite {
	width: 900px;
	margin: 0 auto 150px;
}

.webSite {
	width: 410px;
	float: left;
	margin: 0 5px 30px 25px;
}

.webSite a {
	padding: 18px 20px 21px;
	display: block;
	font-size: 14px;
	color: #fff;
	letter-spacing: 1.5px;
	text-align: center;
	position: relative;
	background: #2e6c9b;
	transition: background .6s ease;
}

.webSite a:before {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity .6s ease;
	content: "";
	background: rgba(8,46,94,.5);
}

.webSite a:hover:before {
	opacity: 1;
}

.webSite p {
	display: inline;
	position: relative;
}

.webSite a img {
	margin-left: 8px;
	margin-bottom: 4px;
	width: 12.5px;
	position: relative;
	vertical-align: bottom;
}
.single .webSite{
	margin: 0 auto;
	float: none;
}
.sns {
	margin: 30px auto 0;
	width: 549px;
	text-align: center;
}

.sns a {
	margin: 0 5px;
	padding: 5px 5px 0;
	display: inline-block;
	vertical-align: middle;
}

.sns a svg {
	transition: fill .6s ease;
}

.sns a:hover svg {
	fill: #999;
}

.blog {
	width: 30px;
}

.blog svg {
	width: 32px;
	height: 17px;
}

.facebook {
	width: 25px;
}

.facebook svg {
	width: 25px;
	height: 25px;
}

.twitter {
	width: 25px;
}

.twitter svg {
	width: 25px;
	height: 25px;
}

.instagram {
	width: 25px;
}

.instagram svg {
	width: 25px;
	height: 25px;
}

.bannerTop.maskEn h2 p {
	font-size: 32px;
	letter-spacing: 0;
	padding:0 20%;
}

.bannerTop.maskEn h2 span {
	font-size: 13px;
	letter-spacing: .3px;
}

.macMess.macMessEn h3 {
	font-size: 26px;
	letter-spacing: 0;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.macMess.macMessEn p {
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.3px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

.macStitEn .macWord h4 {
	font-size: 23px;
	line-height: 1.4;
	letter-spacing: 0.4px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.macPartSpecEn h4 {
	margin-right: -17px;
}

.macStitEn .macWord p {
	font-size: 13px;
	line-height: 1.62;
	letter-spacing: 0.2px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

.teamEn {
	width: 593px;
}

.teamWord span {
    margin-top: -1px;
}

.teamEn .teamWord p {
	margin-left: 106px;
	line-height: 1.6;
	letter-spacing: 0.2px;
}

.busContactEn .busContTitle p {
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.2px;
}

.busContactEn .busContWord {
	padding-left: 0;
	font-size: 13px;
	letter-spacing: 0.2px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.busContactEn .busContStoreInfo > span {
	margin-bottom: 5px;
	width: auto;
	float: none;
	text-align: center;
	letter-spacing: .3px;
}

.busContactEn .busContStorePhone {
	margin-left: 0;
	text-align: center;
}

.busContactEn .busContStorePhone p {
	width: 166px;
	float: none;
	font-size: 14px;
	letter-spacing: .9px;
}

.busContactEn .busContStorePhone p:first-child {
	margin-right: 0;
	margin-left: 0;
}

.macSiteEn .webSite a {
	letter-spacing: 0.5px;
}

.psBox .psListWord h4,
.psBox .psListWord p {
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

@media all and (min-width: 0) and (max-width: 767px) {
	.bannerTop h2 p {
		font-size: 20px;
		letter-spacing: 3px;
		padding:0 25px;
	}

	.bannerTop h2 span {
		margin-top: 11px;
		font-size: 12px;
	}

	.bannerSub.bannerTop img {
		opacity: .4 !important;
	}

	.macMess {
		margin: 62px auto 90px;
		padding: 0 25px;
	}

	.macMess h3 {
		margin-bottom: 17px;
		font-size: 20px;
		letter-spacing: 5px;
		text-align:left;	
	}

	.macMess p {
		width: auto;
		font-size: 13px;
		line-height: 2;
		letter-spacing: 1px;
	}

	.macStit {
		padding: 0 25px 55px;
		width: auto;
	}
	
	.macStit h3 {
		margin-bottom: 52px;
		font-size: 16px;
		letter-spacing: 2px;
	}
	
	.macStitBox:nth-child(n+2) h3 {
		padding-top: 38px;
	}
	
	.macStitBox {
		padding-bottom: 10px;
	}
	
	.macStitBox .macPart {
		margin-top: -2px;
		padding-top: 0;
		margin-bottom: 60px;
	}
	
	.macWord,
	.macImg {
		width: auto;
		float: none;
	}

	.macWord {
		margin: 0 0 40px;
		position: relative;
	}	

	.macWord h4 {
		margin-bottom: 20px;
		font-size: 16px;
		letter-spacing: 3px;
	}

	.macWord h4::after {
		width: 17px;
		top: 15px;
		left: -25px;
	}

	.macWord p {
		margin-bottom: 0;
		font-size: 13px;
		line-height: 1.76;
		letter-spacing: 1.6px;
	}

	.macWord .linkTo {
		margin-top: 18px;
		padding-right: 19px;
	}

	.macWord .linkTo a img {
		right: -18px;
	}

	.psBg {
    	margin-bottom: 89px;
    	padding: 50px 0 53px;
	}

	.psBox {
		padding: 0 25px;
		width: auto;
	}

	.psBox h3 {
		margin-top: 0px;
		margin-left: -3px;
		font-size: 30px;
		letter-spacing: 1.9px;
	}

	.psList {
   	margin-left: 58px;
    width: 418px;
	}

	.psList li {
		padding: 0 17px 5px;
		width: 50%;
	}

	.psList li a:hover {
		color: #000;
	}

	.psList li a:hover .psListImg img {
		opacity: 1 !important;
	}

	.psList li a:hover .psListWord span::after {
		opacity: 1;
	}

	.psListImg {
    	margin-bottom: 21px;
	}

	.psListWord h4 {
		font-size: 13px;
	}

	.psListWord p {
		font-size: 12px;
		line-height: 1.75;
		letter-spacing: 1px;
	}

	.psListWord span {
		margin-top: 11px;
		letter-spacing: 1px;
	}

	.psSwitch {
		margin-top: 47px;
		float: none;
	}

	.psSwitch > div {
		float: none;
		display: block;
		text-align: center;
	}

	.psArrow {
		margin: 0 0 23px;
	}

	.psArrow > div {
		margin: 0 11px;
	}

	.psSwitch .linkTo {
		margin-right: 0;
		float: none;
	}

	.team {
		margin-bottom: 90px;
		padding: 0 25px;
		width: auto;
	}

	.team h3 {
		margin-bottom: 16px;
		font-size: 30px;
	}

	.teamInfo {
		padding-bottom: 5px;
	}

	.teamWord {
		margin-bottom: 25px;
	}

	.teamWord span {
		margin-bottom: 4px;
		width: auto;
		float: none;
	}

	.teamWord p {
		margin-left: 0;
		line-height: 1.7;
	}

	.teamWord p a:hover {
		color: #000;
	}

	.busContact {
		margin-bottom: 90px;
		padding: 0 25px;
		width: auto;
	}

	.busContTitle h3 {
		margin-bottom: 12px;
		font-size: 30px;
		letter-spacing: 2px;
	}

	.busContTitle p {
		font-size: 13px;
		text-align: left;
		line-height: 1.8;
		letter-spacing: 1.5px;
	}

	.busContLeft {
		padding-bottom: 41px;
		padding-right: 0;
		width: auto;
		float: none;
	}
	
	.busContLeft .busContStore {
		padding-bottom: 0px;
	}
	
	.busContLeft .busContStore a:hover {
		color: #000;
		border: 1px solid #aabcc2;
		background: none;
	}

	.busContRight::after {
		width: 100%;
		height: 1px;
		right: auto;
		bottom: 0;
		left: 0;
    
	}

	.busContTitle {
		margin-bottom: 28px;
	}

	.busContWord {
		margin-bottom: 30px;
		font-size: 13px;
        margin-top: 0;
	}

	.busContRight {
		width: auto;
		float: none;
        padding-left: 0;
        padding-top: 41px;
	}

	.busContRight .busContWord {
		margin-bottom: 20px;
	}

	.busContRight .busContStore {
		margin-top: 0;
	}

	.busContStoreInfo > span {
		margin-bottom: 8px;
		width: auto;
		float: none;
		display: block;
		font-size: 13px;
		text-align: center;
	}

	.busContStoreInfo a.sp {
		display: inline-block !important;
		position: relative;
	}

	.busContStoreInfo a.sp:after {
		width: 100%;
		height: 1px;
		position: absolute;
		bottom: -2px;
		left: 0;
		content: "";
		background: #404040;
	}

	.busContStoreInfo {
		margin-bottom:20px;
	}

	.busContStorePhone {
		margin-left: 0;
	}
	
	.busContStorePhone p {
		padding: 0 9px;
		width: 50%;
		float: left;
		font-size: 16px;
		text-align: right;
		box-sizing: border-box;
		letter-spacing: 1.2px;
	}

	.Android .busContStorePhone p {
		letter-spacing: .5px;
	}

	.busContStorePhone p:first-child {
		margin-right: 0;
		text-align: left;
	}
	
	.busContRight .busContStore.onlyOne {
		display: block;
	}
	
	.busContStore.onlyOne .busContStoreInfo {
		display: block;
	}

	.macSite {
		margin-bottom: 90px;
		padding: 0 25px;
		width: auto;
	}
	
	.webSite {
		margin: 0 0 20px;
		width: 100%;
	}
	
	#webSites .webSite:last-child {
		margin-bottom: 0;
	}
	
	.webSite a {
		padding: 15px 10px 17px;
		font-size: 12px;
		letter-spacing: .7px;
	}

	.webSite a:before {
		display: none;
	}

	.webSite a img {
    	margin-left: 2px;
	}

	.sns {
		width: 100%;
    	margin-top: 18px;
	}

	.sns a:hover svg {
		fill: #000;
	}
	
	.bannerTop.maskEn h2 p {
		font-size: 25px;
		line-height: 1.1;
		padding:0;
		margin-left: -6px;
		margin-right: -6px;
		word-break: normal;
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
	
	.macMess.macMessEn h3 {
		font-size: 24px;
	}
	
	.macMess.macMessEn p {
		font-size: 15px;
		line-height: 1.55;
	}
	
	.macStitEn .macWord h4 {
		font-size: 21px;
		line-height: 1.25;
	}
	
	.macPartSpecEn h4 {
		margin-right: 0;
	}
	
	.teamEn .teamWord p {
		margin-left: 0;
	}
	
	.busContactEn .busContTitle p {
		padding-left: 1%;
		line-height: 1.6;
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
		text-align: justify;
	}
	
	.busContRight .busContWord {
		padding: 0 4%;
		line-height: 1.75;
	}
	
	.busContactEn .busContStoreInfo > span {
		margin-bottom: 4px;
		font-size: 14px;
	}
	
	.busContactEn .busContStorePhone {
		margin: 0 -24px;
		text-align: center;
	}
	
	.busContactEn .busContStorePhone p {
		width: auto;
		padding: 0 9px;
		display: inline-block;
		letter-spacing: 0.5px;
		float: none;
	}
	
	.busContactEn .busContStorePhone p:first-child {
		margin-left: 0;
		padding-left: 0;
	}
	
	.busContactEn .busContStorePhone p:nth-child(2) {
		padding-right: 0;
	}
	
	.macSiteEn .webSite a {
		font-size: 14px;
		letter-spacing: 1.2px;
	}
	
	.busContactEn .busContWord,
	.busContactEn .busContWord {
		-moz-hyphens: auto;
		-ms-hyphens: auto;
		-webkit-hyphens: auto;
		hyphens: auto;
	}
}

/*------------------------------------------------------------
	machinery projects
------------------------------------------------------------*/
.bannerTop.bannerMacPro {
	background: #e7e9e9;
}

.bannerTop.bannerMacPro img {
	opacity: 1;
}

.bannerMacPro .banLeft {
	width: 57.32%;
	float: left;
}

.bannerMacPro .banRight {
	width: 42.68%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s ease .2s,visibility 1s ease .2s;
}

.loaded .bannerMacPro .banRight {
	opacity: 1;
	visibility: visible;
}

.bannerCentre {
	width: 316px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.banRight p.-roboto {
	margin-bottom: 14px;
	font-size: 16px;
	letter-spacing: .4px;
}

.macProTitle {
	margin-bottom: 46px;
}

.macProTitle h2 {
	margin-bottom: 8px;
	position: static;
	font-size: 30px;
	font-weight: 400;
	color: #000;
	opacity: 1;
	text-align: left;
	transform: none;
	letter-spacing: 3px;
}

.macProTitle span {
	padding: 2px 9px;
	display: inline-block;
	font-size: 10px;
	letter-spacing: 1.6px;
	border: 1px solid #a1a3a3;
}

.banRight p.-han-sans-400 {
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 1.8px;
}

.macProInfo {
	margin: 145px auto 0;
	padding-bottom: 3px;
	width: 800px;
	text-align: center;
}

.macProInfo > div {
	margin-bottom: 86px;
}

.macProInfo h3 {
	margin-bottom: 14px;
	font-size: 20px;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: left;
	letter-spacing: 4.2px;
}

.macProInfo h4 {
	margin-bottom: 16px;
	font-size: 17px;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight: 400;
	font-style: normal;
	text-align: left;
	letter-spacing: 2.4px;
}

.macProInfo h5 {
	margin-bottom: 18px;
	font-size: 14px;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight: 700;
	text-align: left;
	letter-spacing: 2px;
}

.macProInfo p {
	padding-top: 2px;
	margin-bottom: 53px;
	font-size: 14px;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1.87;
	text-align: left;
	letter-spacing: 1.8px;
}

.macProInfo p span {
	display: block;
}

.macProInfo p span a {
	display: inline-block;
	position: relative;
}

.macProInfo p span a:after {
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: -1px;
	left: 0;
	transition: opacity .6s ease;
	content: "";
	background: #404040;
}

.macProInfo p span a:hover {
	color: #999;
}

.macProInfo p span a:hover:after {
	opacity: 0;
}

.macProInfo > div > div {
	margin-bottom: 65px;
}

.macProInfo img {
	margin-bottom: 7px;
	max-width: 100%;
	height: auto !important;
	text-align: center;
}

.macProInfo > div > div p {
    padding-top: 4px;
    margin-bottom: 7px;
    font-size: 10px;
    text-align: center;
    letter-spacing: .8px;
}

.macProLink {
	margin: 0 auto 154px;
	width: 1050px;
	position: relative;
}

.macProLink:before {
	margin-right: 14px;
	width: 100%;
	height: 1px;
	position: absolute;
	top: 13px;
	right: 100%;
	content: "";
	background: #aabcc2;
}

.macProLink .linkTo {
	text-align: left;
}

.macProLink .linkTo a {
	letter-spacing: .7px;
}

.bannerMacProEn .macProTitle span {
	line-height: 1.3;
	letter-spacing: 0.2px;
}

.bannerMacProEn .banRight p.-Roboto-400 {
	margin-right: -2px;
	font-size: 13px;
	line-height: 1.62;
	letter-spacing: .2px;
}

.macProLink.macProLinkEn .linkTo a {
    letter-spacing: .4px;
}

.macProInfoEn.macProInfo p span {
	word-wrap: break-word;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

@media all and (min-width: 0) and (max-width: 767px) {
	.bannerMacPro .banLeft {
		width: auto;
		float: none;
	}

	.bannerMacPro .banRight {
		width: auto;
		height: auto;
		position: static;
	}

	.bannerCentre {
		padding: 45px 25px;
		width: auto;
		position: static;
		transform: none;
	}

	.banRight p.-roboto {
		margin-bottom: 10px;
		font-size: 14px;
		letter-spacing: .2px;
	}

	.macProTitle {
		margin-bottom: 33px;
	}

	.bannerSub .macProTitle h2 {
		margin-bottom: 5px;
		font-size: 24px;
		letter-spacing: 2.3px;
	}

	.macProTitle span {
		padding: 2px 8px;
		font-size: 10px;
	}

	.banRight p.-han-sans-400 {
		font-size: 13px;
		line-height: 1.75;
		letter-spacing: 2px;
	}

	.macProInfo {
		margin-top: 72px;
		padding: 0 25px 8px;
		width: auto;
	}

	.macProInfo > div {
		margin-bottom: 54px;
	}
	
	.macProInfo > div > div {
		margin-bottom: 30px;
	}

	.macProInfo h3 {
		margin-bottom: 8px;
		font-size: 18px;
		line-height: 1.55;
		letter-spacing: 2.2px;
	}

	.macProInfo h4 {
		margin-bottom: 9px;
		font-size: 15px;
		line-height: 1.6;
		letter-spacing: 2px;
	}

	.macProInfo h5 {
		margin-bottom: 9px;
		font-size: 13px;
		line-height: 1.6;
		letter-spacing: 1.2px;
	}

	.macProInfo p {
		padding-top: 5px;
		margin-bottom: 44px;
		font-size: 13px;
		line-height: 1.77;
		letter-spacing: 1.7px;
	}

	.macProInfo p span a {
		letter-spacing: 1px;
	}

	.macProInfo p span a:hover {
		color: #000;
	}

	.macProInfo p span a::after {
		bottom: -3px;
	}

	.macProInfo p span a:hover::after {
		opacity: 1;
	}

	.macProLink {
		margin-bottom: 103px;
		padding: 0 25px;
		width: auto;
	}

	.macProLink .linkTo a {
		font-size: 12px;
		letter-spacing: 1.7px;
	}

	.macProLink::before {
		margin-right: -17px;
		top: 13px;
	}
	
	.macProLink.macProLinkEn .linkTo a {
		letter-spacing: .9px;
	}
}

/*------------------------------------------------------------
	projects
------------------------------------------------------------*/
.banPro h2 {
	font-size: 36px;
	letter-spacing: 2.3px;
}

.proSelect {
	margin: 70px auto 71px;
	width: 900px;
}

.proSelect > p {
	margin-top: 5px;
	width: 600px;
	font-size: 18px;
	float: left;
	letter-spacing: 3.2px;
	display: none;
}

.proSelect > p.show {
	display: block;
}

.proSelectWord {
	padding: 0 25px 0 11px;
	width: 250px;
	height: 40px;
	position: relative;
	float: right;
	font-size: 12px;
	letter-spacing: .7px;
	background: #eef2f3 url(//cdn.xuansiwei.com/meili8437/img/common/img_select_icon.png) no-repeat center right 15px;
	background-size: 11px 5.5px;
	box-sizing: border-box;
}

.proSelectWord > p {
	padding: 0 25px 0 15px;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	letter-spacing: 1.6px;
	transform: translateY(-50%);
	box-sizing: border-box;
}

.proSelectWord select {
	width: 250px;
	height: 40px;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 1;
	font-size: 12px;
	-webkit-appearance: none;
	letter-spacing: .7px;
}

.proInfo {
	/*margin: 0 auto 86px;*/
	margin: 100px auto 86px;
	width: 975px;
}

.proList {
	margin: 0 0 21px;
	width: auto;
}

.proList li {
	padding: 0;
	margin: 0 37px 83px;
	width: 250px;
}

.proName {
	margin-bottom: 15px;
	padding: 1px 8px;
	font-size: 10px;
	letter-spacing: 1.5px;
	display: inline-block;
	border: 1px solid #b2b2b2;
}
	
.iphoneX .webSite a {
	padding-left: 20px;
	padding-right: 20px;
}

.proInfoEn .proName {
	line-height: 1.3;
	letter-spacing: 0.2px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
	border: 1px solid rgba(178,178,178,.5);
}

.proInfoEn .psListWord h4 {
	letter-spacing: 0.3px;
	font-size: 13px;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

.proInfoEn .psListWord p {
	font-size: 13px;
	line-height: 1.6;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	text-align: justify;
}

.proInfoEn .psListWord span {
	font-size: 13px;
}

.underLineEn {
	letter-spacing: .2px;
}

.proSelectEn.proSelect > p {
	font-size: 20px;
	letter-spacing: 0;
}

.proSelectEn .proSelectWord > p {
	letter-spacing: 0.2px;
}

.proSelectEn .proSelectWord select {
}

@media all and (min-width: 0) and (max-width: 767px) {
	.bannerTop.banPro h2 {
		font-size: 30px;
		letter-spacing: 2px;
	}

	.proSelect {
		margin: 50px 0;
		padding: 0 62.5px;
		width: auto;
	}
	
	.proSelectWord {
		width: 100%;
		float: none;
	}

	.proSelectWord select {
		width: 100%;
		float: none;
	}

	.proSelect > p {
		margin: 43px -48px 0;
		width: auto;
		float: none;
		font-size: 16px;
		text-align: center;
	}
	
	.proSelectWord > p {
		letter-spacing: 1.6px;
	}

	.proInfo {
		margin-top: 50px;
		margin-bottom: 63px;
		padding: 0 62.5px;
		width: auto;
	}

	.proList {
		margin-bottom: 40px;
	}

	.proList li {
		margin: 0 0 64px;
		width: auto;
		float: none;
	}
	
	.proName {
		padding-top: 2px;
		padding-bottom: 2px;
	}

	.proInfo .newsPage {
		margin: 0 -52px;
	}
	
	.proSelectEn.proSelect > p {
		font-size: 16px;
	}
}

@media all and (min-width: 320px) and (max-width: 360px) {
	.indWord h3 {
		letter-spacing: 0;
	}
	
	.busContStorePhone p {
		letter-spacing: -.5px;
	}
	
	.proSelect > p {
		letter-spacing: 2px;
	}
}

@media all and (min-width: 0) and (max-width: 360px){
	.busContactEn .busContStorePhone p{ 
		letter-spacing: .7px;
	}
}

@media all and (min-width: 0) and (max-width: 320px){
	.busContactEn .busContStorePhone p{ 
		letter-spacing: -.1px;
	}
}

@media all and (-ms-high-contrast:none){
	.sns a svg {
		transition: opacity .6s ease;
	}
	
	.sns a:hover svg {
		fill: #000;
		opacity: .5;
	}
}

.fs11{
    font-size: 11px;
}

/*------------------------------------------------------------
	En
------------------------------------------------------------*/
.macProInfoEn h3 {
	font-size: 23px;
	letter-spacing: .45px;
	line-height: 1.38;
	font-family: 'Roboto', sans-serif;
}

.macProInfoEn p {
	font-size: 13px;
	font-family: 'Roboto', sans-serif;
	letter-spacing: .14px;
	line-height: 1.63;
	word-wrap: break-word;
}

.macProInfoEn h4 {
	font-size: 18px;
	letter-spacing: .4px;
	line-height: 1.4;
	font-family: 'Roboto', sans-serif;
}

.macProInfoEn h5 {
	font-size: 15px;
	line-height: 1.58;
	letter-spacing: .25px;
	font-family: 'Roboto', sans-serif;
}

.macProInfoEn > div > div p {
	font-size: 10px;
}

@media all and (min-width: 0) and (max-width: 767px) { 	
	.macProInfoEn p {
		letter-spacing: .14px;
		line-height: 1.62;
	}
	
	.macProInfoEn h3 {
		font-size: 21px;
		line-height: 1.28;
	}
	
	.macProInfoEn h4 {
		font-size: 16px;
		letter-spacing: .3px;
		line-height: 1.3;
	}
	
	.macProInfoEn h5 {
		font-size: 14px;
		letter-spacing: .3px;
		line-height: 1.46;
	}
}