/*
html, input, textarea, select, button {
	font-weight: 400
}
*/
html {
/*	color: #282828;
	background: #e5e5e5;
	font-size: 16px;
	line-height: 1.6;*/
	overflow-wrap: break-word
}
/*
@media only screen and (max-width: 767px) {
	html {
		font-size: 14px
	}
}
*/
/*
body {
	color: #282828;
	background: #f3f3f4;
	margin: 0;
	overflow: hidden
}
*/
/*
@media only screen and (max-width: 767px) {
	body {
		position: relative;
		-webkit-appearance: none;
		-webkit-text-size-adjust: 100%
	}
}
*/
/*
.JS body {
	background-color: #e8e8e8
}
.JS h2, .JS .LV1LinkSet {
	margin: 0
}
#HeaderArea1 .Container.Wide, #HeaderArea2 .Container.Wide, #FooterArea .Container.Wide {
	-webkit-box-sizing: unset;
	box-sizing: unset
}
#GlobalNaviMenu>li.Current>a>strong {
	background-image: none
}
*/
img {
	border: 0;
	margin: 0;
	vertical-align: top;
	max-width: 100%;
	height: auto
}
figure {
	margin: 0
}
p {
	margin: 0;
	padding: 0
}
a {
	color: inherit;
	text-decoration: none
}
@media only screen and (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none
	}
}
input, select, textarea, button {
	color: inherit;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}
/*
@media only screen and (max-width: 767px) {
	input, select, textarea {
		font-size: 16px !important
	}
}
*/
select::-ms-expand {
	display: none
}
textarea {
	resize: vertical
}
::-webkit-input-placeholder {
	color: #ccc
}
:-ms-input-placeholder {
	color: #ccc
}
::-ms-input-placeholder {
	color: #ccc
}
::-moz-placeholder {
	color: #ccc
}
::placeholder {
	color: #ccc
}
button {
	border: none;
	cursor: pointer
}
label {
	cursor: pointer
}
/*
table {
	border-collapse: collapse
}
ul, ol {
	list-style: none;
	margin: 0;
	padding: 0
}
h1, h2, h3, h4, h5, h6 {
	font-size: 14px;
	font-weight: 500;
	margin: 0;
	padding: 0;
	background: none
}
*/
main {
	display: block
}
#wrapper {
	position: relative
}
@media only screen and (max-width: 767px) {
	#wrapper {
		min-width: 320px
	}
}
.inner-block {
	margin: 0 auto;
	position: relative
}
@media only screen and (min-width: 768px) {
	.inner-block {
		padding-left: 40px;
		padding-right: 40px;
		max-width: 1280px
	}
}
@media only screen and (max-width: 767px) {
	.inner-block {
		padding-left: 20px;
		padding-right: 20px
	}
}
dl, dt, dd {
	padding: 0;
	margin: 0
}
@media only screen and (min-width: 768px) {
	a, a::before, a::after, button, button::before, button::after {
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out
	}
}
.ib {
	display: inline-block
}
@media only screen and (max-width: 767px) {
	.pc {
		display: none !important
	}
}
@media only screen and (min-width: 768px) {
	.sp {
		display: none !important
	}
}
.en {
/*	font-family: "Helvetica Neue", sans-serif;*/
	font-weight: 400
}
.c-svg {
	display: inline-block;
	fill: currentColor;
	vertical-align: top
}
.c-header #HeaderArea2>.Container #SiteID img {
	display: block
}
.c-header #HeaderArea2>.Container #SiteID span {
	display: none
}
.c-header #SiteID img+span {
	display: inline-block
}
.c-header #SiteID img {
	max-width: 274px;
	min-height: 50px
}
@media only screen and (max-width: 767px) {
	.c-header #SiteID img {
		min-height: inherit;
		max-width: min(285px, 76vw)
	}
}
.c-header #SiteID span {
	font-size: min(10px, 0.625vw);
	letter-spacing: .24em;
	margin-left: min(34px, 2.125vw)
}
.c-header #SiteID a {
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%
}
@media only screen and (max-width: 767px) {
	.c-header #SiteID a {
		display: block
	}
}
@media only screen and (max-width: 767px) {
	.c-header #SpMenuModal.show {
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: column-reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
		-webkit-box-pack: end;
		-webkit-justify-content: flex-end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding-top: 45px
	}
}
@media only screen and (max-width: 767px) {
	.c-header #SpMenuModalContent {
		padding-top: 0
	}
}
.c-header #SpSupportNavi {
	border-top: none
}
.footer-logo-ttl {
	background: #f2f2f3;
	margin: 0 calc(50% - 50vw) min(40px, 2.6666666667vw);
	padding: 0 calc(50vw - 50%) min(100px, 6.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.footer-logo-ttl {
		margin: 0 calc(50% - 50vw) min(20px, 5.3333333333vw);
		padding: 0 calc(50vw - 50%) min(30px, 8vw)
	}
}
.footer-logo-ttl .logo-ttl {
	border-left: 4px solid #d82531;
	padding: min(25px, 1.6666666667vw) min(29px, 1.9333333333vw) min(9px, 0.6vw)
}
@media only screen and (max-width: 767px) {
	.footer-logo-ttl .logo-ttl {
		border-left: 2px solid #d82531;
		padding: min(15px, 4vw) min(10px, 2.6666666667vw) min(5px, 1.3333333333vw)
	}
}
.c-ttl01.white .en, .c-ttl01.white .ja {
	color: #fff
}
.c-ttl01 .en {
	color: #494949;
	display: block;
	font-size: min(12px, 0.8vw);
	font-weight: bold;
	letter-spacing: .31em;
	margin-bottom: min(18px, 1.2vw);
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt"
}
@media only screen and (max-width: 767px) {
	.c-ttl01 .en {
		font-size: min(8px, 2.1333333333vw);
		margin-bottom: min(5px, 1.3333333333vw)
	}
}
.c-ttl01 .ja {
	color: #282828;
	display: block;
	font-size: min(28px, 1.8666666667vw);
	letter-spacing: .36em;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt"
}
@media only screen and (max-width: 767px) {
	.c-ttl01 .ja {
		font-size: min(14px, 3.7333333333vw)
	}
}
.c-ttl01 span {
	background: rgba(0, 0, 0, 0) !important;
	padding: 0
}
.c-ttl02 {
	color: #fff;
	font-size: min(45px, 3vw);
	letter-spacing: .16em;
	text-align: center;
	margin-bottom: min(45px, 3vw) !important
}
@media only screen and (max-width: 767px) {
	.c-ttl02 {
		font-size: min(19px, 5.0666666667vw);
		letter-spacing: .11em;
		margin-bottom: min(67px, 17.8666666667vw)
	}
}
.c-btn01 {
	background: #d82531;
	border: 1px solid #d82531;
	color: #fff !important;
	display: block;
	font-size: min(14px, 0.9333333333vw);
	letter-spacing: .26em;
	text-decoration: none !important;
	padding: min(13px, 0.8666666667vw) min(25px, 1.6666666667vw);
	max-width: min(300px, 20vw);
	min-width: min(300px, 20vw);
	line-height: 1.6;
	position: relative;
	width: 100%
}
.c-btn01::after {
	content: "";
	display: inline-block;
	width: min(11px, 0.7333333333vw);
	height: min(11px, 0.7333333333vw);
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	right: min(19px, 1.2666666667vw);
	margin: auto
}
@media only screen and (max-width: 767px) {
	.c-btn01::after {
		width: min(7px, 1.8666666667vw);
		height: min(7px, 1.8666666667vw)
	}
}
@media only screen and (min-width: 768px) {
	.c-btn01:hover {
		background: #fff;
		color: #d82531 !important
	}
	.c-btn01:hover::after {
		border-color: #d82531
	}
}
@media only screen and (max-width: 767px) {
	.c-btn01 {
		font-size: min(8px, 2.1333333333vw);
		max-width: min(190px, 50.6666666667vw);
		padding: min(6px, 1.6vw) min(18px, 4.8vw) min(5px, 1.3333333333vw)
	}
}
.c-btn02 {
	background: #b1000e url(/image/jp/r1/icon/icon_inquiry_white_hd.png) no-repeat 98% 90%;
	background-size: 20px;
	border: 1px solid #d82531;
	color: #fff !important;
	display: block;
	letter-spacing: .26em;
	text-decoration: none !important;
	padding: min(30px, 4.2857142857vw) 0;
	line-height: 1.6;
	position: relative;
	width: 100%;
	text-align: center
}
.c-btn02::after {
	content: "";
	background: #ccc
}
@media only screen and (max-width: 767px) {
	.c-btn02::after {
		width: min(7px, 1.8666666667vw);
		height: min(7px, 1.8666666667vw)
	}
}
@media only screen and (min-width: 768px) {
	.c-btn02:hover {
		background: #fff url(/image/jp/r1/icon/icon_inquiry_hd.gif) no-repeat 98% 90%;
		background-size: 20px;
		color: #d82531 !important
	}
	.c-btn02:hover::after {
		border-color: #d82531
	}
}
a.arrow {
	color: #fff;
	position: relative
}
a.arrow::before, a.arrow::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	right: min(10px, 0.7662835249vw);
	width: min(10px, 0.7662835249vw);
	height: min(2px, 0.153256705vw);
	border-radius: 9999px;
	background-color: #fff;
	-webkit-transform-origin: calc(100% - 0px) 50%;
	transform-origin: calc(100% - 0px) 50%;
	-webkit-transition: none;
	transition: none
}
@media only screen and (max-width: 767px) {
	a.arrow::before, a.arrow::after {
		right: min(10px, 1.3020833333vw);
		width: min(10px, 1.3020833333vw);
		height: min(2px, 0.2604166667vw)
	}
}
a.arrow::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}
a.arrow::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg)
}
main.versatility h1 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: min(250px, 19.1570881226vw);
	font-size: min(32px, 2.4521072797vw);
	font-weight: 400;
	letter-spacing: .1em
}
@media only screen and (max-width: 767px) {
	main.versatility h1 {
		font-size: min(20px, 5.3333333333vw);
		height: min(250px, 32.6797385621vw)
	}
}
main.versatility .data {
	background-color: #fff;
	padding: min(75px, 6.25vw) min(147.5px, 12.2916666667vw);
	margin-bottom: min(200px, 16.6666666667vw);
	font-size: 90%
}
@media only screen and (max-width: 767px) {
	main.versatility .data {
		padding: min(50px, 4.1666666667vw) min(40px, 3.3333333333vw)
	}
}
main.versatility .data dd, main.versatility .data p {
	line-height: 1.8
}
.child.headerTitle {
	position: relative;
	overflow: hidden;
	height: min(400px, 30.6513409962vw);
	background: #c63431;
	letter-spacing: 1.8px
}
@media only screen and (max-width: 767px) {
	.child.headerTitle {
		height: min(200px, 53.3333333333vw)
	}
}
.child.headerTitle .Container {
	max-width: 1275px;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-top: min(20px, 1.6666666667vw)
}
.child.headerTitle .txt {
	color: #fff;
	font-size: min(14px, 1.0727969349vw);
	line-height: 1.9;
	letter-spacing: .26em;
	margin-top: min(24px, 1.8390804598vw)
}
.child.headerTitle h1 {
	position: relative;
	z-index: 2;
	color: #fff;
	font-size: min(32px, 2.4521072797vw);
	line-height: 140%
}
@media only screen and (max-width: 767px) {
	.child.headerTitle h1 {
		font-size: min(20px, 5.3333333333vw)
	}
}
.child.headerTitle h1 span {
	display: block;
	font-size: min(14px, 1.0727969349vw);
	font-weight: normal
}
@media only screen and (max-width: 767px) {
	.child.headerTitle h1 span {
		font-size: min(12px, 3.2vw)
	}
}
.child.headerTitle .img {
	position: absolute;
	width: 66%;
	top: 0;
	right: 0;
	height: min(400px, 30.6513409962vw)
}
.child.headerTitle .img.solution {
	background: url(../img/solution/title_img.png) no-repeat center right/cover
}
.child.headerTitle .img.activity {
	background: url(../img/activity/title_img.png) no-repeat center right/cover
}
.child.headerTitle .img.products2 {
	background: url(../img/products/title_img.png) no-repeat center right/cover
}
.child.headerTitle .img.about {
	background: url(../img/about/title_img.png) no-repeat center right/cover
}
@media only screen and (max-width: 767px) {
	.child.headerTitle .img.about {
		background: url(../img/about/title_img_sp.png) no-repeat center center/cover
	}
}
@media only screen and (max-width: 767px) {
	.child.headerTitle .img {
		height: 100%
	}
}
.child.headerTitle .title_bg {
	width: 58%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: right;
	overflow: hidden;
	height: 100%
}
.child.headerTitle .title_bg img {
	height: 100%
}
@media only screen and (max-width: 767px) {
	.child.headerTitle .title_bg img {
		height: 100%
	}
}
@media only screen and (max-width: 767px) {
	.child.headerTitle .title_bg {
		width: 70%;
		height: 100%
	}
}
@media only screen and (max-width: 600px) {
	.child.headerTitle .title_bg {
		width: 80%
	}
}
@media only screen and (max-width: 500px) {
	.child.headerTitle .title_bg {
		width: 90%
	}
}
.child.solutionTitle {
	position: relative;
	overflow: hidden;
	height: min(400px, 30.6513409962vw);
	letter-spacing: 1.8px
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle {
		height: min(200px, 53.3333333333vw)
	}
}
.child.solutionTitle .Container {
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding-top: min(20px, 1.6666666667vw)
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle .Container.pse {
		padding-top: 26px
	}
	.child.solutionTitle .Container.mass {
		padding-top: 30px
	}
	.child.solutionTitle .Container.vris {
		padding-top: 26px
	}
	.child.solutionTitle .Container.uvss {
		padding-top: 28px
	}
	.child.solutionTitle .Container.quarantine {
		padding-top: 28px
	}
}
.child.solutionTitle .txt {
	color: #fff;
	font-size: min(14px, 1.0727969349vw);
	line-height: 1.9;
	letter-spacing: .26em;
	margin-top: min(24px, 1.8390804598vw)
}
.child.solutionTitle h1 {
	position: relative;
	z-index: 2;
	color: #fff;
	font-size: min(32px, 2.4521072797vw);
	line-height: 140%
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle h1 {
		font-size: min(20px, 5.3333333333vw)
	}
}
.child.solutionTitle h1 span {
	display: block;
	font-size: min(14px, 1.0727969349vw);
	font-weight: normal
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle h1 span {
		line-height: 1.8;
		margin-bottom: 5px;
		font-size: min(10px, 2.6666666667vw)
	}
}
.child.solutionTitle p {
	position: absolute;
	top: 7%;
	z-index: 3;
	color: #fff;
	font-size: min(20px, 1.5325670498vw);
	line-height: 140%
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle p {
		top: 6%;
		font-size: min(12px, 3.2vw)
	}
}
.child.solutionTitle p span {
	display: block;
	font-size: min(12px, 0.9195402299vw);
	font-weight: normal
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle p span {
		font-size: 8px
	}
}
.child.solutionTitle .img {
	position: absolute;
	width: 66%;
	top: 0;
	right: 0;
	height: min(400px, 30.6513409962vw)
}
.child.solutionTitle .img.solution {
	background: url(../img/solution/title_img.png) no-repeat center left/cover
}
.child.solutionTitle .img.pse {
	background: url(../img/solution/pse/title_img.png) no-repeat center left/cover
}
.child.solutionTitle .img.mass {
	background: url(../img/solution/mass/title_img.png) no-repeat center left/cover
}
.child.solutionTitle .img.vris {
	background: url(../img/solution/vris/title_img.png) no-repeat center left/cover
}
.child.solutionTitle .img.uvss {
	background: url(../img/solution/uvss/title_img.png) no-repeat center left/cover
}
.child.solutionTitle .img.quarantine {
	background: url(../img/solution/quarantine/title_img.png) no-repeat center left/cover
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle .img {
		height: 100%
	}
}
.child.solutionTitle::before {
	content: "";
	width: 45%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: right;
	overflow: hidden;
	height: 30%;
	background: url(../img/common/bg_solution_title_s.svg) no-repeat center right/cover;
	z-index: 2
}
@media only screen and (max-width: 2600px) {
	.child.solutionTitle::before {
		width: 40%
	}
}
@media only screen and (max-width: 1800px) {
	.child.solutionTitle::before {
		width: 35%
	}
}
@media only screen and (max-width: 1305px) {
	.child.solutionTitle::before {
		width: 30%
	}
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle::before {
		width: 40%
	}
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle::before {
		width: 60%
	}
}
.child.solutionTitle::after {
	content: "";
	width: 62%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: right;
	overflow: hidden;
	height: 100%;
	background: url(../img/common/bg_solution_title_1500.svg) no-repeat center right/cover
}
.child.solutionTitle::after img {
	height: 100%
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle::after img {
		height: 100%
	}
}
@media only screen and (max-width: 2000px) {
	.child.solutionTitle::after {
		background: url(../img/common/bg_solution_title_1000.svg) no-repeat center right/cover
	}
}
@media only screen and (max-width: 767px) {
	.child.solutionTitle::after {
		width: 70%;
		height: 100%
	}
}
@media only screen and (max-width: 600px) {
	.child.solutionTitle::after {
		width: 80%
	}
}
@media only screen and (max-width: 500px) {
	.child.solutionTitle::after {
		width: 93%
	}
}
/*# sourceMappingURL=comon.min.css.map */
