body {
	font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: .8rem;
	line-height: 1.25;
}
a.btn:hover {
	color: #FFF;
	text-decoration: none;
	background-color: #990000;
}
.carousel-item {
	height: 35vh;
}
.carousel-inner h2 {
	font-size: 1.25rem
}
.carousel-inner a:link {
	text-decoration: none;
}
#pjd {
	margin: auto;
	padding: 5rem;
	background-color: #EEE;
}
.svg-icon svg {
	max-height: 5rem;
	margin: auto;
	display: block;
}

.home-icon {
	color: #990000;
	margin: auto;
	font-size: 1rem
}
.vs-pjapp-logo {
	margin: auto;
	display: table;
	max-width: 140px;
	padding: .7rem 0;
}
.pj-container {
	max-width: 1280px;
	margin: auto;
}
.padding-clear {
	padding-left: 0;
	padding-right: 0;
	overflow: hidden;
	background-color: #FFFFFF;
}
.navbar {
	padding: 0.2rem;
}
.navbar-bg {
	background-color: #990000;
}
.navbar-brand {
	font-size: 1rem;
	font-weight: bold;
	width: 100%;
}
.navbar-brand a {
	color: #FFF;
}
.navbar-toggler a {
	color: #FFF;
}
.navbar-toggler {
	padding: .4rem .75rem;
	font-size: 1rem;
	border: 0px solid transparent;
}
.navbar-inverse .navbar-nav .nav-link {
	color: rgba(255, 255, 255, .8);
}
ul.navbar-nav {
	margin: auto;
	width: 100%;
}
.vs-pjd-tab a:hover {
	color: #990000;
	text-decoration: none;
}
.vs-pjd-tab a {
	color: #EEE;
	text-decoration: none;
}
.vs-pjd-table {
	width: 100%;
	margin-bottom: 0.3rem;
}
.vs-pjc-title {
	font-size: 1.3rem;
	font-weight: 400;
	margin: auto;
	margin-bottom: 5rem;
	display: table;
	padding: 1.5rem 0;
	background-color: #333;
	color: #FFF;
	width: 100%;
	text-align: center;
}
.vs-btn-a {
	line-height: 1.1;
	background-color: #EEE;
	border: 1px solid #DDD;
	padding: 0 .4rem;
	text-align: center;
	vertical-align: middle;
}
span.vs-input-group input {
	font-size: 12px;
	padding: .15rem 0;
}
.vs-red-bg {
	background-color: #990000;
}
.v-center {
	display: grid;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 95vh;
}
.v-center-100 {
	display: grid;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 95vh;
}
.v-center-50 {
	display: grid;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50vh;
}

.home.vs-main-block {
	padding: 2em;
}
.vs-main-block h1, .vs-main-block h2, .vs-main-block h3, .vs-main-block h4, .vs-main-block h5 {
	color: #990000;
}
.vs-pjd-tab {
	background-color: #333;
	color: #eee;
	padding: .6rem 1.2rem;
	line-height: 1.5;
}
.vs-pj-photo {
	position: relative;
	display: table;
	padding: 0 5em;
	width: 100%;
	max-width: 250px;
	margin: 0 auto;
}
.custom-control {
	display: inline-block;
}
.custom-control-indicator {
	background-color: #eceeef;
	border: 1px solid #999
}
.custom-control-input:focus~.custom-control-indicator {
	-webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 3px #DDD;
	box-shadow: 0 0 0 1px #fff, 0 0 0 3px #DDD;
}
.custom-control-input:checked~.custom-control-indicator {
	color: #fff;
	background-color: #990000;
}
.custom-control-input:disabled~.custom-control-indicator {
	border-color: #FFF;
}
.btn-vs-red {
	margin: auto;
	color: #990000;
	text-align-last: center;
	border: solid 1px #990000;
	font-weight: 600;
}
.btn-region-select {
	margin: auto;
	color: #FFF;
	background-color: #990000;
	text-align-last: center;
	border-radius: 0;
	font-weight: 600;
	width: 100%;
	padding: 1rem 0;
	font-size: 1rem;
}
a.btn-region-select:hover {
	background-color: #600000;
	color: #EEE;
}
footer.vs-pjapp-logo {
	margin: auto;
	width: 100%;
	bottom: 0;
	padding: 1.25rem;
}
.vs-pjapp-logo img {
	max-width: 150px;
	margin: auto;
	display: table;
}
a.btn-vs-red {
	width: 100%;
}
.pj-container .navbar-nav {
	width: 100%;
	/* IE 11 fix */
}
a.nav-link {
	padding: 1rem;
	border: 1px solid rgba(255, 255, 255, 0.35);
	text-align: center;
	display: grid;
}
li.nav-item {
	padding: 1em;
}
.vs-main-block {
	z-index: 1;
}
.vs-main-block .center-block {
	margin: auto;
	padding: .5rem 0rem;
	padding-left: 1.8rem;
}
.vs-close, .vs-close span {
	position: fixed;
	right: 0;
	padding: .2rem .4rem;
	color: #C40000;
	opacity: 1;
	font-size: 7vw;
}
.vs-close:hover {
	color: #000;
	text-decoration: none;
	cursor: pointer;
}
.form-check-input {
	margin-top: .1rem;
}
.form-check {
	display: inline-block
}
.vs-form-control {
	padding: .25rem .75rem;
	font-size: .85rem;
}
.small-input {
	padding: .0rem .5rem;
	margin-left: .2em;
	font-size: inherit;
}
.zoom-ratio-bar {
	width: 70%;
	vertical-align: middle;
	margin-left: 5px;
}

ul.vs-pjd-calculate li:before {
	position: relative;
	content: " ";
	left: -2.3rem;
	width: 8px;
	height: 8px;
	border-radius: 2em;
	display: inline-block;
}
li.n-a::before {
	background-color: #C40000
}
li.n-b::before {
	background-color: #ef0000
}
li.n-c::before {
	background-color: #ff76b5
}
li.n-d::before {
	background-color: #0099FF
}
li.n-e::before {
	background-color: #ff9494
}
li.n-f::before {
	background-color: #7600aa
}
li.n-g::before {
	background-color: #019318
}

ul.vs-pjd-calculate {
	padding: .0rem 0;
}
ul.vs-pjd-calculate li {
	list-style-type: lower-alpha;
	padding: .30rem 0;
}
select.vs-pjd-select {
	text-align-last: center;
	color: #990000;
	font-weight: 600;
	letter-spacing: 1px;
}
ul.vs-pjd-select, ul.vs-pjd-filter {
	padding: 0;
	list-style-type: none;
}
ul.vs-pjd-select li {
	margin: 0;
	list-style-type: none;
}
ul.vs-pjd-filter li {
	margin: 1rem 0;
	list-style-type: none;
}
ul.vs-pjd-filter li span, ul.vs-pjd-select li span {
	padding-bottom: .5em !important;
	display: block;
	font-weight: 600;
	padding: .2rem 0;
}
.vs-pjd-table {
	font-size: .8rem;
}
.vs-pjd-table td, .vs-pjd-table th {
	padding: .4rem;
}
footer {
	bottom: 0;
	width: 100%;
	color: #333;
	margin-top: 1rem;
}
footer a {
	color: #333;
	padding: .5rem 0;
	display: block;
}
footer a:focus, footer a:hover {
	color: #990000;
	text-decoration: none;
}
.vs-copyright {
	border-bottom: 5px solid #990000;
	width: 100%;
	display: table;
}
#backtop {
	display: none;
	position: fixed;
	z-index: 99;
	right: 10px;
	bottom: 7vh;
	cursor: pointer;
	-webkit-animation: fadein 0.5s;
	animation: fadein 0.5s;
}
.bn-arpage-up {
	padding: .2em 0.6em;
	color: #fff;
	border: 1px solid #990000;
	background-color: #fff;
	border-radius: 10%;
}
@media(max-height:980px) {
	.carousel-item h2 {
		font-size: 1rem;
	}
}
@media(min-height:900px) {
	footer {
		position: fixed;
	}
}
@media (min-width:321px) {
	body {
		line-height: 1.4;
	}
	ul.vs-pjd-calculate {
		font-size: inherit;
		letter-spacing: inherit;
	}
	.vs-main-block {
		padding: 0;
	}
	.vs-pjd-table td, .vs-pjd-table th {
		padding: .6rem;
	}
}

@media (min-width:760px) {
	.vs-main-block {
		padding: 0 3rem;
	}
	.carousel-inner h2 {
		font-size: 1.7rem
	}
	ul.vs-pjd-calculate {
		font-size: .95rem;
	}
	.vs-pj-photo {
		position: relative;
		display: table;
		padding: 0;
		width: 100%;
		max-width: 300px;
		margin: 0 auto;
	}
	li.nav-item {
		display: inline-grid;
	}
	a.nav-link {
		padding: 0;
		border: 0;
		display: inline-grid;
	}
	body, .vs-form-control {
		font-size: 1rem;
	}
	.home-icon {
		max-width: 300px;
		color: #990000;
		margin: auto;
		letter-spacing: .2px;
		font-size: 1.5rem
	}
	.btn-region-select {
		font-size: 1.5rem;
	}
	.br-fix {
		display: none;
	}
	.v-center-100 {
		height: inherit;
	}
}
@media (min-width:1000px) {
	.sc-img {
		border: 1px solid #CCC;
		border-radius: .3em;
	}
	.svg-icon svg {
		max-height: 10rem;
	}
	.pc.pj-container {
		max-width: 1280px;
		margin: auto;
		padding: 3rem;
	}
	.vs-pjd-tab {
		padding: 1rem 3rem;
		background-color: #fff;
		color: #333;
		font-size: 1.3rem;
	}
	.vs-pjd-tab a {
		color: #333;
		text-decoration: none;
	}
	.carousel-item {
		height: 50vh;
	}
	.vs-pjapp-logo {
		margin: auto;
		display: table;
		max-width: 100%;
		padding: 1rem 0;
	}
}
@media (min-width:1380px) {
	.carousel-inner h2 {
		font-size: 2.5rem
	}
}
#eTop {
	position: absolute;
	top: 0px;
	width: 100%;
	height: 20%;
	background-color: #00ff00;
	opacity: 0;
}
#fBom {
	position: absolute;
	top: 68%;
	width: 100%;
	height: 32%;
	background-color: #0000ff;
	opacity: 0;
}
#ceilSide {
	position: absolute;
	top: 20%;
	left: 0%;
	width: 8%;
	height: 48%;
	background-color: #ff0000;
	opacity: 0;
}
#disSide {
	position: absolute;
	top: 20%;
	left: 0%;
	width: 12%;
	height: 48%;
	background-color: #ff0000;
	opacity: 0;
}
#arrowLine {
	position: absolute;
}
#screen {
	position: absolute;
	left: 0;
	top: 0;
}
#projector {
	position: absolute;
	top: 160px;
	left: 50%;
	z-index: 0;
	margin-left: -24.5px;
}
#pjShadow {
	position: absolute;
	top: 238px;
	left: 50%;
	opacity: 0.6;
	z-index: 1;
	margin-left: -26.5px;
}
#containment_arrow1 {
	position: absolute;
	top: 160px;
	left: 50%;
	margin-left: -80px;
	width: 50px;
	height: 100px;
	z-index: 1;
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
}
#arrow1 {
	top: 30px;
	cursor: pointer;
}
#containment_arrow2 {
	position: absolute;
	top: 40px;
	left: 50%;
	margin-left: 50px;
	width: 50px;
	height: 200px;
}
#arrow2 {
	top: 120px;
	cursor: pointer;
}
#arrowLine {
	position: absolute;
}
[data-notify="container"] {
	width: 80%;
	text-align: center;
}
#ceiling_area {
	position: absolute;
	left: 8%;
}
#dis_area {
	position: absolute;
	left: 0%;
	display: none;
}
.custom-radio .custom-control-input:checked~.custom-control-indicator {
	background-image: url('../../img/disCalc/checked-radio.png') !important;
}
#msgModal {
	display: none;
}
.spinner {
	margin: 0 auto;
	width: 70px;
	text-align: center;
}
.spinner>div {
	width: 18px;
	height: 18px;
	background-color: #333;
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}
.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}
.popover {
	max-width: 100%;
}
.customPopover {
	color: #FFF;
	background-color: #000;
	opacity: .8;
	-webkit-box-shadow: none;
	box-shadow: none;
	border: none;
}
.customPopoverBtn {
	color: #FFF;
	background-color: transparent;
}
.customPopover .arrow {
	visibility: hidden;
}
@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% {
		-webkit-transform: scale(0)
	}
	40% {
		-webkit-transform: scale(1.0)
	}
}
@keyframes sk-bouncedelay {
	0%, 80%, 100% {
		-webkit-transform: scale(0);
		transform: scale(0);
	}
	40% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}


@media (max-width: 991px) {
    #navbarCollapse.show {
        max-width: 100%;
    }
	a.nav-link {
		padding: 1rem !important;
	}
}

@media (min-width: 992px) {
    #navbarCollapse .btn {
        max-width: 4em;
        white-space: normal;
        text-align: center;
    }
}

#navbarCollapse.collapsing {
    -webkit-transition: none;
    transition: none;
}
