body {
	font-size: 12px;
	width:100vw;
	overflow-x:hidden;
}

body,
button,
input,
textarea {
	color: #000;
	font-family: "Source Sans Pro", HelveticaNeue-Light, "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	line-height: 1.618;
	text-rendering: optimizeLegibility;
	font-weight: 400;
	font-size: 1em;
}

input[required]::-moz-placeholder {
	color:red;
}

input[required]::-webkit-input-placeholder {
	color:red;
}

input[required]:-ms-input-placeholder {
	color:red;
}

input[required]::placeholder {
	color:red;
}

.text-red {
	color:red;
}

ul {
	padding-inline-start: 1.25em;
}

a {
	color:#333;
	text-decoration: none;
}

a:hover {
	color: #666;
	text-decoration: underline;
}

select {
	color: initial;
	font-family: "Source Sans Pro", HelveticaNeue-Light, "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	max-width: 100%
}

header {
	display:block;
	position:relative;
	width:100%;
}

banner {
	display:block;
	position:relative;
	margin-top: -0.25em;
	width: 100%;
	height: 80vh;
	background-color:white;
	overflow:hidden;
}

banner > div {
	position:absolute;
	width:100%;
	height:100%;
}


banner div img {
	object-fit: cover;
	width:100%;
	height:100%;
}

banner .banner_text {
	position:absolute;
	top:5em;
	left:5em;
	color:white;
	font-size:2em;
	width: calc(100% - 10em);
	height: calc(100% - 10em);
}

banner .banner_text title {
	display:block;
	width:100%;
	font-family: "Roboto Condensed","Arial Narrow",HelveticaNeue-Light,sans-serif;
	font-size:2em;
	font-weight:100;
}

banner .banner_text content {
	display:block;
	position:relative;
	margin-top:-0.5em;
}

.section {
	display:block;
	position:relative;
	width:100%;
	height:auto;
	font-size:1.25em;
	padding-top: 3em;
	padding-bottom: 6em;
}

.bg-grey {
	background-color:#eee;
}

h1,h2,h3,h4,h5 {
	font-family: "Roboto Condensed","Arial Narrow",HelveticaNeue-Light,sans-serif;
	font-weight:bold;
}

.section .section-body {
	position:relative;
	width:100%;
	padding-right:10em;
	padding-left:10em;
	height:auto;
}

.section .section-pagetitle {
	width: 100%;
	text-align: center;
	color: #fa6632;
	margin-bottom: 1.5em;
}

.section .section-pagetitle h1 {
	font-weight: normal;
}

.section .subtitle {
	display:block;
	position:relative;
	width:100%;
	font-family: "Roboto Condensed","Arial Narrow",HelveticaNeue-Light,sans-serif;
	line-height:1;
	color:#fa6632;
	padding-left: 2em;
	padding-top: 0.5em;
}

.section .subtitle span {
	font-size: 2.5em;
}

.section .section_content {
	padding:2em;
}

.orange-top-line {
	position:relative;
}

.orange-top-line::before {
	content: " ";
    display: block;
    position: absolute;
    left: -100%;
	top: 0.2em;
    width: 98%;
    height: 0.2em;
    background-color: #fa6632;
}

.section h3 {
	font-size:1.5em;
}

.menu_text {
	font-size:1.2em;
	line-height:100%;
	height:100%;
	padding-top:2.5em;
	text-align:center;
}

.menu_text.chinese a,
.menu_text.chinese b {
	font-size: 110%;
}

.menu_text a {
	text-decoration: none;
	color:#000;
	padding:0.5em;
	word-break:keep-all;
}

.menu_text b {
	color:#000;
	padding:0.5em;
	word-break:keep-all;
}

.menu_text b.orange {
	color:#fa6632;
	border:1px solid #fa6632;
}

.menu_text a.orange {
	color:white;
	background-color:#fa6632;
	border:1px solid #fa6632;
}

.menu_text.chinese .orange {
	padding-left: 1em;
	padding-right: 1em;
	padding-top:0.25em;
	padding-bottom:0.25em;
	margin-bottom: 0.5em;
}

.menu_text a:hover {
	color:#fa6632;
}

.menu_text a.orange:hover {
	background-color:transparent;
}

.alink-orange {
	color:#fa6632;
}

.alink-orange:hover {
	color: #000;
	text-decoration: none;
}

.text-normal {
	font-weight: normal;
}

.text-orange {
	color:#fa6632;
}

.bg-orange {
	background-color: #fa6632;
}

.active_trangle {
	position:relative;
	left:0;
	right:0;
	width:20%;
	margin:auto;
	margin-top:1em;
	top:-0.25em;
}

#trangle {
	fill: #fa6632;
}

.header_line {
	background-color:#fa6632;
	width: 100%;
	height:0.5em;
	margin-top:-0.5em;
}

.cologo {
	max-width:100%;
	max-height:50%;
	object-fit: contain;
	object-position: left;
	position:relative;
	top:40%;
	transform: translateY(-50%);
	cursor: pointer;
}

.grey_down_arrow {
	position:absolute;
	width:2em;
	top:-2px;
	left:6em;
	transform: rotate(180deg);
}

.grey_down_arrow svg path {
	fill:#eee;
}

.inbox_logo {
	width:50%;
}

.white_box {
	width:80%;
	padding:2em;
	background-color:white;
}

.title-font {
	font-family: "Roboto Condensed","Arial Narrow",HelveticaNeue-Light,sans-serif;
	font-weight: 100;
	font-size: 1.2em;
}

.title-font .bigger {
	font-size: 1.35em;
}

.orange-frame {
	border: 1px solid #fa6632;
	padding: 0.5em 1em;
}

.orange_right_triangle {
	position: absolute;
    right: 21%;
    bottom: 1.55em;
    width: 2em;
    margin-right: -2em;
}

.orange_right_triangle svg path {
	fill: #fa6632;
}

.orange_belt_button {
	position:absolute;
	cursor: pointer;
	user-select:none;
	right: 21%;
	margin-right: -2em;
	width: 10em;
	height: 3em;
	bottom: -1.5em;
	background-color: #fa6632;
	color:white;
	font-weight:bold;
	text-align:center;
	line-height:3em;
}

a.orange_belt_button {
	cursor: pointer;
	user-select:none;
	text-decoration: none;
}

a.orange_belt_button:hover {
	text-decoration: none;
	color:white;
}

.orange_button {
	cursor: pointer;
	user-select:none;
	text-decoration: none;
	display:inline-block;
	width:10em;
	height:4em;
	background-color: #fa6632;
	color:white;
	font-weight:bold;
	text-align:center;
	line-height:4em;
}

a.orange_button {
	text-decoration: none;
}

a.orange_button:hover {
	text-decoration: none;
	color:white;
}

.orange_small_button {
	cursor:pointer;
	user-select:none;
	text-decoration: none;
	display:inline-block;
	padding: 0.5em 1em;
	background-color: #fa6632;
	color:white;
	font-weight:bold;
	text-align:center;
	line-height:1em;
}

a.orange_small_button {
	text-decoration: none;
}

a.orange_small_button:hover {
	text-decoration: none;
	color:white;
}

.orange_tiny_button {
	cursor:pointer;
	user-select:none;
	text-decoration: none;
	display:inline-block;
	padding: 0.5em 0.25em;
	background-color: #fa6632;
	color:white;
	font-weight:bold;
	text-align:center;
	line-height:1em;
	font-size:90%;
}

a.orange_tiny_button {
	cursor: pointer;
	text-decoration: none;
}

a.orange_tiny_button:hover {
	text-decoration: none;
	color:white;
}


.orange_frame {
	width:100%;
	height:15em;
	border:1px solid #fa6632;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.25);
	background-color:white;
	position: relative;
}

.orange_frame .center_box {
	width: 100%;
	height: auto;
	position:relative;
	left:0;
	right:0;
	margin:auto;
	top:50%;
	text-align:center;
	transform: translateY(-50%);
}

.orange_frame .center_box img {
	width: 4.5em;
	height: auto;
}

.orange_photo_frame {
	display:inline-block;
	width:100%;
	height: 18em;
	object-fit: cover;
	border:1px solid #fa6632;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.25);
}

footer {
	background-color:#ccc;
	width:100%;
	color:#333;
}

footer .footer_company_text {
	display: inline-block;
	padding-right: 1.5em;
}

footer .filler {
	position:relative;
	height: 2em;
}

footer .contents {
	position:relative;
	padding-left:10em;
	padding-right:10em;
	font-size:1em;
}

footer .logo {
	width: 60%;
	margin-bottom:1em;
}

footer ul {
	padding-inline-start: 1.25em;
}

.product_lines {
	padding-left:2em;
	padding-right:2em;
}

.service_block {
	background-color: white;
	width: 100%;
	height: 100%;
	font-size: 1em;
	padding: 1em;
}

.service_block img {
	width: 100%;
	height: 13em;
	object-fit: cover;
}

.sqbox_holder {
	display:block;
	position:relative;
	height: 20vw;
	margin-bottom: 2em;
	background-size: auto 100%;
	background-position: 0 0;
	background-repeat: no-repeat;
}

.sqbox_holder img {
	width:100%;
	height:100%;
	object-fit: cover;
}

.sqbox_holder .title {
	width:100%;
	position:absolute;
	bottom:0;
	padding: 0.25em;
	text-align:center;
	background-color:rgb(255,255,255,0.75);
	color: #fa6632;
	font-family: "Roboto Condensed","Arial Narrow",HelveticaNeue-Light,sans-serif;
	font-size: 1.5em;
	font-weight: 100;
}

.orange_bullet {
	font-size:1em;
	font-weight:thin;
	padding-inline-start: 1.25em;
	list-style: none; /* Remove default bullets */
	color: #666;
}

.orange_bullet li::before {
	content: "\2022";  /* Add content: \2022 is the CSS Code/unicode for a bullet */
	color: #fa6632; /* Change the color */
	font-weight: bold; /* If you want it to be bold */
	display: inline-block; /* Needed to add space between the bullet and the text */
	width: 1em; /* Also needed for space (tweak if needed) */
	margin-left: -1em;
}

.orange_bottom_line {
	position: relative;
	padding-bottom: 4px;
}

.orange_bottom_line::after {
	content:" ";
	display:block;
	width:100%;
	height: 2px;
	background-color: #fa6632;
	position:absolute;
	left:0;
	bottom:0;
}

.clear-both {
	clear:both;
}

.upsidedown {
	transform: rotate(180deg);
}

.left_orange_dash {
	border-left: 1px dashed #fa6632;
}

.right_orange_dash {
	border-right: 1px dashed #fa6632;
}

.about_section {
	background-color:white;
	width:100%;
	padding: 1em 2em;
	display:flex;
	flex-wrap: nowrap;
	margin-top:1em;
	margin-bottom:1em;
}

.about_image {
	flex:0 0 25%;
	display:flex;
	position: relative;
	padding:0.5em;
	height:auto;
	object-fit: contain;
	width: 25%;
}

.about_text {
	flex-grow:1;
	display: flex;
	position: relative;
	top:0;
	width: 100%;
	padding-left:2em;
	padding-right:2em;
}

.text_small {
	font-size:90%;
}

.contact_form_row {
	display:table;
	width:100%;
	padding-top:0.5em;
	padding-bottom: 0.5em;
}

.form_title {
	display:table-cell;
	font-size: 90%;
	color:#666;
	width:20%;
	vertical-align: middle;
}

.form_field {
	display:table-cell;
	width:80%;
	border:1px solid #ccc;
	padding:0.5em 1em;
	background-color:white;
	color:black;
}

.form_field input,
.form_field textarea {
	text-decoration: none;
	border:0;
	width:100%;
}

.form_field input:focus,
.form_field textarea:focus {
	outline:none;
}

tabgroup {
	display:flex;
	width:100%;
	flex-wrap: nowrap;
}

tabgroup tab {
	cursor:pointer;
	user-select: none;
	display:flex;
	margin-right:2em;
	white-space: nowrap;
}

tabgroup tab.active {
	font-weight:bolder;
	color:#fa6632;
}

tabgroup tab:hover {
	color:#fa6632;
}

tabgroup tab span {
	display: inline-block;
	width: auto;
}

.product_box {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #ccc;
}

.product_col {
	position: relative;
    width: 100%;
	flex: 0 0 50%;
	max-width: 50%;
}

.product_col.left {
	display:none;
}

.product_col.mid {
	padding-left:10%;
}

.product_col.right {
	display:block;
	overflow-x:hidden;
}

.product_col .content {
	width: 100%;
	padding: 2em;
}

.product_col .content img {
	width: 20em;
	max-width: 100%;
	height: 100%;
	object-fit: contain;
}

.underline {
	text-decoration: underline;
}

.center_image {
	height:auto;
	object-fit:cover;
}

.menu_cover {
	display:none;
	position: fixed;
	top:0;
	left:0;
	width:100%;
	height:100vh;
	background-color:rgba(0,0,0,0.25);
}

.mobile_menu {
	display:block;
	position: fixed;
	right: -100%;
	top:0;
	width: 100%;
	height: 100vh;
	font-size:120%;
	line-height: 1.1;
}

.mobile_menu_header {
	padding:1em 2em 1em;
	border-bottom: 2px solid #fa6632;
	position: relative;
	top:0;
	left:50%;
	width:50%;
	text-align:right;
	background-color:white;
}

.close_mobile_menu {
	padding: 1em;
	color: #fa6632;
}

.mobile_menu_content {
	padding-top: 2em;
	padding-left: 4em;
	padding-right: 4em;
	position:relative;
	left:50%;
	width:50%;
	height:90vh;
	background: transparent;
	background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.9) 75%, rgba(0,0,0,0) 100%);
	background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.9) 75%, rgba(0,0,0,0) 100%);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.9) 75%, rgba(0,0,0,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#000000",GradientType=1);
}

.mobile_menu_content::after {
	display:block;
	position: absoute;
	content:" ";
	left:0;
	width:100%;
	height: 60vh;

}

.mobile_menu_content .mobile_menu_item {
	width:100%;
	position:relative;
	padding-top:0.5em;
	padding-bottom: 0.5em;
}

.show_mobile_inline {
	display:none;
}

.show_mobile {
	display:none;
}

.show_mobile_flex {
	display:none;
}

.show_desktop {
	display:block;
}

.show_desktop_flex {
	display:flex;
}

.no-wrap {
	white-space: nowrap;
}

.copyright_line {
	background-color:black;
	width:100%;
	color: white;
	font-size: 0.8em;
	text-align:center;
	padding:0.5em 2em;
}

.grey {
	color: #666;
}

.white_arrow {
	display: inline-block;
	position: relative;
	margin-left: 1em;
	width:2em;
	height:0.3em;
	border-top: 1px solid white;
}

.white_arrow::before {
	display:block;
	content:" ";
	position:absolute;
	right:1px;
	top:-0.3em;
	transform: rotate(45deg);
	border-top: 1px solid white;
	width: 0.5em;
	height: 0.5em;
}

.white_arrow::after {
	display:block;
	content:" ";
	position:absolute;
	right:1px;
	top:calc(-0.3em + 1px);
	transform: rotate(135deg);
	border-top: 1px solid white;
	width: 0.5em;
	height: 0.5em;
}

.ipad_footer,
.ipad_footer_1 {
	padding-top: 0;
}

.go_to_top {
	position:fixed;
	right: 1em;
	bottom: 1em;
}

.row.equal-cols {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.row.equal-cols:before,
.row.equal-cols:after {
	display: block;
}

.row.equal-cols > [class*='col-'] {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.row.equal-cols > [class*='col-'] > * {
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto; 
}

.bigger title {
	font-size: 2.5em !important;
}

.bigger content {
	font-size: 1.8em !important;
}

@media only screen and (max-width: 1800px) {

	banner .banner_text {
		font-size:1.8em;
	}
}

@media only screen and (max-width: 1600px) {

	banner .banner_text {
		font-size:1.6em;
	}

	.service_block {
		font-size: 1em;
	}
		
	.orange_frame {
		height:16vw;
	}

	.orange_photo_frame {
		height: 20vw;
	}
}

@media only screen and (max-width: 1366px) {
	.white_box {
		width:85%;
		padding:2em 1.5em;
	}
	
	.orange_right_triangle {
		right:16%;
		bottom: 1.5em;
	}

	.orange_belt_button {
		right:16%;
		width:12em;
		height:3em;
		line-height:3em;
		bottom: -1.5em;
	}

	banner .banner_text {
		font-size:1.4em;
	}

	.section .section-body {
		padding-right: 6em;
		padding-left: 6em;
	}

	.title-font {
		font-size:1.15em;
	}

	.title-font .bigger {
		font-size:1.2em;
	}

	.orange_frame {
		height:10em;
	}

	.orange_photo_frame {
		height: 14em;
	}

	footer .contents {
		padding-left:8em;
		padding-right:4em;
		font-size: 0.9em;
	}

	.grey_down_arrow {
		left:4em;
	}

}

@media only screen and (max-width: 1200px) {
	.menu_text {
		font-size:1em;
	}

	.active_trangle {
		top: -0.15em;
	}

	header::after {
		top:87.5%;
	}

	banner .banner_text {
		font-size:1.25em;
	}

	.header_line {
		height:0.25em;
		margin-top:-0.25em;
	}	

	.service_block {
		font-size: 0.9em;
	}
	
	.sqbox_holder .title {
		font-size: 1.35em;
	}
}

@media only screen and (max-width: 1024px) {
	.menu_text {
		font-size:0.9em;
	}

	tabgroup {
		font-size: 0.9em;
	}

	header::after {
		top:87.5%;
	}

	.orange_right_triangle {
		bottom: 1.6em;
	}

	banner {
		height: 512px;
	}

	.white_box .title-font {
		line-height:1.1;
	}

	banner .banner_text {
		font-size:1.2em;
	}

	.section {
		padding-top:2em;
		padding-bottom:4em;
		font-size:1.15em;
	}

	.section .section-body {
		padding-left: 4em;
		padding-right: 4em;
	}

	.grey_down_arrow {
		width:1.75em;
		top:-2px;
		left:2em;
	}

	.white_box .title-font {
		font-size:1.15em;
	}

	.orange_button {
		width:8em;
		height:3em;
		line-height:3em;
		font-size:1.15em;
	}	

	.orange_frame {
		height:10em;
	}

	.title-font {
		font-size:1.15em;
	}

	.title-font .bigger {
		font-size:1.15em;
	}

	.orange_photo_frame {
		height: 14em;
	}

	.service_block {
		font-size: 0.8em;
	}

	.sqbox_holder .title {
		font-size: 1.4em;
	}
	
}

@media only screen and (max-width: 992px) {
	body,
	button,
	input,
	textarea {
		line-height: 1.4;
	}
	
	header {
		width:100vw;
		padding-top:1em;
		/* padding-bottom: 0.25em; */
	}

	
	.menu_text {
		padding-left: 1em;
		padding-right: 1em;
	}

	.active_trangle {
		margin-top: 1em;
	}

	.show_mobile_inline {
		display: inherit !important;
	}

	.show_mobile {
		display:block !important;
	}

	.show_mobile_flex {
		display:flex !important;
	}

	.show_desktop {
		display:none !important;
	}
	
	.show_desktop_flex {
		display:none !important;
	}

	banner .banner_text {
		font-size:1.2em;
		left:3em;
		top:3em;
		width: calc(100% - 6em);
		height: calc(100% - 6em);
	}

	banner .banner_text title {
		font-size:1.5em;
		padding-top:1em;
	}

	banner .banner_text content {
		margin-top:inherit;
	}	

	.cologo {
		display: inline-block;
		max-width:100%;
		max-height:3.5em;
		object-fit: contain;
		margin-left:1em;
	}

	.mobile_menu_icon {
		display:inline-block;
		position: relative;
		width: 2em;
		height: 1em;
		margin-right:0.5em;
		padding:0.15em;
	}

	.mobile_menu_icon div {
		display:block;
		position: absolute;
		top:50%;
		left:10%;
		width:80%;
		height: 0.25em;
		background-color: #333;
	}

	.mobile_menu_icon div:first-child {
		margin-top: -0.5em;
	}

	.mobile_menu_icon div:last-child {
		margin-top: 0.5em;
	}

	.section {
		padding-top:2em;
		padding-bottom:2em;
		font-size:1em;
	}

	.section .section-body {
		padding-left: 4em;
		padding-right: 4em;
	}

	.section .section-pagetitle {
		margin-bottom: 0.5em;
	}

	.section h3 {
		font-size: 1.25em;
	}

	.section .subtitle {
		padding-left: 1em;
		padding-top: 0.5em;
	}

	.section .subtitle span {
		font-size:2em;
	}

	.section .section_content {
		padding:1em;
	}

	.grey_down_arrow {
		width:1em;
		top:-4px;
		left:1.5em;
	}

	.white_box {
		width:90%;
		padding: 1em 1em 1.5em;
	}

	.orange_right_triangle {
		right:11%;
		margin-right:-1em;
		width:1.5em;
	}

	.orange_belt_button {
		right:11%;
		margin-right: -1em;
	}

	.orange_button {
		width:8em;
		height:3em;
		line-height:3em;
		font-size:1em;
	}	

	.title-font {
		font-size:1em;
	}

	.title-font .bigger {
		font-size:1.2em;
	}

	.orange_frame {
		height:10em;
	}

	.orange_photo_frame {
		height: 14em;
	}

	.service_block {
		font-size: 1em;
		padding-bottom:2em;
	}

	.service_block img {
		height: 25vw;
	}

	.sqbox_holder {
		background-size:cover;
	}

	.sqbox_holder .title {
		font-size: 1.1em;
	}

	.left_orange_dash {
		border-left: 0;
	}
	
	.right_orange_dash {
		border-right: 0;
	}
	
	.about_section {
		background-color:white;
		width:100%;
		padding: 1em 2em;
		display:block;
		position: relative;
		clear: both;
		margin-top:1em;
		margin-bottom:1em;
	}

	.about_section::after {
		display:block;
		content:" ";
		position:relative;
		height:0px;
		clear:both;
	}
	
	.about_image {
		width: 30%;
		display: block;
		float: left;
		margin:0.5em;
		height:auto;
		object-fit: contain;
	}
		
	.about_text {
		display: none;
	}

	.about_image.right {
		float:right;
		margin:0;
	}

	.product_lines {
		padding-left:1em;
		padding-right:1em;
	}

	tabgroup {
		width:80%;
		left:0;
		right:0;
		margin:auto;
	}

	tabgroup tab {
		flex: 1;
		width: 25%;
		text-align:center;
	}

	tabgroup tab span {
		display: block;
		width: 100%;
	}

	.ipad_footer_1 {
		padding-top: 3.5em;
	}

	.ipad_footer {
		padding-top: 2.25em;
	}

	footer .logo {
		margin-bottom: inherit;
		width:60%;
	}

	footer .contents {
		padding-left:10em;
	}
		
}

@media only screen and (min-width: 751px) {
	.d-xmd-block {
		display: block !important;
	}

	.d-xmd-none {
		display: none !important;
	}
}

@media only screen and (max-width: 751px) {
	.menu_text {
		display:none;
	}

	banner {
		height: 60vw;
	}

	.orange_tiny_button {
		min-width: 6em;
	}

	.cologo {
		max-height:2.5em;
		margin-left:inherit;
	}

	header {
		padding-bottom: 1em;
	}

	.form_title {
		width:20%;
		white-space: nowrap;
	}
	
	.form_field {
		width:80%;
	}

	footer .container > .row {
		padding-left:10%
	}

	footer .logo {
		width: 50%;
	}

	.footer_company_text {
		margin-bottom: 1em;
	}
	
	footer ul {
		margin-bottom:0;
	}
	
	#footer2 {
		margin-top:1em;
	}

	.sqbox_holder {
		height: 30vw;
		background-size:cover;
	}

	banner .banner_text.bigger title {
		font-size: 1.3em !important;
	}
	
	banner .banner_text.bigger content {
		font-size: 0.8em !important;
	}

	tabgroup {
		width:95%;
	}
}

@media only screen and (max-width: 546px) {
	body {
		font-size:16px;
	}

	.product_lines a {
		line-height: 2;
	}

	.product_col {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.product_col.left {
		display:block;
	}

	.product_col.mid {
		padding-left:0;
	}
	
	.product_col.right {
		display:none;
	}
	
	.section .section-body {
		padding-left: 2em;
		padding-right: 2em;
	}

	.section h3 {
		font-size: 1.1em;
	}

	.orange_button {
		width:auto;
		height:auto;
		line-height:1;
		padding: 1em 0.5em;
		font-size:90%;
	}	

	.orange_right_triangle {
		right:11%;
		margin-right:-0.5em;
		width:1em;
		bottom: 1em;
	}

	.orange_belt_button {
		right:11%;
		margin-right: -0.5em;
		font-size: 90%;
		width: 11em;
		height: 2em;
		bottom: -0.8em;
		line-height:2em;
	}

	banner .banner_text {
		left:2em;
		top:2em;
		width: calc(100% - 4em);
		height: calc(100% - 4em);
	}

	.service_block {
		height:auto;
	}

	.service_block img {
		height: 40vw;
	}

	.sqbox_holder {
		height: 45vw;
	}

	.product_col .content img {
		width: 80%;
	}	

	.about_image {
		width: 45%;
	}

	.ipad_footer,
	.ipad_footer_1 {
		padding-top: 0;
	}

	footer .contents {
		padding-left:5em;
		padding-right:2em;
		font-size:1em;
	}

}

@media only screen and (max-width: 414px) {
	body {
		font-size:14px;
	}

	tabgroup {
		font-size: 0.9em;
	}
	
	.section h3 {
		font-size: 1em;
	}

}

@media only screen and (max-width: 320px) {
	body {
		font-size:12px;
	}
}

@media only screen and (max-width: 280px) {
	body {
		font-size:10px;
	}
}

@media (min-width: 752px) and (max-width: 767px) {
	.container {
		max-width: 720px;
	}
}
