@charset "utf-8";





/* ------------------------------------------------------------
■id・class
	2つ以上の単語の場合はキャメルケースにて

■カラースキーム
	基本テキスト	#262626
------------------------------------------------------------ */





/* -------------------- common -------------------- */
body {
/*	font-family:"メイリオ","Meiryo",Osaka,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;	*/
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	font-size: 16px;
	line-height: 1.2;
	color: #000;
	background: #000;
}

/* link */
a {
	color: #4b4b4b;
	transition: all 0.5s ease-out 0s;
}
a:hover {
	opacity: 0.8;
	text-decoration: none;
	transition: all 0.2s ease-in 0s;
}

a img {
	opacity: 1;
	transition: all 0.2s ease-out 0s;
}
a:hover img {
/*	opacity: 0.8;	*/
	transition: all 0.4s ease-out 0s;
}
a:active {
	opacity: 0.8;
	transition: all 0.1s ease-out 0s;
}

/* heading */
h1 {
	font-size: 32px;
}
h2 {
	font-size: 20px;
}

/* animation */
@keyframes delayed {
	  0% { transform: translate3d(0,1px,100px); opacity:0; }
	 20% { opacity:0; }
	100% { transform: translate3d(0,0,0); opacity:1; }
}
@-webkit-keyframes delayed {
	  0% { -webkit-transform: translate3d(0,1px,0); opacity:0; }
	 20% { opacity:0; }
	100% { -webkit-transform: translate3d(0,0,0); opacity:1; }
}

img {
	animation: delayed 2s 0s 1 ease-out;
	-webkit-animation: delayed 2s 0s 1 ease-out;
}





/* -------------------- outer contents -------------------- */
#wrap {
	position: relative;
	width: 100%;
	overflow-x: hidden;
/*
	background: url(../images/img_01.jpg) no-repeat;
	background-size: cover;
*/
}
#container {
	position: relative;
	margin: 0 auto;
	width: 100%;
	min-width: 960px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	background: #f2f2f2;
	background: #fff;
	text-align: center;
	overflow: hidden;
}

.inner {
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
	min-width: 960px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.top .inner {
	max-width: 1200px;
	min-width: 1200px;
}
/*
.company .inner {
	max-width: 980px;
	min-width: 980px;
}
*/



.comingSoon:before {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	letter-spacing: 0.08em;
	position: absolute;
	display: block;
	content: "Coming Soon";
	content: "";
	top: 0;
	left: 0;
	z-index: 1;
	background: rgba(0,0,0,0.6);
	background: rgba(0,0,0,0);
	padding: 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	color: #fff;
}
.current:before {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	z-index: 1;
	background: rgba(255,255,255,0.25);
	padding: 20px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
}



/* -------------------- header -------------------- */
header {
	position: relative;
	-webkit-box-shadow: inset 0px 10px 0 0 #262626;
	box-shadow: inset 0px 10px 0 0 #262626;
	background: lightblue;	/*仮*/
	background: #ededed;
	width: 100%;
	min-width: 960px;
	height: auto;
	max-height: 400px;
	min-height: 400px;
	overflow: hidden;
}
.top header {
	-webkit-box-shadow: none;
	box-shadow: none;
	max-height: 580px;
	min-height: 580px;
}
header img {
	width: 100%;
	height: auto;
}
header .inner {
	position: relative;
	z-index: 1;
}
header .inner > a {
	position: absolute;
	top: 0;
	right: 10px;
	z-index: 1;
}



.outerBNR {
	position: absolute;
	z-index: 10;
	top: auto;
	bottom: 384px;
	left: calc(50% - 450px);
	width: 900px;
}

.outerBNR a:first-child img {
	width: 480px;
	width: 240px;
	height: auto;
	margin: 0 20px;
}

.outerBNR a:last-child img {
	width: 240px;
	height: auto;
	margin: 0 20px;
}


header h1 {
	position: absolute;
	top: 26px;
	left: -100px;
	z-index: 10;
	margin: 0 0 0 50%;
	width: 200px;
}
.top header h1 {
	top: 204px;
}

.works header {
	background: url(../images/works_mv.jpg) no-repeat center top;
	background-size: 100%;
}
.news header {
	background: url(../images/news_mv.jpg) no-repeat center center;
	background-size: 100%;
}
.csr header {
	background: url(../images/csr_mv.jpg) no-repeat center center;
	background-size: 100%;
}
.service header {
	background: url(../images/service_mv.jpg) no-repeat center top;
	background-size: 100%;
}
.company header {
	background: url(../images/company_mv.jpg) no-repeat center -100px;
	background-size: 100%;
}
.contact header {
	background: url(../images/contact_mv.jpg) no-repeat center -100px;
	background-size: 100%;
}





/* -------------------- banner -------------------- */
#banner {
	width: 100%;
	background: #e5e5e5;
	background: #f2f2f2;
	font-size: 0;
}
#banner ul {
	margin: 0 auto;

	position: relative;
	left: -640px;
	left: -512px;
	margin: 0 0 0 50%;
/*
	max-width: 1280px;
	min-width: 1024px;
*/
	width: 1024px;
}
#banner li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#banner li + li {
/*	box-shadow: inset 5px 0 0 0 #e5e5e5;	*/
	border-left: 1px solid #e5e5e5;
}
#banner a img {
	width: 100%;
	height: auto;
}

#banner li.comingSoon:before {
	padding: 90px 0 0 200px;
	padding: 75px 0 0 150px;
	font-size: 36px;
	font-size: 32px;
	text-align: left;
	color: #fff;
}


.footerBnrArea {
	width: 900px;
	margin: 0 auto;
}
.footerBnrArea ul{
	width: 800px;
/*	width: 440px;*/
	padding: 0 50px;
	position: absolute;
	bottom: 35px;
	display: flex;
	justify-content: space-between;
}

.floatBNR {
/*
	position: fixed;
	z-index: 10;
	top: 20px;
	left: 20px;
*/
}
.floatBNR > a {
	display: block;

	width: auto;
	height: auto;
	box-shadow: 0.7px 0.5px 0px 1px rgba(0,0,0,0.3);

	transition: all 0.5s cubic-bezier(0, 1, 0, 1) 0s;
	opacity: 0.9;

}
.floatBNR a:hover {
	opacity: 1;
}
.floatBNR.posGene {
	position: static;
}

.floatBNR.posGene > a {
	width: auto;
	height: 120px;
	box-shadow: 0px 0px 0px 1px rgba(0,0,0,0.3);
	opacity: 1;
}
.floatBNR img {
	width: auto;
	height: 100%;
}
.floatBNR .lightbox2 img {
    width: calc(100vw / 6 - 14px);
    max-width: 160px;
    height: auto;
}

.thisIsSmart .floatBNR .lightbox2 img {
    width: calc(100vw / 6 - 24px);
}

.floatBNR_canvas {
	position: fixed;
	z-index: 100;
	top: auto;
	bottom: 5px;
	left: 5px;
	width: calc(100vw - 28px);
	height: calc(100vh - 10px);
	background: rgba(255,255,255,0.99);
	box-sizing: border-box;
	padding: 60px 20px;

	display: none;
}
.thisIsSmart .floatBNR_canvas {
	bottom: calc((100vh - 720px) / 2);
	left: 50px;
	width: calc(100vw - 100px);
	height: 720px;
	border: 1px solid #262626;
	box-shadow: 0px 0px 0 calc(100vh - 720px) rgba(0,0,0,0.5);
}
.innerBTN {
	position: absolute;
	top: 0;
	right: 10px;
}
.moreDATA {
	position: absolute;
	top: 100px;
	right: 30px;

	width: 120px;
	height: 120px;
	border-radius: 100%;
	border: 1px solid #262626;

	font-size: 10px;
	letter-spacing: 0.08em;
	line-height: 2;
	padding: 30px 0 0;
	box-sizing: border-box;
}
.floatBNR_canvas h4 {
	margin-top: -40px;
}
.floatBNR_canvas h4 img {
	width:45%;
	height: auto;
}
.floatBNR_canvas h5 {
	padding: 20px 0;
	font-size: 18px;
	color: #262626;
	line-height: 1.5;
	letter-spacing: 0.08em;

	font-family: "Yu Mincho", "YuMincho", serif;
	font-weight: bold;
}
.floatBNR_canvas div img {
	width: 200px;
	height: auto;
}
.floatBNR_canvas h10 {
	font-size: 10px;
	line-height: 1.5;
	margin: 15px 0 0;
	width: 100%;

	font-size: 9px;
	letter-spacing: 0.2em;
}
.doubleBlock {
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: flex-start;
}
.floatBNR_canvas section {
	width: 100%;
	max-width: 375px;

	padding: 2em;
	background: #fff;
}
.base div {
	width: 960px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content:center;
}
.base div a img{
	margin: 10px 40px;
}
.base div a:last-child img{
	margin-top: 20px;
}
section.mihonnomihon {
	width: 100%;
	max-width: 240px;
	background: inherit;

	display: flex;
	flex-flow: row wrap;
	align-content: flex-start;
}
.mihonnomihon p {
	width: calc(50% - 20px);
	height: auto;
	margin: 10px;
	box-shadow: 0px 0px 0px 1px rgba(0,0,0,0.1);
}
.mihonnomihon p img {
	width: 100%;
	height: auto;
}
.floatBNR_canvas section:not(.mihonnomihon) p,
.base .floatBNR_canvas  p {
	font-size: 12px;
	letter-spacing: 0.08em;
	line-height: 2;
	text-align: justify;
	margin: 0 0 1em;

	font-family: "Yu Mincho", "YuMincho", serif;
	font-weight: bold;
	letter-spacing: 0.06em;
}
.base .floatBNR_canvas  p {
	margin: 20px auto;
	text-align: center;
}
.floatBNR_canvas section:not(.mihonnomihon) p:last-child {
	margin: 0;
}
.closeFloatBNR_canvas {
	padding: 10px;
	box-sizing: border-box;
	width: 240px;
	background: #fff;
	border: 1px solid #999;
	position: absolute;
	bottom: 10px;
	left: calc(50% - 120px);
	color: #555;
}









/* -------------------- footer -------------------- */
footer {
	width: 100%;
	position: relative;
}
.footer {
	border-top: 1px solid #e5e5e5;
	background: #262626;
	padding: 35px 0 20px;
	width: 100%;
	height: 120px;
}
.footer .inner {
	padding: 0 10px;
	text-align: left;
	overflow: hidden;
}
.footer .inner a {
	color: #fff;
}
.footer .inner a + a {
	margin: 0 0 0 10px;
	margin: 0 0 0 20px;
	margin: 0 0 0 50px;
/*	float: right;	*/
}
.footer .inner a + a + a {
	vertical-align: super;
}

.footer .inner .pagetop {
	float: right;
}
.footer .inner .copyright {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	margin: 120px 0 0;
	font-size: 10px;
	color: #fff;
}





/* ----------- << sliderOVERWRITE >> ----------- */
.bx-wrapper {
	z-index: 0;
}
.bx-wrapper .bx-viewport {
	border: none;
	box-shadow: none;
	left: 0;

	min-height: 580px;
}
.bx-wrapper .bx-viewport li {
	width: 100% !important;
}
.bx-wrapper .bx-caption {
	top: 75%;
	top: 480px;
	bottom: auto;
	font-size: 1.5em;
	background: none;
}
.bx-wrapper .bx-caption span {
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	font-size: 20px;
	text-shadow: 0 0 4px #747474;
	letter-spacing: 0.08em;
}


.bx-wrapper .bx-viewport li {
	width: auto;
	height: 580px;
	position: relative;
}
.bx-wrapper img {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	display: block;
}

@media only screen and (min-width:1440px) {
.bxslider li:nth-child(1) img{
	top: 0;
	bottom: auto;
}
.bxslider li:nth-child(2) img{
	top: 0;
	bottom: auto;
}
.bxslider li:nth-child(3) img{
	top: 0;
	bottom: auto;
}
.bxslider li:nth-child(4) img{
	top: auto;
	bottom: -180px;
}
.bxslider li:nth-child(5) img{
	top: auto;
	bottom: -140px;
}
.bxslider li:nth-child(6) img{
	top: auto;
	bottom: -100px;
}
.bxslider li:nth-child(7) img{
	top: auto;
	bottom: -110px;
}
.bxslider li:nth-child(8) img{
	top: auto;
	bottom: 0;
}
.bxslider li:nth-child(9) img{
	top: 0;
	bottom: 0;
}
.bxslider li:nth-child(10) img{
	top: 0;
	bottom: auto;
}
.bxslider li:nth-child(11) img{
	top: 0;
	bottom: auto;
}
}


/* -------------------- mainMenu -------------------- */
#mainMenu {
	background: #f2f2f2;
	position: absolute;
	top: 90px;
	width: 100%;
}
#mainMenu .inner {
	max-width: 996px;
	min-width: 996px;
}
.top #mainMenu {
	position: static;
	height: 90px;
}
#mainMenu ul {
	background: #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 0;
}
#mainMenu ul li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 192px;
	width: 20%;
	width: calc(100% / 6);
	width: 166px;
	height: auto;
}
#mainMenu ul li.facebook {
	width: calc(100% / 8 - 72px);
}
#mainMenu ul li.instagram {
	width: calc(100% / 8 - 72px);
}
#mainMenu ul li + li {
}
#mainMenu li a {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 25px 0 26px;
	padding: 25px 0 0;
	padding: 15px 0;
	width: 100%;
	height: auto;
	border-left: 1px solid #e5e5e5;
	box-shadow: inset 0 -1px 0 0 #e5e5e5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 0.16em;
	text-decoration: none;
	line-height: 1.25;
	color: #262626;
}
#mainMenu li.facebook a {
	border-left: none;
	box-shadow: none;
}

.top #mainMenu li a {
	padding: 25px 0 0;
	min-height: 90px;
	max-height: 90px;
	letter-spacing: 0.08em;
	font-size: 14px;
	line-height: 1.5;
}
#mainMenu li a span {
	font-size: 9px;
	letter-spacing: 0.08em;
}
#mainMenu li a:hover,
#mainMenu li.current a {
	box-shadow: inset 0 -90px 0 0 #262626;
	box-shadow: inset 0 -5px 0 0 #262626;
/*	color: #fff;	*/
}
#mainMenu li.facebook a:hover {
	box-shadow: none;
}
#mainMenu a span {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	display: block;
	font-size: 10px;
	color: #747474;
}
#mainMenu li span.cover {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
/*	background: blue;
	opacity: 0.8;	*/
}





#mainMenu li.comingSoon:before {
	background: rgba(0,0,0,0.7);
	padding: 24px 0 0;

	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	font-size: 15px;
	color: #fff;
}
.top #mainMenu li.comingSoon:before {
	padding: 36px 0 0;
}

#mainMenu li.contact a {
	border-right: 1px solid #e5e5e5;
}
#mainMenu li.facebook a {
	display: inline;
}
#mainMenu li.facebook a span{
	display: inline-block;
	margin: 11px 0;
	padding: 10px;
	line-height: 0;
	background: #4267B2;
}
.top #mainMenu li.facebook a span{
	margin: 27px 0;
}
.fa-facebook {
	display: inline-block;
	width: 15px;
	height: 15px;
	background: transparent url(../images/icon_fb.svg) no-repeat 50% 50%;
	background-size: contain;
	animation: delayed 2s 0s 1 ease-out;
}
#mainMenu li.instagram span{
	display: inline-block;
	width: 15px;
	height: 15px;
	margin: 11px 0;
	padding: 10px;
	line-height: 0;
	background: transparent url(../images/icon_ig.svg) no-repeat 50% 50%;
	background-size: contain;
	animation: delayed 2s 0s 1 ease-out;
}
.top #mainMenu li.instagram span{
	margin: 27px 0;
}

/* -------------------- contents -------------------- */
#contents {
	padding: 35px 0 120px;
	font-size: 0;
	text-align: left;
}
.top #contents {
	padding: 40px 0 120px;
}
.company #contents {
	padding-bottom: 0;
}
#contents .inner {
	padding: 0 10px;
}
#contents h2 {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	margin: 0 auto 40px;
	font-size: 60px;
	text-align: left;
	font-weight: 300;
	color: #262626;
	line-height: 1;
}
#contents h2 span {
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	display: block;
	font-size: 15px;
	letter-spacing: 0.2em;
	font-weight: 500;
}



/* ----- TOP ----- */
.innerBox {
	display: inline-block;
	vertical-align: top;
	width: 48%;
	width: 46%;
	width: 450px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 0;
}
.innerBox.sidebanner {
	width: 200px;
}

.innerBox + .innerBox {
	margin: 0 0 0 4.25%;
	margin: 0 0 0 40px;
}
#contents .innerBox h2 {
	margin: 0 auto 20px;
	text-align: center;
	font-size: 30px;
	line-height: 1.25;
	letter-spacing: 0.08em;
}
#contents .innerBox h2 span {
	font-size: 14px;
	color: #747474;
	font-weight: normal;
}
.innerBox article {
	overflow: hidden;
}

/* caseStudy */
.innerBox .cases {
	border: none;
	margin: 0 auto 2%;
	width: 50%;
	width: 49%;
	height: 140px;
}
.innerBox .cases + .cases {
	margin: 0;
}
.innerBox .cases:nth-of-type(2n) {
	margin: 0 0 2% 2%;
}
.innerBox .cases:nth-child(3n+2) {
/*	border: 1px solid red;	*/
	margin-bottom: 0;
}
.innerBox .cases .detail {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 20% 20px 0;
	width: 100%;
	height: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: rgba(0,0,0,0.5);
	font-size: 10px;
	color: #fff;
	opacity: 0;
	transition: all 0.4s ease-out 0s;
	text-align: center;
	line-height: 1.3;
}
.innerBox .cases a:hover .detail {
	opacity: 1;
	transition: all 0.2s ease-in 0s;
}
.innerBox .cases .detail h3 {
	margin: 10px auto 0;
}

/* news */
.innerBox.news article {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
/*	box-shadow: inset 0 -1px 0 0 #ccc;	*/
	border-bottom: 1px solid #ccc;

	height: 57px;
}
.innerBox.news article a {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	display: block;
	padding: 20px;
	width: 100%;
	font-size: 12px;
	line-height: 1.5;
	text-decoration: none;

	padding: 0 20px;
	height: 100%;
	display: flex;
	align-items: center;

}
.innerBox.news article a:hover {
	background: #f2f2f2;
}
.innerBox.news article p {
	display: inline-block;
	vertical-align: middle;
}
.innerBox.news article p + p {
/*	margin: 0 0 0 7.5%;	*/
	width: 66%;
}

.innerBox.news article p.date {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	width: 34%
}
.innerBox.sidebanner img{
	width: 90%;
	height: auto;
	margin-left:10%;
}


/* ----- CASE STUDY ----- */
.cases {
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin: 0 auto 40px;
	width: 50%;
	width: 450px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
}
.cases:nth-of-type(even) {
	margin-left: 40px;
}
.cases a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.cases a span {
	display: block;
	width: 450px;
	height: 300px;
	overflow: hidden;
}
.cases a img {
	position: relative;
	width: 100%;
	height: auto;
}
.cases a:hover img {
	opacity: 0.8;
	transform: scale(1.05);
	-webkit-transform: scale(1.05);
}
.detail {
	margin: 10px auto 0;
	font-size: 10px;
	color: #262626;
	transition: all 0.4s ease-out 0s;
	text-align: left;
	line-height: 1.3;
}
.cases a:hover .detail {
	opacity: 1;
	transition: all 0.2s ease-in 0s;
}



/* ----- NEWS/CSR ----- */
.news #contents .inner > section,
.csr #contents .inner > section {
	display: inline-block;
	vertical-align: top;
}

.news article h6 {
	font-size: 14px;
	margin: 30px auto 5px;
}

.sideArea {
	padding: 0 100px 0 0;
	padding: 0;
	width: 50px;
	width: 150px;
}
.sideArea ul li {
	position: relative;
}
.sideArea ul li span.cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.sideArea a {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	display: block;
	margin: 0 10px 0 0;
	font-size: 16px;
	line-height: 2.25;
	color: #262626;
	text-decoration: none;
}
.csr .sideArea a {
	font-size: 12px;
	line-height: 3.3;
}
.sideArea a:hover {
/*	text-decoration: underline;
	box-shadow: inset 3px 0 0 0 #262626;*/
	background: rgba(0,0,0,0.1);
	padding: 0 0 0 5px;
}
.sideArea ul li.current a {
	opacity: 0.8;
	background: rgba(0,0,0,0.2);
	padding: 0 0 0 5px;
}


.mainArea {
	padding: 0;
	max-width: 640px;
}
.mainArea article {
}
.mainArea article + article {
	margin: 60px auto 0;
	padding: 60px 0 0;
	border-top: 2px solid #262626;
}

.mainArea article h3 {
	margin: 0 auto 2em;
	font-size: 40px;
}
.mainArea article h4 {
	margin: 0 auto 0.8em;
	font-size: 30px;
}
.mainArea article h5 {
	font-size: 16px;
	line-height: 1.5;
}

.mainArea article p,
.mainArea article ul li {
	font-size: 12px;
	line-height: 2;
}
.mainArea article p.date {
	font-weight: 500;
}
.mainArea article p.half {
/*
	display: inline-block;
	vertical-align: top;
*/
	width: 50%;
	width: 300px;
}
.mainArea article p img {
	width: 100%;
	height: auto;
}
.mainArea article ul li {
	padding: 0 0 0 1.4em;
	text-indent: -1.4em;
}
.mainArea article ul li:before {
	content: "●";
	margin: 0 5px 0 0;
	color: #262626;
}
.mainArea article p + p,
.mainArea article small + p,
.mainArea article p + ul,
.mainArea article ul + p,
.mainArea article p + h5 {
	margin: 30px auto 0;
}

/*.mainArea article p.half + .half {*/
.mainArea article p.half:nth-of-type(2n) {
	margin: 30px 0 0 20px;
	margin-left: 20px;
}



.csr .mainArea article h3 {
	position: relative;
	margin: 0 auto 1em;
	padding: 25px 90px 20px 32px;
}
.csr .mainArea article h3:before,
.csr .mainArea article h3:after {
	content: "";
	position: absolute;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 20%;
	height: 75%;
}
.csr .mainArea article h3:before {
	top: 0;
	left: 0;
	border-top: 3px solid #262626;
	border-left: 3px solid #262626;
}
.csr .mainArea article h3:after {
	bottom: 0;
	right: 0;
	border-bottom: 3px solid #262626;
	border-right: 3px solid #262626;
}
.csr .mainArea article > p {
/*	padding: 0 0 50px;	*/
}
.csr .mainArea article small {
	display: block;
	font-size: 12px;
	line-height: 2;
}



.sentence {
	margin: 50px auto 0;
	padding: 47px 0 0;
	border-top: 1px solid #e6e6e6;
}
.csr .mainArea article#formaldehyde .sentence {
	margin: 0 auto;
	padding: 0;
	border-top: none;
}
.sentence + .sentence {
	margin: 47px auto 0;
}
.csr .mainArea article ul li:before {
	content: "・";
}

.csr .mainArea article .sentence .box {
	border: 4px solid #e6e6e6;
	margin: 40px auto 0;
	padding: 30px 20px 40px 25px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}



.csr .mainArea article .sentence .box >div {
	margin: 34px auto 0;
}
.csr .mainArea article .sentence .box ul li span {
	display: block;
	text-indent: 5em;
}
.csr .mainArea article .sentence .box ul li:before {
	content: "○";
}
.csr .mainArea article .sentence .box a {
	position: relative;
	display: inline-block;
	background: #ededed;
	margin: 14px auto 0;
	padding: 19px 60px 18px 27px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
}
.csr .mainArea article .sentence .box a:hover {
	background: #e6e6e6;
}
.csr .mainArea article .sentence .box a:after {
	position: absolute;
	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0 0 0 20px;
	width: 22px;
	height: 22px;
}
.csr .mainArea article .sentence .box div + div {
	margin: 36px auto 0;
}



.table {
	margin: 15px auto;
	font-size: 0;
}
.table dl {
	display: inline-block;
	vertical-align: top;
	width: 33.3%;
	font-size: 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-bottom: 1px solid #e5e5e5;
}
.table dl + dl dd {
	border-left: 1px solid #e5e5e5;
}
.table dl dt {
	background: #e5e5e5;
}
.table dl dt,
.table dl dd {
/*	padding: 24px 0;	*/
	padding: 24px 0 0;
	height: 48px;
	text-align: center;
}
.table dl dd + dd {
	border-top: 1px solid #e5e5e5;
}

.table.unique dl {
	width: 120px;
	width: 18.75%;
}
.table.unique dl:first-of-type {
	width: 160px;
	width: 25%;
}
.table.unique dl dt {
	border: none;
}
.table.unique dl:nth-of-type(2) dt {
	background: #666;
}
.table.unique dl:nth-of-type(3) dt {
	background: #999;
}
.table.unique dl:nth-of-type(4) dt {
	background: #ccc;
}



/* ----- 下層アリ ----- */
.innerContent {
/*	-webkit-box-sizing: border-box;
	box-sizing: border-box;	*/
	border: 1px solid #e5e5e5;
	border-bottom: none;
	text-align: center;

	padding-bottom: 120px;
}



/* ----- 下層NAVI ----- */
.innerContent ul {
	background: #fff;
	background: #e5e5e5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 0;
	text-align: center;
}
.innerContent ul li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 192px;
	width: 20%;
	height: auto;
/*	background: #e5e5e5;	*/
}
.innerContent li a {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 25px 0 26px;
	padding: 25px 0 0;
	padding: 15px 0;
	width: 100%;
	height: auto;
	border-left: 1px solid #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.16em;
	text-decoration: none;
	line-height: 1.25;
	color: #262626;
}
.innerContent li:first-of-type a {
	border-left: none;
}
.innerContent li a span {
	font-size: 9px;
	letter-spacing: 0.08em;
}
.innerContent li a:hover,
.innerContent li.current a {
	background: #fff;
}
.innerContent a span {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	display: block;
	font-size: 10px;
	color: #747474;
}
.innerContent li span.cover {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
/*	background: blue;
	opacity: 0.8;	*/
}
.innerContent li.comingSoon:before {
	background: rgba(0,0,0,0.7);
	padding: 24px 0 0;

	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	font-size: 15px;
	color: #fff;
}



.innerContent h3 {
	padding: 60px 0;
	font-size: 28px;
	color: #262626;
	line-height: 1.57;
	letter-spacing: 0.08em;
}
.innerContent h3 span {
	display: block;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0;
}
.innerContent article h4 {
	font-size: 40px;
	line-height: 1.25;
}
.innerContent article h5 {
	font-size: 16px;
	line-height: 1.5;
}
.innerContent article h6 {
	font-size: 16px;
	line-height: 2.375;
}
.innerContent article p {
	font-size: 12px;
	letter-spacing: 0.08em;
	line-height: 2;
}





/* 
	BUSINESS CONTENT
-------------------------------------------------- */
.service #contents {padding-bottom: 0;}
.service #contents .inner > h3 {
	margin: 0 auto 20px;
	font-size: 40px;
	text-align: center;
	font-weight: normal;
	letter-spacing: 0.08em;
}
.service #contents .inner a:hover {
	background: #e6e6e6;
}
.service .innerContent article + article {
	margin: 120px auto 0;
}
.service .innerContent article h4 {
	letter-spacing: 0.08em;
}
.service .innerContent article h4 + p,
.service .innerContent article h4 + h5,
.service .innerContent article h4 + div,
.service .innerContent article p + h5,
.service .innerContent article p + p {
	margin: 40px auto 0;
}
.service .innerContent article h5 + p {
	margin: 20px auto 0;
}
.service .innerContent article small {
	display: block;
	margin: 10px auto 0;
	font-size: 10px;
	line-height: 1.6;
}



/* --- process --- */
.flow {
	background: url(../images/service_process_bg.png) repeat-y center top;
	margin: 40px auto 0;
}
.flow h5 {
	background: #fff;
	border: 6px solid #ededed;
	display: inline-block;
	margin: 0 auto 38px;
	padding: 25px 0;
	width: 320px;
}
.flow ol {
	margin: 25px auto 0;
	padding: 0 0 40px;
	list-style: none;
	line-height: 2.375;
}
.flow ol li {
	font-size: 16px;
}
.flow ol li span {
	display: block;
	margin: -1em auto 0;
	font-size: 10px;
	line-height: 2;
}
.flow ol li span.note1 {
	position: absolute;
	top: 10px;
	right: 0;
	left: 78px;
}
.flow ol li span.note2 {
	position: absolute;
	top: -9px;
	right: 0;
	left: -238px;
}
.flow ol.nonchromium li span.note2 {
	left: -554px;
	top: -100px;
}
.flow ol li span.note4 {
	position: absolute;
	top: -9px;
	right: 0;
	left: -270px;
}
.flow ol li .arrow2 span.note4 {
	position: absolute;
	top: 7px;
	right: 0;
	left: 100px;
}
.flow ol li span.note {
	display: inline;
	vertical-align: super;
}
.flow ol li span sup{
	vertical-align: super;
}
.flow ol li{
	position: relative;
}
.flow ol li span.arrow{
	position: absolute;
	top: 20px;
	display: inline;
	padding: 0 0 0 32px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 12px;
	color: #0974a9;
}
.flow ol li span.arrow-left{
	top: 15px;
}
.flow ol li span.arrow2{
	position: absolute;
	top: 0px;
	left: 172px;
	right: 0;
	width:10em;
	display: inline;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 12px;
	color: #0974a9;
}
.flow ol .arrow::before,
.flow ol .arrow::after,
.flow ol .arrow2::before,
.flow ol .arrow2::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.flow ol .arrow::before{
	left: 8px;
	width: 16px;
	height: 0px;
	border-top: 2px solid #0974a9;
}
.flow ol .arrow2::before{
	left: 8px;
	width: 16px;
	height: 2px;
	background: #0974a9;
}
.flow ol .arrow-right::after{
	left: 16px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.flow ol .arrow-left::after{
	left: 8px;
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #0974a9;
	border-left: 2px solid #0974a9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.flow ol .arrow-up::before{
	left: -91px;
	top: -16px;
	width: 20px;
	height: 28px;
	background: none;
	border-top: 2px solid #0974a9;
	border-left: 2px solid #0974a9;
	border-bottom: 2px solid #0974a9;
	border-radius: 17px 0 0 17px;
}
.flow ol .chromium-type .arrow-up::before{
	height: 40px;
}
.flow ol .arrow-up::after{
	top: -46px;
	left: -76px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.flow ol .chromium-type .arrow-up::after{
	top: -58px;
}

.flow ol .chromium-type .arrow-up::before{
	left: -105px;
}
.flow ol .chromium-type .arrow-up::after{
	left: -90px;
}
.flow ol .arrow-downleft::before{
	width: 34px;
	height: 14px;
	border-bottom: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	background: none;
	left: 6px;
	border-radius: 17px 0;
	top: 18px;
	margin: 0;
}
.flow ol .arrow-downleft::after{
	top: 29px;
	left: 5px;
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #0974a9;
	border-left: 2px solid #0974a9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: 0;
}
.flow ol .arrow-rightdown::before{
	width: 34px;
	height: 14px;
	border-top: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	background: none;
	left: 5px;
	border-radius: 0 17px;
	top: -10px;
}
.flow ol .arrow-rightdown::after{
	top: -4px;
	left: 36px;
	width: 6px;
	height: 6px;
	margin: 0;
	border-top: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.flow ol .arrow-leftup::before{
	width: 180px;
	height: 100px;
	top: -80px;
	left: -250px;
	border-top: none;
	border-bottom: 2px solid #0974a9;
	border-left: 2px solid #0974a9;
	border-radius: 0 0 0 17px;
	background: none;
}
.flow ol .arrow-upright::before{
	width: 21px;
	height: 30px;
	top: -210px;
	left: -250px;
	border-top: 2px solid #0974a9;
	border-bottom: none;
	border-left: 2px solid #0974a9;
	border-radius: 17px 0 0 0;
	background: none;
}
.flow ol .arrow-upright::after{
	top: -239px;
	left: -234px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #0974a9;
	border-right: 2px solid #0974a9;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.flow ol li.chromium-type {
	display: flex;
	background: #fff;
	width: 640px;
	margin: 0 auto;
}
.flow ol li.chromium-type ol{
	background: url(../images/service_process_bg.png) repeat-y center top;
	display: inline-block;
	position: relative;
	width: 320px;
}
.flow ol li.chromium-type ol::before,
.flow ol li.chromium-type ol::after {
	content: '';
	position: absolute;
	display: inline-block;
	width: 160px;
	height: 6px;
	background-color: #ededed;
}
.flow ol li.chromium-type ol.chromium::before {
	top: 0px;
	left: 160px;
}
.flow ol li.chromium-type ol.nonchromium::before {
	top: 0px;
	left: 0px;
}
.flow ol li.chromium-type ol.chromium::after {
	bottom: 0px;
	left: 160px;
}
.flow ol li.chromium-type ol.nonchromium::after {
	bottom: 0px;
	left: 0px;
}
.flow ol li:nth-child(9) {
	padding-bottom: 30px;
}
.flow ol li ol.chromium,
.flow ol li ol.nonchromium {
	margin:0;
	padding:30px;
}
.flow ol li ol.chromium span.type,
.flow ol li ol.nonchromium span.type {
	font-size: 14px;
	font-weight: bold;
	position: absolute;
	top: -42px;
	
}
.flow ol li ol.chromium span.type {
	left: 95px;
}
.flow ol li ol.nonchromium span.type {
	right:0;
}
.flow ol li ol.nonchromium span.type span{
	display:inline;
	font-size: 12px;
	font-weight: normal;
}
.flow small + p {
	margin: 80px auto 0;
}
.flow small + h6,
.flow h6 + p {
	margin: 50px auto 0;
}

.flow .flowWrap {
	background: #fff;
	margin: 75px 60px 0;
	padding: 20px 34px 32px;
	border: 6px solid #ededed;
}
.flow .flowWrap h5 {
	margin: 0 auto 20px;
	padding: 0;
	border: none;
}
.service .innerContent article .flow .flowWrap p + p {
	margin: 2px auto 0;
}
.flow .flowWrap p img {
	width: 100%;
	height: auto;
}
.flow_note_area ul {
	width: 360px;
	background: #fff;
	border:2px solid #ededed;
	margin-left: 550px;
	margin-bottom: 40px;
	padding:10px 40px 10px 10px;
}
.flow_note_area ul li {
	font-size: 10px;
	display: block;
	width: 100%;
	text-align: left;
	line-height: 1.6em;
	padding-left: 26px;
	text-indent: -26px;
}
.service .inner .flow a {
	position: relative;
	display: inline-block;
	background: #ededed;
	margin: 73px auto 0;
	padding: 40px 120px;

	-webkit-box-sizing: border-box;
	box-sizing: border-box;
/*
	width: 480px;
	padding: 40px 0;
*/

	font-size: 16px;
	line-height: 1.625;
	text-align: center;
	text-decoration: none;
}
/*
.service .inner .flow a:hover {
	background: #e6e6e6;
}
*/
.service .inner .flow a:after {
	position: absolute;
	top: 39px;
	right: 30px;
	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 39px;
	margin: 0 0 0 20px;
	width: 39px;
	height: 39px;
}
.service .inner .flow a span {
	font-size: 11px;
}



/* --- inspect --- */
.red {
	color: #cb0133;
}

.service .innerContent.inspect article {
	padding: 0 50px;
}
.service .innerContent.inspect article a {
	color: #448aca;
}
.service .innerContent.inspect article a:hover {
	background: none !important;
}
.service .innerContent.inspect article + article {
	margin: 200px auto 0;
	margin: 100px auto 0;
}



.service .innerContent.inspect .table {
	margin-bottom: 30px;
}
.service .innerContent.inspect .table.insType dl {
/*	width: 50%;	*/
	padding: 0 150px;
	padding: 0 99px;
	width: 100%;
}
.service .innerContent.inspect .table dl dt {
	background: #cdcdcd;
	padding-left: 88px;
	height: 40px;
	text-align: left;
}
.service .innerContent.inspect .table dl:nth-child(2) dt {
	border-left: 1px solid #e5e5e5;
}
.service .innerContent.inspect .table dl dd {
	padding-left: 88px;
	height: 40px;
	text-align: left;
}



.service .innerContent.inspect .table.insType {}
.service .innerContent.inspect .table.insType dd {
	padding: 0;
	height: auto;
}
.service .innerContent.inspect .table.insType dd a {
	display: block;
	padding: 24px 0 24px 88px;
	text-decoration: none;
	color: inherit;
}
.service .innerContent.inspect .table.insType dd a:hover {
	background: #f2f2f2 !important;
}



.exam {}
.exam img {
	width: 100%;
	height: auto;
}
.exam + .exam {margin: 90px auto 0;}
.service .innerContent.inspect article .exam h5 {
	font-size: 20px;
	letter-spacing: 0.08em;
}

.exam.vertical {}
.exam.vertical ul {
	position: relative;
	padding: 0 80px;
	overflow: hidden;
}
.exam.vertical ul li {
	display: block;
	width: 330px;
}
.exam.vertical ul li + li {
	margin: 2% 0 0;
}
.exam.vertical ul li:last-child {
	position: absolute;
	top: 0;
	right: 80px;
	margin: 0;
}



.exam h5 span {
	display: block;
	font-size: 60px;
	font-style: italic;
}
.exam ul {
	background: transparent;
}
.exam ul li {
	display: inline-block;
	width: auto;
	box-sizing: border-box;
}
.exam ul li + li {
	margin: 0 0 0 9px;
	margin: 0 0 0 1.0%;
}
.exam:nth-of-type(4) ul li + li,
.exam:nth-of-type(5) ul li + li {
	margin: 0 0 0 5%;
}
.exam h5 + ul,
.exam p + ul,
.exam ul + p,
.exam small + p {
	margin: 30px auto 0;
}

#step1.exam .table {
	padding: 0 100px;
}
#step1.exam .table dl {
	border-top: 1px solid #e5e5e5;
	width: 33.3%;
}
#step1.exam .table dd {
	padding-left: 40px;
}
#step1.exam .table dt {
	background: #fff;
	padding: 60px 0 0;
	height: auto;
	height: 69px;
	text-align: center;
}

.exam > div {
	padding: 20px 0 40px;
}
.exam dl {
	display: inline-block;
	margin: 20px auto 0;
	font-size: 12px;
	line-height: 2;
}
.exam dl dt {}
.exam dl dd {
	text-align: left;
}




/* --- toning --- */
.innerContent.toning h4 {
	position: relative;
/*	letter-spacing: 0.08em;	*/
}
.innerContent.toning article + article {
	margin: 120px auto 0;
}
.innerContent.toning article:first-of-type h4:after {
	content: "";
	background: url(../images/service_toning-01.png) no-repeat center top;
	background-size: contain;
	position: absolute;
	top: -10px;
	left: 274px;
	width: 100%;
	height: 100%;
}
.innerContent.toning article .colorant div {
	display: inline-block;
	width: 360px;
	vertical-align: top;
	padding: 120px 0 0;
}
.innerContent.toning .colorant:first-of-type div {
	padding: 90px 0 0;
}
.innerContent.toning .colorant div h5 {
	margin: 0 auto 58px;
}
.innerContent.toning article a {
	position: relative;
	display: inline-block;
	background: #ededed;
	margin: 100px auto 0;
	padding: 19px 60px 18px 27px;
	width: 315px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.innerContent.toning article a:after {
	position: absolute;
	right: 22px;

	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0;
	width: 22px;
	height: 22px;
}



/* --- materials --- */
.service .innerContent.materials {
	padding-bottom: 220px;
}
.service .innerContent.materials article + h3 {
	margin: 80px auto 0;
}
.service .innerContent.materials article + article {
	margin: 100px auto 0;
}
.service .innerContent.materials .table {
	border-top: 1px solid #e5e5e5;
	margin: 30px 150px 0;
	padding: 0;
}
.service .innerContent.materials .table + .table {
	margin: 0 150px;
}
.service .innerContent.materials .table:last-of-type {
	border-bottom: 1px solid #e5e5e5;
}
.service .innerContent.materials .table > p {
	padding: 0 1em 0 0;
	width: 100%;
	text-align: right;
	font-size: 20px;
	line-height: 3;
	font-weight: bold;
}
.service .innerContent.materials article:nth-of-type(3) .table > p {
	padding: 0 2em 0 0;
	width: 30%;
	font-size: 12px;
	line-height: 5;
}
.service .innerContent.materials .table > p,
.service .innerContent.materials .table > div {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.service .innerContent.materials article:nth-of-type(3) div {
	width: 70%;
}
.service .innerContent.materials .table > p + div {
	border-left: 1px solid #e5e5e5;
}
.service .innerContent.materials .table > div p {
	padding: 0 0 0 40px;
	text-align: left;
	line-height: 5;
}
.service .innerContent.materials article:nth-of-type(3) div p {
	padding: 0 0 0 20px;
	overflow: auto;
	overflow: hidden;
}
.service .innerContent.materials article:nth-of-type(3) div p img {
/*
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 100px;
*/
	float: right;
	padding: 15px 0;
}
.service .innerContent.materials div p small {
	clear: both;
	display: block;
	margin: 0 auto 15px;
	font-size: 11px;
}
.service .innerContent.materials div p small strong {
	color: #cb0133;
}
.service .innerContent.materials .table > div p + p {
	margin: 0;
	border-top: 1px solid #e5e5e5;
}

.service .innerContent.materials article .table + p {
	margin: 24px auto 0;
	font-size: 20px;
	line-height: 1.2;
}

.service .innerContent.materials article > a {
	position: relative;
	display: block;
	background: #ededed;
	margin: 80px auto 0;
	padding: 19px 60px 18px 27px;
	width: 320px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.service .innerContent.materials article a + a {
/*	position: relative;	*/
	margin: 32px auto 110px;
}
.service .innerContent.materials article > a:after {
	position: absolute;
	right: 22px;

	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0;
	width: 22px;
	height: 22px;
}
.service #contents .inner .exclusive a:hover {
	background: none;
	opacity: 0.8;
}

.service .innerContent.materials .table > div p span {
	display: block;
	margin: -3em 0 0;
}
.service .innerContent.materials .qualicoat h5 {
	font-size: 24px;
}



/* license */
#license {}
#license > p:first-of-type {
	width: 320px;
}
#license > p:first-of-type img {
	width: 100%;
	height: auto;
}
.licenseBox {
	margin: 50px 150px 0;
	font-size: 0;
	text-align: left;
}
.license {
	display: inline-block;
	vertical-align: top;
	margin: 0 auto 30px;
	width: 240px;
}
.license:nth-child(2n) {
	margin: 0 0 30px 150px;
}
.license img {
	width: 100%;
	height: auto;
}
.license h6 {
	margin: 30px auto;
	margin: 20px auto 10px;
	font-size: 16px;
}
.license p {
	font-size: 12;
	line-height: 1.5;
}
.service .innerContent.materials article .license p + p {
	margin: 0;
}
.license.noImane:before {
	font-family:'AvenirNextLTW02-Regular',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic","Lucida Grande","Lucida Sans Unicode",verdana,Sans-Serif;
	display: block;
	content: "No Image";
	color: #c0c0c0;
	background: #ededed;
	width: 240px;
	height: 320px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	padding: 140px 0 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#license .license:first-child h6{
	letter-spacing: -0.03em;
}



/* --- maintenance --- */
.service .innerContent.maintenance {
	padding-bottom: 220px;
}
.service .innerContent.maintenance > p {
	margin: 60px auto 50px;
}
.service .innerContent.maintenance article p + div {
	margin: 80px auto 0;
}
.service .innerContent.maintenance article ul {
	background: #fff;
	margin: 40px 150px 0;
	text-align: left;
}
.service .innerContent.maintenance article ul li {
	padding: 0 0 0 76px;
	width: auto;
	font-size: 20px;
/*	font-weight: bold;	*/
	line-height: 1.3;
	letter-spacing: 0.08em;
}
.service .innerContent.maintenance article ul li:before {
	content: "";
/*	display: inline-block;
	vertical-align: middle;	*/
	display: block;
	float: left;
	margin: -10px 36px 0 0;
	margin: -10px 36px 0 -76px;
	background: url(../images/icon_check.png) no-repeat;
	width: 38px;
	height: 50px;
}
.service .innerContent.maintenance article ul li + li {
	margin: 40px auto 0;
}

.service .innerContent.maintenance article .example + .example {
	margin: 30px auto 0;
}
.service .innerContent.maintenance article .example div {
	position: relative;
	display: inline-block;
	width: 400px;
	height: auto;
}
.service .innerContent.maintenance article .example div + div {
	margin: 0 0 0 20px;
}
.service .innerContent.maintenance article .example div h5 {
	font-size: 30px;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.3;
}
.service .innerContent.maintenance article .example div h5 span {
	display: block;
	font-size: 12px;
	line-height: 1.67;
}
.service .innerContent.maintenance article .example div p {
	background: #1d2b45;
	margin: 5px auto 0;
	max-height:280px;
	overflow: hidden;
}
.service .innerContent.maintenance article .before:after {
	position: absolute;
	bottom: 40%;
	bottom: 32%;
	right: -50px;
	content: " ";
	margin: 0;
	width: 0;
	height: 0;
	border-bottom: 30px solid transparent;
	border-top: 30px solid transparent;
	border-left: 20px solid #231815;
	border-right: 30px solid transparent;
}
.service .innerContent.maintenance article > div p img {
	width: 100%;
	height: auto;
}



.innerContent.maintenance article a {
	position: relative;
	display: inline-block;
	background: #ededed;
	margin: 100px auto 0;
	padding: 19px 60px 18px 27px;
	width: 315px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.innerContent.maintenance article a:after {
	position: absolute;
	right: 22px;
	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0;
	width: 22px;
	height: 22px;
}




/* COMPANY
-------------------------------------------------- */
/* --- about --- */
.company .innerContent.about article {
	overflow: hidden;
}
.company .innerContent.about article + article {
	margin: 150px auto 0;
}
/*	.company .innerContent.about article + article + article h4 {
.company .innerContent.about article:last-of-type h4 {	*/
.company .innerContent article:last-of-type h4 {
	letter-spacing: 0.08em;
}
.company .innerContent.about article div {
/*
	display: inline-block;
	vertical-align: top;
	width: 400px;
	width: 300px;
*/
	text-align: left;
}
.company .innerContent.about article div.rs {
	float: left;
	margin: 0 40px 0 0;
	width: 300px;
}
.company .innerContent.about article div + div {
	padding: 0 10px;
/*
	margin: 0 0 0 40px;
	width: 300px;
	width: auto;
*/
}
.company .innerContent.about article div img {
	width: 100%;
	height: auto;
}
.company .innerContent.about article div h4 + p {
	margin: 45px auto 65px;
}
.company .innerContent.about article div p img {
	margin: 0 0 0 28px;
	margin: 0 0 0 7%;
	width: 140px;
	height: auto;
}

.company .innerContent article p.signature {
	text-align: right;
}


/* h3 - bracket */
.innerContent h3.bracket {
	position: relative;
	display: inline-block;
	margin: 0 auto;
	padding: 14px 25px;
	font-family: 'リュウミン M-KL','Ryumin Medium K',Serif;
	font-size: 20px;
}
.innerContent h3.bracket:before,
.innerContent h3.bracket:after {
	content: "";
	position: absolute;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 30%;
}
.innerContent h3.bracket:before {
	top: 0;
	left: 0;
	border-top: 3px solid #262626;
	border-left: 3px solid #262626;
}
.innerContent h3.bracket:after {
	bottom: 0;
	right: 0;
	border-bottom: 3px solid #262626;
	border-right: 3px solid #262626;
}
.innerContent h3.bracket img {
	display: block;
}



/* compliance */
.innerContent.about h3.bracket {
	margin: 150px auto 66px;
}
.company .innerContent.about article > p {
	margin: 50px auto 0;
	padding: 0 160px;
	text-align: left;
}



/* ----- overview ----- */
.company .innerContent.overview .table {
	border-top: 1px solid #e5e5e5;
	margin: 0 150px;
	padding: 0;
}
.company .innerContent.overview .table dl {
	width: 100%;
	font-size: 0;
}
.company .innerContent.overview .table > dl dt,
.company .innerContent.overview .table > dl dd {
	background: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0;
	height: auto;
	line-height: 5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.overview .table dl dt {
	padding: 0 24px 0 0;
	width: 30%;
	font-size: 12px;
	text-align: right;
	font-weight: bold;
}
.company .innerContent.overview .table dl dd {
	border-left: 1px solid #e5e5e5;
	padding: 0 0 0 20px;
	width: 70%;
	text-align: left;
	font-size: 12px;
}
.company .innerContent.overview .table dl dd dl {
	border: none;
	line-height: 5;
	padding: 20px 0 0;
}
.company .innerContent.overview .table dl dd dl + dl {
	padding: 40px 0 20px;
}
.company .innerContent.overview .table dl dd dl dt,
.company .innerContent.overview .table dl dd dl dd {
	display: block;
	padding: 0;
	width: 100%;
	text-align: left;
	font-weight: normal;
	border: none;
	line-height: 1.33;
	line-height: 1.5;
}
.company .innerContent.overview .table dl dd dl dd span {
	display: block;
	text-indent: 2.5em;
}
.company .innerContent.overview article > a {
	position: relative;
	display: block;
	background: #ededed;
	margin: 60px auto 0;
	padding: 19px 60px 18px 27px;
	width: 320px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.overview article > a:after {
	position: absolute;
	right: 22px;

	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0;
	width: 22px;
	height: 22px;
}

.company .innerContent.overview .table dl.customer {}
.company .innerContent.overview .table dl.customer dd ul {
	background: none;
	border: none;
	text-align: left;
	font-size: 0;
	padding: 12px 0;
}
.company .innerContent.overview .table dl.customer dd ul li {
	display: inline-block;
	vertical-align: top;
	padding: 5px;
	width: 33.3%;
	width: 50%;
	font-size: 12px;
	line-height: 2;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.overview .table dl.customer.company dd ul li:last-child {
	width: 66.6%;
	width: 100%;
	text-align: right;
}

/* qualicoat */
.company .innerContent.overview .qualicoat p {
	font-size: 24px;
	line-height: 1.5;
}



/* iso */
.innerContent.overview h3.bracket {
	margin: 210px auto 66px;
}
.company .innerContent.overview article > p {
	margin: 50px auto 0;
	padding: 0;
	text-align: center;
}



/* ----- ir/history ----- */
.company .innerContent.history {
	padding-bottom: 215px;
}
.company .innerContent.history .table {
	border-top: 1px solid #e5e5e5;
	margin: 30px 150px 0;
	padding: 0;
}
.company .innerContent.history .table dl {
	width: 100%;
	font-size: 0;
}
.company .innerContent.history .table > dl dt,
.company .innerContent.history .table > dl dd {
	background: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0;
	height: auto;
	line-height: 5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.history .table dl dt {
	padding: 0 24px 0 0;
	width: 30%;
	font-size: 12px;
	text-align: right;
	font-weight: bold;
}
.company .innerContent.history .table dl dd {
	border-left: 1px solid #e5e5e5;
	padding: 0 0 0 20px;
	width: 70%;
	text-align: left;
	font-size: 12px;
}
.company .innerContent.history .table.ir dl dd a {
	position: relative;
	display: block;
	color: #0068b7;
}
.company .innerContent.history .table dl dd a:after {
	content: "";
	position: absolute;
	top: 15px;
	right: 0;
	width: 50px;
	height: 30px;
	background-size: 100%;
}
.company .innerContent.history .table dl dd.formatJPG a:after {
	background: url(../images/icon_jpg.png) no-repeat;
}
.company .innerContent.history .table dl dd.formatPDF a:after {
	background: url(../images/icon_pdf.png) no-repeat;
}

.innerContent.history h3.bracket {
	margin: 150px auto 0;
}

.company .innerContent.history article.historyTable .table {
	margin: 75px 150px 0;
}
.company .innerContent.history article.historyTable .table + .table {
	margin-top: 0;
}
.company .innerContent.history article.historyTable .table:last-of-type {
	border-bottom: 1px solid #e5e5e5;
}
.company .innerContent.history article.historyTable .table dl {
	border: none;
	width: 25%;
}
.company .innerContent.history article.historyTable .table dl + dl {
	width: 10%;
}
.company .innerContent.history article.historyTable .table dl + dl + dl {
	width: 65%;
}
.company .innerContent.history article.historyTable .table dl dt,
.company .innerContent.history article.historyTable .table dl dd {
	padding: 0;
	width: 100%;
	text-align: center;
	line-height: 5;
	font-weight: normal;
}
.company .innerContent.history article.historyTable .table dl + dl dd {
	border-left: none;
}
.company .innerContent.history article.historyTable .table dl + dl + dl dd {
	border-left: 1px solid #e5e5e5;
	padding: 0 0 0 20px;
	text-align: left;
}
.company .innerContent.history article.historyTable .table dl + dl + dl dd.multi {
	padding: 1em 0 1em 20px;
	line-height: 1.5;
}
.company .innerContent.history article.historyTable .table dl + dl + dl dd.triple {
	padding: 0.25em 0 0.25em 20px;
	line-height: 1.5;
}



/* ----- recruit ----- */
.company .innerContent.recruit {
	padding-bottom: 183px;
}
.company .innerContent.recruit .table {
	border-top: 1px solid #e5e5e5;
	margin: 0 150px;
	padding: 0;
}
.company .innerContent.recruit .table dl {
	width: 100%;
	font-size: 0;
}
.company .innerContent.recruit .table > dl dt,
.company .innerContent.recruit .table > dl dd {
	background: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0;
	height: auto;
	line-height: 5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.recruit .table dl dt {
	padding: 0 24px 0 0;
	width: 30%;
	font-size: 12px;
	text-align: right;
	font-weight: bold;
}
.company .innerContent.recruit .table dl dd {
	border-left: 1px solid #e5e5e5;
	padding: 0 0 0 20px;
	width: 70%;
	text-align: left;
	font-size: 12px;
}
.company .innerContent.recruit .table dl dd dl {
	border: none;
	line-height: 5;
	padding: 20px 0 0;
	margin: 0 auto 20px;
	width: 100%;
}
.company .innerContent.recruit .table dl dd dl + dl {
	margin: 0 auto;
	padding: 20px 0;
}
.company .innerContent.recruit .table dl dd dl dt,
.company .innerContent.recruit .table dl dd dl dd {
	padding: 0;
	width: auto;
	text-align: left;
	font-weight: normal;
	border: none;
	line-height: 1.5;
}
.company .innerContent.recruit .table dl dd dl dt {
	width: 25%;
}
.company .innerContent.recruit .table dl dd dl dd {
	width: 75%;
}
.company .innerContent.recruit .table dl dd dl dd span{
	letter-spacing: -0.12em;
}

.company .innerContent.recruit .table + p,
.company .innerContent.recruit .clueArea + p,
.company .innerContent.recruit #voice + p {
	margin: 36px auto 0;
	font-size: 12px;
}
.company .innerContent.recruit article > a {
	position: relative;
	display: block;
	background: #ededed;
	margin: 60px auto 0;
	padding: 19px 60px 18px 27px;
	width: 320px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.recruit article > a:after {
	position: absolute;
	right: 22px;

	content: "";
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 22px;
	margin: 0;
	width: 22px;
	height: 22px;
}



/* 201610追加部分 
 ----- voice ----- */
#voice {
	margin: 30px auto 60px;
	margin: 0 auto;
	padding: 20px 0 0;
}
p + #voice,
.table + #voice {
	margin: 60px auto 0;
	padding: 20px 0 0;
}
#voice h4 {
	font-size: 20px;
	font-size: 24px;
	font-size: 40px;
}
#voice ul {
	margin: 20px auto 0;
	border-top: 1px solid #e5e5e5;
}
#voice li {
	border: none;
	width: 16.667%;
}
#voice a {
	position: relative;
	display: block;
	background: #ededed;
	margin: 0 auto;
	width: auto;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#voice a:hover,
#voice li.on a {
	background: #fff;
}
#voice li.on a:before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}
#voice a:after {
	display: none;
}



/* clueArea
---------------------------------------- */
.clueArea {
	display: none;
	margin: 50px auto 0;
	margin: 30px auto 0;
	margin: 2px auto 0;
	font-size: 12px;
	line-height :1.85;
	text-align: left;
}
.clueArea > .clueTop {
	margin: 50px auto 0;
	padding: 0 150px;
	text-align: right;
}
.innerContent .clueArea h4 {
	margin: 0 auto 20px;
	text-align: center;
	font-size: 28px;
	font-size: 24px;
}
.clueArea > .clueTop a {
	display: inline-block;
}
.company .innerContent.recruit article .clueArea > .clueTop a:after {
	content: "";
	position: static;
	display: inline-block;
	vertical-align: middle;
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 18px;
	margin: 0 0 0 5px;
	width: 18px;
	height: 18px;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.scene {
	margin: 20px auto 0;
	margin: 0 auto;
	height: 200px;
	height: 350px;
	height: 400px;
	overflow: hidden;

	height: 300px;
	height: 250px;
}
.scene img {
	position: relative;
	width: 100%;
	height: auto;
}
#clue2 .scene img {
	top: -100px !important;
}

.clue {
	margin: 30px 70px 0;
	padding: 20px 80px;
	overflow: hidden;
	border-bottom: 1px solid #e5e5e5;
	background: #e5e5e5;
	position: relative
}
.clue.ac .clueInfo:after {
	content: "";
	position: absolute;
	top: calc(50% - 15px);
	right: 25px;
	display: inline-block;
	vertical-align: middle;
	background: url(../images/arrow_next.png) no-repeat;
	background-size: 30px;
	width: 30px;
	height: 30px;
	transition: .7s ;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.clue.ac.open .clueInfo:after {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}

.clue > div {
	display: inline-block;
	vertical-align: top;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cluePhoto {
	overflow: hidden;
	width: 200px;
	height: 200px;

	border-radius: 100px;
	width: 150px;
	height: 150px;
	animation: delayed 2s 0s 1 ease-out;
	-webkit-animation: delayed 2s 0s 1 ease-out;
}
.cluePhoto img {
	position: relative;
	width: 100%;
	height: auto;
}
.clue > div + div {}
.clueInfo {
	margin: 0 0 0 20px;
/*	width: 700px;	*/
}
.clueInfo dl {
	line-height: 1.67;
}
.clueInfo dt,
.clueInfo dd {
	display: inline-block;
}
.clueInfo dt {
	min-width: 60px;
}
.clueInfo dd {
	margin: 0 0 0 20px;
	font-size: 16px;
	font-size: 14px;

	font-size: 30px;
	font-size: 28px;
	letter-spacing: 0.28rem;
	letter-spacing: 0.25rem;
}
.clueInfo dl.two-line dt {
	line-height: 6em;
	vertical-align: top;
}
.clueInfo dl.two-line dd {
    line-height: 1.2em;
}
.clueQA {
	border: 1px solid #e5e5e5;
	margin: 0 150px;
	padding: 0 70px 20px;
	margin: 0 70px;
}
.innerContent .clueQA h5 {
	border-bottom: 1px solid #e5e5e5;
	padding: 0 0 10px;
	text-align: center;
	font-size: 20px;
}
.clueQA > div {
	margin: 20px auto 0;
}
.clueQA dt,
.clueQA dd {
	display: inline-block;
	vertical-align: top;
	vertical-align: middle;
	max-width: 600px;
	max-width: 570px;
	max-width: 560px;
	font-size: 14px;
}

.clueQA dt {
	margin: 0;
	margin: 0 10px 0 0;
	min-width: 20px;
	min-width: 60px;
	font-size: 60px;
	font-size: 30px;
	font-size: 20px;
	font-style: italic;
}




/* スマホ・タブレットで自動的にa要素に置き換わるための対処 */
.company .innerContent.recruit article dd a {
	display: inline;
	background: none;
	margin: 0;
	padding: 0;
	text-decoration: underline;
}
.company .innerContent.recruit article dd a:after {
	background: none;
}







/* --- links --- */
.company .innerContent.links {
	padding-bottom: 250px;
}
.company .innerContent.links .table {
	border-top: 1px solid #e5e5e5;
	margin: 30px 150px 0;
	padding: 0;
}
.company .innerContent.links .table + .table {
	margin: 0 150px;
}
.company .innerContent.links .table:last-of-type {
	border-bottom: 1px solid #e5e5e5;
}
.company .innerContent.links .table > p {
	padding: 0 30px 0 0;
	width: 100%;
	text-align: right;
	line-height: 5;
	font-weight: bold;
}
.company .innerContent.links .table > p,
.company .innerContent.links .table > div {
	display: inline-block;
	vertical-align: top;
	width: 70%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.company .innerContent.links .table > p {
	width: 30%;
}
.company .innerContent.links .table > p + div {
	border-left: 1px solid #e5e5e5;
}
.company .innerContent.links .table > div p {
	padding: 0 0 0 20px;
	text-align: left;
	line-height: 5;
}
.company .innerContent.links .table > div p + p {
	margin: 0;
	border-top: 1px solid #e5e5e5;
}
.company .innerContent.links article .table + p {
	margin: 24px auto 0;
	font-size: 20px;
	line-height: 1.2;
}
.company .innerContent.links .table > div p a {
	color: #448aca;
}
.company .innerContent.links .table > div small {
	border-top: 1px solid #e5e5e5;
	display: block;
	padding: 0 0 0 20px;
	font-size: 10px;
	text-align: left;
	line-height: 5;
}
/*
.company .innerContent.links article a {
	position: relative;
	display: block;
	background: #ededed;
	margin: 80px auto 0;
	padding: 19px 60px 18px 27px;
	width: 320px;
	font-size: 14px;
	line-height: 1.85;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
*/



/* COMPANY
-------------------------------------------------- */
.contact .innerContent {
	border: none;
	padding-bottom: 170px;
}
.contact .innerContent article + article {
	margin: 120px auto 0;
}
.contact .innerContent article h3 {
	padding: 0;
}
.contact .innerContent article .table {
	border-top: 1px solid #e5e5e5;
	margin: 30px 150px 0;
	padding: 0;
}
.contact .innerContent article .table dl {
	width: 100%;
	font-size: 0;
}
.contact .innerContent article .table > dl dt,
.contact .innerContent article .table > dl dd {
	background: #fff;
	display: inline-block;
	vertical-align: top;
	padding: 0;
	height: auto;
	line-height: 5;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.contact .innerContent article .table dl dt {
	padding: 0 24px 0 0;
	width: 30%;
	font-size: 12px;
	text-align: right;
	font-weight: bold;
}
.contact .innerContent article .table dl dd {
	border-left: 1px solid #e5e5e5;
	padding: 0 0 0 20px;
	width: 70%;
	text-align: left;
	font-size: 12px;
}
.contact .innerContent article .table dl dd span {
	display: inline-block;
	vertical-align: middle;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1;
}
.contact .innerContent article .table + p {
	margin: 20px auto 0;
}
.contact .innerContent article .map {
	margin: 40px auto 0;
	width: 100%;
}
.contact .innerContent article .map iframe {
	width: 100%;
	height: auto;
	min-height: 440px;
}
