@charset "utf-8";


html {
	font-size:62.5%;
}

body {
	color:#333;
	background:#fff;
	font-size:1.6rem;
	font-family:"微软雅黑",sans-serif;
	line-height:1.6;
	letter-spacing:0.05em;
}

@media screen and (min-width: 767px) {
	body {
		font-size:1.6rem;
	}
  }

img {
	flex-shrink:0;
	max-width: 100%;
	height:auto;
}

h1 img {
	vertical-align:middle;
}

ul, ol, dl {
	list-style:none;
}
p {
	margin-bottom:1.5em;
	line-height:1.8;
}

hr {
	border-top: 1px solid #ccc;	width:100%;
	margin-bottom:30px;
}

/*	a
------------------------------------------*/

a {
	color:inherit;
	text-decoration:underline;
}
a:hover {
	color:#c4181f;
	text-decoration:underline;
}
a:focus {
	outline:none;
}

header a,
footer a,
#contact-share a {
	text-decoration:none;
}

a.anchor{
    display: block;
    padding-top: 100px;
    margin-top: -100px;
}

/*
a[target="_blank"] {
	background:url(../images/ico-blank.svg#red) no-repeat left center / 0.8em 0.8em;
	padding-left:1.2em;
	text-decoration:underline;
}
*/

/*	section
------------------------------------------*/
#content section {
	margin-bottom:50px;
}

#content section:last-child {
	margin-bottom:0;
}

section.flex {
	margin-top:50px;
}

@media (min-width: 769px) {

#content section {
	margin-bottom:100px;
}

section.flex {
	margin-top:100px;
}	
}


/*	h1～h4
------------------------------------------*/
h2 {
	font-size:2.2rem;
	margin-bottom:0.5em;
}

h3 {
	font-size:2rem;
	margin-bottom:0.5em;
}

h4 {
	font-size:1.8rem;
	margin-bottom:0.5em;
}

h5,h6 {
	font-size:1.8rem;
	margin-bottom:0.5em;
}

@media (min-width: 769px) {
h2 {
	font-size:3.5rem;
}

h3 {
	font-size:3rem;
}

h4 {
	font-size:2.5rem;
}

h5,h6 {
	font-size:2rem;
}
}

/*	table
------------------------------------------*/
table {
	border:1px solid #ccc;
	border-collapse:collapse;
	margin:30px 0;
	font-size:1.4rem;
	max-width:100%;
}
caption {
	text-align:left;
	font-weight:bold;
}
table th {
	background:#eee;
	border:1px solid #ccc;
	font-weight:normal;
	padding:0.5em;
	vertical-align:top;
	text-align:left;
}

@media (min-width: 769px) {
table th {
	white-space:nowrap;
}	
}

.tbl-col th {
	text-align:center;
}

table td {
	background:#fff;
	padding:0.5em;
	border:1px solid #ccc;
	vertical-align:top;
}

@media screen and (max-width: 768px) {
.tbl-sp2 {
	border-bottom:none;
}
.tbl-sp2 th, .tbl-sp2 td {
	display:block;
	text-align:left;
}
.tbl-sp2 th {
	border:none;
	border-bottom:1px solid #ccc;
}
.tbl-sp2 td {
	border:none;
	border-bottom:1px solid #ccc;
}
}

/*	video
------------------------------------------*/
.video {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

.video iframe,  
.video object,  
.video embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video_wrap-w530 {
	width: 530px !important;
	max-width: 100%;
	margin-bottom:1.5em;
}


.video_wrap-w375 {
	width: 375px !important;
	max-width: 100%;
	margin-bottom:1.5em;
}

/*-----------------------------------------------
	class
-----------------------------------------------*/
.bgBlue {
	background-color:#194375 !important;
}

.txtSmall {
	font-size:smaller;
}

txtLarge {
	font-size:larger;
}
.txt18 {
	font-size:1.8rem;
}
.txt14, .data, .date  {
	font-size:1.4rem;
}

.txt12,
.notes,
.url {
	font-size:1.2rem !important;
}
.txtL {
	text-align:left !important;
}
.txtR {
	text-align:right;
}
.txtC {
	text-align:center;
}

.txtCM {
	text-align:center;
	vertical-align:middle;
}

.txtM {
	vertical-align:middle;
}

.txtRed {
	color:#c4181f !important;
}

@media (min-width: 769px) {
.imgC {
	display:block;
	margin:40px auto;
}
.imgR {
	float:right;
	margin-left:80px;
	margin-bottom:40px;
}

.imgL {
	float:left;
	margin-right:80px;
	margin-bottom:40px;
}

.img-vary50 {
	min-width:50%;
}
}

.clear {
	clear:both;
}

.marginB30 {
	margin-bottom:30px !important;
}

.marginB50 {
	margin-bottom:50px !important;
}

.marginT0 {
	margin-top:0 !important;
}

.marginB0 {
	margin-bottom:0 !important;
}

.marginL15 {
	margin-left:15px;
}

.sp-hide {
	display:none;
}
	@media (min-width: 769px) {
	.sp-hide {
		display:block;
	}
	.pc-hide {
		display:none;
	}
	}

.inner {
	padding:20px;
}

.inner .inner {
	padding:10px;
}

	@media (min-width: 769px) {
	.inner {
	padding:0;
	padding-top: 30px;
	box-sizing: border-box;
	margin:0 auto;
	width:80%;
	}
	.inner .inner {
		width:90%;
		padding:0;
	}
	}

.part {
	margin-bottom:30px;
}
.part h2 {
	border-bottom:1px solid #ccc;
}

.toggle .toggle-title {
    cursor: pointer;
    position: relative;
    transition: .2s linear;
    -webkit-transition: .2s linear;
    -moz-transition: .2s linear;
    -o-transition: .2s linear;
    -ms-transition: .2s linear;
}

.toggle .toggle-title:after {
    content: "＋";
    position: absolute;
    right: 12px;
}
.toggle .toggle-title.on:after {
    content: "－";
}
.toggle .toggle-panel {
    display: none;
	padding:50px 0;
}

.toggle .toggle-panel.on {
    display:block;
}

.toggle-title {
	background:#444;
	color:#fff;
	padding:0.3em 0.5em;
	font-size:3rem;
}

.products .toggle-title {
	background:#194375;
}

@media (min-width: 769px) {
	.part {
		position:relative;
		margin-bottom:100px;
		clear:both;
	}
	.part h2 {
		position:inherit;
		display:table;
		margin:0 auto 1em auto;
		background:#fff;
		padding:0 1em;
		border:none;
		font-size:3rem;
	}
	.part::before {
		content:'';
		position:absolute;
		border-left:1px solid #ccc;
		border-right:1px solid #ccc;
		border-top:1px solid #ccc;
		height:50px;
		width:100%;
		top:1em;
	}
	}

.part h3:not( :first-of-type ),
.toggle h3:not( :first-of-type ),
section:not(.part) h2:not( :first-of-type ) {
	margin-top:50px;
}
@media (min-width: 769px) {
.part h3:not( :first-of-type ),
.toggle h3:not( :first-of-type ),
section:not(.part) h2:not( :first-of-type ) {
	margin-top:100px;
}
}

@media (min-width: 769px) {
.sentence {
	width:100%;
	max-width:40em;
}
}

.fadein {
	opacity : 0.2;
	transform : translate(0px, 50px);
	transition : all 500ms;
}
.fadein.scrollin {
	opacity : 1;
	transform : translate(0px, 0px);
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

@media (min-width: 769px) {
	
.flex {
	display:flex;
	align-items: flex-start;
}

.flex.column-2,
.flex.column-3,
.flex.column-4,
.flex.column-6 {
	justify-content:space-between;
	flex-wrap:wrap;
}
	
.column-2 > div,
.column-2 > li {
	width:45%;
}

.column-3 > div,
.column-3 > li {
	width:30%;
}

.column-4 > div,
.column-4 > li {
	width:23%;
}

.column-6 > div,
.column-6 > li {
	width:15%;
}

.left {
	margin-right:80px;
	margin-bottom:40px;
	flex-shrink: 0;
}

.right {
	margin-left:80px;
	margin-bottom:40px;
	flex-shrink: 0;
}

.justify {
	justify-content:space-between;
}
}

.update {
	background:#c4181f;
	color:#fff;
	font-size:1.2rem;
	display:inline-block;
	border-radius:3px;
	padding:0 0.5em;
	vertical-align:top;
	margin-left:5px;
}

.caution {
	border:5px solid #f6ddde;
	background:#fcf3f4;
	padding:30px;
	margin-bottom:50px;
}

.caution h2 {
	font-size:2rem;
}

.caution p:last-child {
	margin-bottom:0;
}

.info {
	border: 3px double #ccc;
	padding:1em;
}

.pdf, .jpeg, .zip {
	background:none !important;
	padding:0!important;
}
.pdf::before,
.jpeg::before,
.zip::before {
	color:#fff;
	font-size:1.2rem;
	display:inline-block;
	border-radius:3px;
	padding:0 0.5em;
	margin-right:5px;
	text-decoration:none;
}

.pdf::before {
	content:"PDF";
	background-color:#c4181f;
}

.jpeg::before {
	content:"JPG";
	background-color:#01b3cd;
}

.zip::before {
	content:"ZIP";
	background-color:#7cba27;
}

.gmap iframe {
	max-width:100%;
}


/*	default_style
------------------------------------------*/
ul.default_style {
	list-style:disc outside none;
	margin:1em 0em 1em 1.5em;
}
ul.default_style ul {
	list-style:circle outside none;
	font-size:1.4rem;
	margin-left:1.5em;
	margin-bottom:0;
	margin-top:0.3em;
}
ul.default_style li {
	margin-bottom:0.5em;
}
ul.default_style li li {
	margin-bottom:0.3em;
}
ul.default_style li:last-child {
	margin-bottom:0;
}
ol.default_style, ol#list-search_result {
	list-style:decimal outside none;
	margin:1em 0em 1em 1.5em;
}
ol.default_style li {
	margin-bottom:0.5em;
}
ol.default_style ul {
	list-style:disc outside none;
	font-size:1.4rem;
	margin-left:1.5em;
	margin-bottom:0;
	margin-top:0.3em;
}
ol.default_style ol {
	list-style:decimal outside none;
	font-size:1.4rem;
	margin-left:1.5em;
	margin-bottom:0;
	margin-top:0.3em;
}
dl.default_style {
	margin-bottom:2em;
	background:#f5f5f5;
	padding:1em;
	border-radius:5px;
}
dl.default_style dt {
	font-weight:bold;
}
dl.default_style dd {
	margin-left:3em;
	font-size:1.4rem;
}
dl.default_style dd ol {
	margin-left:3em;
}
table ul.default_style, table ol.default_style {
	margin-top:0px;
	margin-bottom:0px;
}

/*	link-txt
------------------------------------------*/
a.link-txt,
ul.link-txt a  {
	text-decoration:underline;
	background-image:url(../images/ico-arrow_line.svg#red);
	background-size:0.7em 0.7em;
	background-position:left center;
	padding-left:1em;
	margin:0 0.5em 0 0.5em;
}

ul.link-txt li {
	white-space:nowrap;
}

ul.link-txt li:not( :last-child ) {
	margin-bottom:0.5em;
}

ul.link-txt ul {
	margin-top:0.5em;
	margin-left:2em;
	font-size:1.4rem;
}

/*	link-banner
------------------------------------------*/
.link-banner li {
	display:inline-block;
	margin-right:15px;
	margin-bottom:15px;
}

.link-banner li:last-child {
	margin-right:0;
}

.link-banner li img {
	border:1px solid #ccc;
}

/*	btn-round
------------------------------------------*/
a.btn-round {
	display:inline-block;
	padding:0.5em 2.4em;
	background:#444;
	color:#fff;
	text-align:center;
	text-decoration:none;
	border-radius:5px;
	white-space:nowrap;
}

@media (min-width: 769px) {
ul.list-btn-round {
	display:flex;
	justify-content:center;
}
}

ul.list-btn-round li {
	margin:10px;
}

.products a.btn-round {
	background:#194375;
}

.library a.btn-round {
	background:#01b3cd;
}

.technology a.btn-round {
	background:#f3980f;
}

.why a.btn-round {
	background:#4b3a93;
}

.application a.btn-round {
	background:#7cba27;
}

a.btn-round span {
	position:relative;
	padding-left:1.2em;
	transition:all .3s;
}
a.btn-round span::after {
	position:absolute;
	top:0;
	left:0;
	content:'';
	transition:all .3s;
	background-image:url(../images/ico-arrow_triangle.svg#white);
	background-position:center left;
	background-size:12px 12px;
	width:1.4em;
	height:1.4em;
}
a.btn-round:hover span {
	padding:0 .6em;
}
a.btn-round:hover {
	background-color:#c4181f !important;
	text-decoration:none;
}
a.btn-round:hover span::after {
	left:1.4em;
	opacity:0;
}

.library strong a.btn-round {
	font-weight:normal;
	background:#194375;
}

/*	btn-txt
------------------------------------------*/
a.btn-txt {
	display:inline-block;
	white-space:nowrap;
	text-decoration:underline;
	background:none;
	padding-left:0;
}

a.btn-txt span {
	position:relative;
	padding-left:1.2em;
	transition:all .3s;
}
a.btn-txt span::after {
	position:absolute;
	top:0;
	left:0;
	content:'';
	transition:all .3s;
	background-image:url(../images/ico-arrow_triangle.svg#gray);
	background-position:center left;
	background-size:12px 12px;
	width:1.4em;
	height:1.4em;
}

.products a.btn-txt span::after {
	background-image:url(../images/ico-arrow_triangle.svg#blue);
}

.library a.btn-txt span::after {
	background-image:url(../images/ico-arrow_triangle.svg#turquoise);
}

.technology a.btn-txt span::after {
	background-image:url(../images/ico-arrow_triangle.svg#orange);
}

.why a.btn-txt span::after {
	background-image:url(../images/ico-arrow_triangle.svg#violet);
}

.application a.btn-txt span::after {
	background-image:url(../images/ico-arrow_triangle.svg#green);
}

a.btn-txt:hover span {
	padding-left:0;
	padding-right:1.4rem;
}
a.btn-txt:hover {
	color:#c4181f;
}
a.btn-txt:hover span::after {
	opacity:0;
	left:1.4em;
	}

/*	btn-card
------------------------------------------*/
.btn-card {
	margin:50px auto;
}

@media (min-width: 769px) {
.btn-card {
	display: flex;
	flex-wrap: wrap;
}

.btn-card li {
	display:flex;
}

.btn-card.column-2 > li {
	width:calc(100% / 2 - 40.01px);
	margin:20px;
}

.btn-card.column-3 > li {
	width:calc(100% / 3 - 40.01px);
	margin:20px;
}
}

.btn-card h2,
.btn-card h3 {
	line-height:1.2;
	border-left:8px solid #ccc;
	padding-left:0.8em;
	margin-bottom:20px;
}

.btn-card p {
	display:inline-block;
	margin-bottom:0;
}

.btn-card img {
	vertical-align:bottom;
}

.btn-card a {
	border:1px solid #ccc;
	text-decoration:none;
	background:#fff url(../images/ico-arrow_card.svg#gray) right 5px bottom 5px / 10px 10px no-repeat;
	position:relative;
	overflow:hidden;
	display:inline-block;
	width:100%;
	padding:35px;
}
.btn-card a:hover {
	background-color:#f5f5f5;
	color:inherit;
}


/*
.btn-card {
	display: flex;
	flex-wrap: wrap;
	margin:50px auto;
	text-align:center;
}

.btn-card h2,
.btn-card h3 {
	background:#444;
	color:#fff;
	padding:0.5em 1em;
	margin:0;
	text-align:center;
	line-height:1.2;
}

.btn-card p {
	margin:10px 15px 0px 15px;
	display:inline-block;
	text-align:left;
}

.btn-card img {
	vertical-align:bottom;
}
.btn-card a {
	border:1px solid #ccc;
	text-decoration:none;
	background:#fff url(../images/ico-arrow_card.svg#gray) right 5px bottom 5px / 10px 10px no-repeat;
	position:relative;
	overflow:hidden;
	display:inline-block;
	width:100%;
	height:100%;
}
.btn-card a:hover {
	background-color:#f5f5f5;
	color:inherit;
}

.btn-card-zoom {
	position: relative;
	width: 100%;
	height: 150px;
	overflow: hidden;
	background-color: #444;
}

.btn-card-zoom h2 {
	background:none;
	position:relative;
	z-index:1;
}

.btn-card-bg {
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}
.btn-card-bg:after {
	content:"";
	position: absolute;
	width: 100%;
	height: 100%;
	background-position:center center;
	background-size: cover;
	transition: all 0.2s ease-out;
	transform: matrix3d( 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0.99 );
	filter: grayscale(100%);
	will-change: transform;
	opacity: 0.5;
	top:0;
	left:0;
	}
a:hover .btn-card-bg:after {
	transform: matrix3d( 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0.9 );
	filter: grayscale(0);
	opacity: 1;
}
*/

/*	btn-tag
------------------------------------------*/
.btn-tag {
	font-size:1.2rem;
	margin-bottom:2em;
}

.btn-tag li {
	display:inline-block;
	margin-right:10px;
	margin-bottom:10px;
}

.btn-tag a {
	display:inline-block;
	border-radius:1em;
	background:#fff;
	padding:2px 10px;
	border:1px solid #ccc;
	text-decoration:none;
}

.btn-tag a:hover {
	color:inherit;
	background:#eee;
}

.products .btn-tag a {
	border:1px solid #dde3ea;
}

.products .btn-tag a:hover {
	background:#dde3ea;
}

.application .btn-tag a {
	border:1px solid #ebf5df;
}

.application .btn-tag a:hover {
	background:#ebf5df;
}

/*	steps
------------------------------------------*/
.steps {
	display:none;
}

@media (min-width: 769px) {
.steps {
	display:table;
	margin:50px auto;
}
.steps:after {
	content: "";
	display: table;
}
.steps li {
	display: inline-block;
	margin: 0.5em 0;
	position: relative;
	margin: 0.4em 40px 0.4em 0;
	width:10em;
	text-align: center;
}
.steps li:last-of-type::after {
  display: none;
}
.steps li > * {
  display: inline-block;
	color:#c4181f;
}
.steps li:last-of-type {
	margin-right: 0;
}
.steps li::after {
    position: absolute;
	content: '';
	height: 4px;
	background: #ccc;
}
.steps li.visited::after {
	background-color: #c4181f;
}
.steps li > *, .steps li.current > * {
	position: relative;
	color: #444;
}
.steps li.current > * {
	position: relative;
	color: #c4181f;
}
.steps li::after {
    position: absolute;
	left: 50%;
    width: calc(100% + 40.01px);
}
.steps li > *::before {
    content: '';
	position: absolute;
	z-index: 1;
	left: 50%;
	right: auto;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	height: 12px;
	width: 12px;
	border-radius: 50%;
	background-color: #ccc;
}
.stepsli.visited > *::before, .steps li.visited > *::before {
	background-color: #c4181f;
}
.steps li::after {
    bottom: 4px;
}
.steps li > * {
	padding-bottom: 20px;
}
.steps li > *::before {
    bottom: 0;
}
}

/*	list-article
------------------------------------------*/
@media (min-width: 769px) {
.list-article {
	display:flex;
	flex-wrap: wrap;
}

.list-article li {
	width:calc(100% / 3 - 40.01px);
	margin:20px;
}
}

.list-article img {
	width:100%;
}

.list-article h2,
.list-article h3 {
	font-size:2rem;
	font-weight:normal;
	margin-top:0 !important;
}

.list-article p {
	font-size:1.4rem;
}

/*.list-article a.btn-txt {
	padding:0.3em 2.4em;
	font-size:1.4rem;
	border-radius:0;
}*/

.list-article a.btn-txt {
	font-size:1.4rem;
	margin-bottom:30px;
}

@media (min-width: 769px) {
.list-article a.btn-txt {
	margin-bottom:0;
}
}

/*	lightbox
------------------------------------------*/
.lightbox {
    cursor: pointer;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: black;
    /* IE Fallback (Solid Colour) */
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAIElEQVQ4T2NkYGDYDMRkA8ZRAxhGw4BhNAyA+WAYpAMAIFgLQfO9BoEAAAAASUVORK5CYII=);
    background: rgba(0, 0, 0, 0.7);
    -webkit-filter: none !important;
    z-index: 9997;
}

.lightbox img {
    display: block;
    position: absolute;
    border: 5px solid #fff;
    box-shadow: 0 0 20px #000;
    border-radius: 1px;
}

body.blurred > * {
    -webkit-filter: blur(2px);
    -webkit-transform: translate3d(0, 0, 0);
}

.lightbox__loading {
    background: url(loading.gif) center center no-repeat;
    width: 32px;
    height: 32px;
    margin: -16px 0 0 -16px;
    position: absolute;
    top: 50%;
    left: 50%;
}

.lightbox__caption {
    display: none;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    z-index: 9998;
    background: #000;
    background: rgba(0, 0, 0, 0.7);
}

.lightbox__caption p {
    margin: 0 auto;
    max-width: 70%;
    display: inline-block;
    *display: inline;
    *zoom: 1;
    padding: 10px;
    color: #fff;
    font-size: 1.6rem;
    line-height: 18px;
}

.lightbox__button {
    position: absolute;
    z-index: 9999;
    background: no-repeat center center;
    width: 32px;
    height: 32px;
    opacity: 0.4;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
}

.lightbox__button:hover,
.lightbox__button:focus {
    opacity: 1;
    -webkit-transform: scale(1.4);
    -moz-transform: scale(1.4);
    -ms-transform: scale(1.4);
    transform: scale(1.4);
}

.lightbox__close {
    right: 10px;
    top: 10px;
    background-image:url(../images/close.png);
}

.lightbox__nav {
    top: 50%;
    margin-top: -16px;
}

.lightbox__nav--next {
    right: 10px;
    background-image: url(../images/next.png);
}

.lightbox__nav--prev {
    left: 10px;
    background-image: url(../images/previous.png);
}

/*-----------------------------------------------
	header-site
-----------------------------------------------*/
#header-site {
	z-index:1000;
	width:100%;
	background:#fff;
	position: fixed;
	left:auto;
	transition: all 0.4s;
}
 @media (min-width: 769px) {
#header-site {
	padding-top:10px;
	border-bottom:1px solid #ccc;
}
}

.menuless #header-site {
	position:inherit;
}

/*#header-site.hide, #index #header-site {
	top:-100px;
}
#index #header-site.view {
	top:0px;
}*/

#header-site .inner {
	padding:0;
}
#logo {
	width:80px;
	height:33px;
	margin:10px 0px 5px 10px;
	overflow:hidden;
}
 @media (min-width: 769px) {
#logo {
	float:left;
	padding:5px 20px 0 0;
	width:120px;
	height:50px;
	margin:0;
}

.menuless #logo {
	float:none;
	margin-bottom:5px;
}
}

/*-----------------------------------------------
 	nav
-----------------------------------------------*/

/*	smenu
------------------------------------------*/
#smenu {
	display:none;
}
@media (min-width: 769px) {
#smenu {
	display:block;
	font-size:1.2rem;
	text-align:right;
	margin-bottom:10px;
}
#smenu li {
	display:inline-block;
	margin-right:1vw;
	line-height:1;
	background-image:url(../images/ico-arrow_triangle.svg#gray);
	background-size:8px 8px;
	background-position:left center;
	padding-left:10px;
}
#smenu a {
	color:#666;
}
#smenu li:last-child {
	background-image:url(../images/ico-global.svg#gray);
	background-size:12px 12px;
	padding-left:15px;
	margin-right:0px;
}
}

/*	gmenu
------------------------------------------*/
#gmenu {
	transition: all 0.4s;
	max-height: 0;
	overflow:hidden;
	line-height:1;
	border-top:1px solid #ccc;
}
@media print{
#gmenu {
	display:none;
}
}

@media (min-width: 769px) {
#gmenu {
	max-height:inherit;
	border:none;
}
}
#gmenu.active {
	max-height: 5000px;
}
.nav-menu {
	display: block;
	position: relative;
	z-index: 15;
}
@media (min-width: 769px) {
.nav-menu {
	display:table;
	width:calc(100% - 0px);
	table-layout: fixed;
	font-size:1.4rem;
	position:inherit;
}
}
.nav-item {
	display: block;
	position: relative;
}
 @media (min-width: 769px) and (max-width: 950px) {
.nav-item {
	font-size:1.2rem;
}
}
 @media (min-width: 769px) {
.nav-item {
	position:inherit;
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	height:35px;
}
.nav-item a {
	display:inline-block;
	width:100%;
	height:100%;
}
#gmenu-technology {
	border-bottom:5px solid #f3980f;
}
#gmenu-products {
	border-bottom:5px solid #194375;
}
#gmenu-why {
	border-bottom:5px solid #4b3a93;
}
#gmenu-application {
	border-bottom:5px solid #7cba27;
}
#gmenu-library {
	border-bottom:5px solid #01b3cd;
}
#gmenu-search {
	width:50px;
	border-bottom:5px solid #c4181f;
}
}
.nav-item .icon {
	cursor: pointer;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 100;
	font-weight: bold;
	font-style: normal;
	color: #fff;
	background-color: #194375;
	display: block;
	width:50px;
	height:50px;
	font-size:3rem;
	line-height:0;
	display: flex;
	align-items: center;
	justify-content: center;
}
#gmenu-technology .icon {
	background-color:#f3980f;
}
#gmenu-products .icon {
	background-color:#194375;
}
#gmenu-application .icon {
	background-color:#7cba27;
}
#gmenu-why .icon {
	background-color:#4b3a93;
}
#gmenu-library .icon {
	background-color:#01b3cd;
}
#gmenu-search .icon {
	background-color:#c4181f;
}
.nav-item .icon:before {
	content: '+';
}
.nav-item .icon.icon--open:before {
	content: '-';
}
@media (min-width: 769px) {
.nav-item .icon {
	display: none;
}
}
.nav-item > a {
	position: relative;
	display:block;
	width: 100%;
	height:50px;
	line-height:50px;
	background-color:#fff;
	border-bottom:1px solid #ccc;
	font-weight:bold;
	padding-left:10px;
}
.nav-item > a:focus, .nav-item > a.open {
}
.nav-item > a.open {
	z-index: 1;
}
 @media (min-width: 769px) {
.nav-item > a {
	display:block;
	border:none;
	width:100%;
	height:100%;
	padding-top:10px;
	padding-left:0px;
	line-height:inherit;
	font-weight:normal;
}
.nav-item > a:hover {
	text-decoration:none;
	color:inherit;
}
#gmenu-technology > a:hover, #gmenu-technology > a:focus, #gmenu-technology > a.open, body.technology #gmenu-technology > a {
	background:#fdf0db;
}
#gmenu-products > a:hover, #gmenu-products > a:focus, #gmenu-products > a.open, body.products #gmenu-products > a {
	background:#dde3ea;
}
#gmenu-why > a:hover, #gmenu-why > a:focus, #gmenu-why > a.open, body.why #gmenu-why > a {
	background:#e4e2ef;
}
#gmenu-application > a:hover, #gmenu-application > a:focus, #gmenu-application > a.open, body.application #gmenu-application > a {
	background:#ebf5df;
}
#gmenu-library > a:hover, #gmenu-library > a:focus, #gmenu-library > a.open, body.library #gmenu-library > a {
	background:#d9f4f8;
}
#gmenu-search > a:hover, #gmenu-search > a:focus, #gmenu-search > a.open {
	background:#f6ddde;
}
.nav-item > a:focus, .nav-item > a.open {
}
.nav-item > a.open {
}
}
.gmenu-sub {
	position: relative;
	display: block;
	top: 0;
	background-color: #fff;
	transition: all 0.4s;
	max-height: 0;
}
.gmenu-sub.open {
	display: block;
	max-height:300px;
	overflow:auto;/*-webkit-overflow-scrolling:touch;*/
}
 .gmenu-sub.open::-webkit-scrollbar {
 width: 10px;
}
.gmenu-sub.open::-webkit-scrollbar-thumb {
 background: #ccc;
 border-radius: 5px;
}
.gmenu-sub.open::-webkit-scrollbar-track-piece {
 background: #eee;
}
 @media (min-width: 769px) {
/*
.gmenu-sub {
	display: none;
	overflow:hidden;
	z-index:1000;
	box-shadow: 0px 3px 3px -3px #ccc;
	border-radius:0px 0px 10px 10px ;
}
.gmenu-sub.open {
	position:absolute;
	top:100%;
	left:0px;
	display: block;
	width:100%;
	max-height:inherit;
	overflow:auto;
	background:rgba(255,255,255,0.95);
	border-bottom:1px solid #ccc;
}
*/
.gmenu-sub {
	overflow:hidden;
	z-index:1000;
	box-shadow: 0px 3px 3px -3px #ccc;
	border-radius:0px 0px 15px 15px;
	position: absolute;
	display: block;
	transition: opacity 250ms ease 250ms, max-height 500ms ease, visibility 0s linear 500ms, top 0s linear 500ms;
	visibility: hidden;
	top: -9999em;
	left:0;
	width:100%;
	max-height: 0px;
	opacity: 0;
	padding-bottom:30px;
}
.gmenu-sub.open {
	opacity:1;
	visibility: visible;
	top:100%;
	transition: opacity 250ms ease, max-height 500ms ease, visibility 0s linear 0s, top 0s linear 0s;
	max-height:1000px;
	overflow:hidden;
	/*background:rgba(255,255,255,0.95);*/
}


#gmenu-technology .gmenu-sub,
#gmenu-technology .gmenu-sub.open {
	/*background-color:#fefaf3;*/
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #fdf0db 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

#gmenu-products .gmenu-sub,
#gmenu-products .gmenu-sub.open {
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #dde3ea 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

#gmenu-why .gmenu-sub,
#gmenu-why .gmenu-sub.open {
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #e4e2ef 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

#gmenu-application .gmenu-sub,
#gmenu-application .gmenu-sub.open {
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #ebf5df 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

#gmenu-library .gmenu-sub,
#gmenu-library .gmenu-sub.open {
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #d9f4f8 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

#gmenu-search .gmenu-sub,
#gmenu-search .gmenu-sub.open {
	background:url(../images/btn-menuclose.svg), linear-gradient(#ffffff, #f6ddde 150px);
	background-repeat: no-repeat;
	background-position:bottom right;
}

.gmenu-subinner {
	width:80%;
	margin:20px auto;
	position:relative;
	text-align:left;
}
}

.gmenu-service-sub {
	border-top:1px solid #ccc;
}

.gmenu-sub li {
	font-size:1.6rem;
	border-bottom:1px solid #ccc;
}
.gmenu-sub li:last-child {
	border-bottom:none;
}
.gmenu-sub li a {
	display:block;
	padding:15px 0px 15px 30px;
	margin-right:60px;
}
.gmenu-sub li span.nolink {
	display:block;
	padding:15px 0px 15px 30px;
}
.gmenu-sub ul ul {
	display:none;
}



 @media (min-width: 769px) {
.gmenu-sub ul {
	margin-bottom:10px;
	line-height:1.2;
	display: flex;
	flex-wrap: wrap;
	width:100%;
}

.gmenu-service-sub {
	border-top:none;
}

.gmenu-sub li {
	font-size:1.4rem;
	border-bottom: none;
	width:calc(20% - 20.01px);
	margin:0px 10px 15px 10px;
}

#gmenu-products .gmenu-sub li {
	width:calc(100% / 3 - 20.01px);
}

#gmenu-products .gmenu-sub li li {
	width:auto;
}

#gmenu-technology .gmenu-sub li, #gmenu-why .gmenu-sub li, #gmenu-library .gmenu-sub li {
	min-width:17em;
}
.gmenu-sub ul ul {
	border-top:none;
	margin-top:15px;
	display:block;
	/*border-left:1px solid #666;*/
	/*margin-left:3px;*/
	margin-left:1em;
}
.gmenu-sub li li {
	font-size:1.2rem;
	width:100%;
	padding-left:15px;
	min-width:inherit;
	margin:0px 0px 10px 0px;
}
.gmenu-sub li a {
	display:inline;
	padding:0px 0px 0px 15px;
	margin-right:0px;
	background-image:url(../images/ico-arrow_line.svg);
	background-size:10px 10px;
	background-position:left center;
}

#gmenu-technology .gmenu-sub li a {
	background-image:url(../images/ico-arrow_line.svg#orange);
}

#gmenu-products .gmenu-sub li a {
	background-image:url(../images/ico-arrow_line.svg#blue);
}

#gmenu-application .gmenu-sub li a {
	background-image:url(../images/ico-arrow_line.svg#green);
}

#gmenu-why .gmenu-sub li a {
	background-image:url(../images/ico-arrow_line.svg#violet);
}

#gmenu-library .gmenu-sub li a {
	background-image:url(../images/ico-arrow_line.svg#turquoise);
}

#gmenu-products .gmenu-sub li li a,
#gmenu-application .gmenu-sub li li a,
#gmenu-library .gmenu-sub li li a {
	background:none;
	padding:0px;
}
.gmenu-sub li span.nolink {
	padding:0;
}
/*.gmenu-sub .ttl-gmenu-sub {
	display:inline-block;
	background:#0F6;
	width:100%;
	height:50px;
	text-align:center;
}*/

.gmenu-technology-sub:before, .gmenu-products-sub:before, .gmenu-service-sub:before, .gmenu-application-sub:before, .gmenu-why-sub:before, .gmenu-library-sub:before, .gmenu-search-sub:before {
	display:block;
	text-align:left;
	width:100%;
	font-size:1.6rem;
	font-weight:bold;
	margin-bottom:20px;
	padding-bottom:5px;
	padding-left:5px;
}
.gmenu-technology-sub:before {
	content: "技术领域";
	border-bottom:3px solid #fdf0db;
}
.gmenu-products-sub:before {
	content: "产品";
	border-bottom:3px solid #dde3ea;
}

.gmenu-service-sub:before {
	content: "服务";
	border-bottom:3px solid #dde3ea;
}
.gmenu-doc-sub:before {
	content: "资料下载";
	
}
.gmenu-application-sub:before {
	content: "产品应用环境";
	border-bottom:3px solid #ebf5df;
}
.gmenu-why-sub:before {
	content: "领先的SILEX技术";
	border-bottom:3px solid #e4e2ef;
}
.gmenu-library-sub:before {
	content: "技术支持";
	border-bottom:3px solid #d9f4f8;
}
.gmenu-search-sub:before {
	content: "站内搜索";
	border-bottom:3px solid #f6ddde;
}
}
#gmenu-toggle {
	display: inline-block;
	position:absolute;
	top:10px;
	right:10px;
	color: #fff;
	background-color:#c8161d;
	width: 60px;
	height: 35px;
	line-height: 35px;
	text-align: center;
	text-decoration:none;
	font-size:1.1rem;
}
 @media (min-width: 769px) {
#gmenu-toggle {
	display:none;
}
.open {
	border-bottom:1px solid #ccc;
}
}


/*-----------------------------------------------
	form
-----------------------------------------------*/

fieldset {
	border:1px solid #ccc;
	padding:70px 30px 30px 30px;
	margin-bottom:50px;
	background:#f5f5f5;
	position:relative;
}

fieldset:last-of-type {
	margin-bottom:0;
}

legend {
	position:absolute;
	top:20px;
	left:-10px;
	background:#444;
	color:#fff;
	padding:5px 10px;
}

legend + * {
	clear:both;
}

label {
	display:block;
}

input,
textarea,
select {
	border:#ccc 1px solid;
	background-color:#fff;
	padding:5px;
}

select {
	cursor: pointer;
	background:#fff url(../images/ico-arrow_triangle_down.svg#gray) no-repeat center right 10px / 15px 15px;
	padding-right:50px;
}

textarea {
	width:100%;
	height:200px;
	display:block;
	margin-bottom:5px;
}

.required {
	background:#c4181f;
	color:#fff;
	font-size:1.2rem;
	padding:3px 5px;
	display:inline-block;
	margin-left:3px;
}

textarea + .required {
	margin:0;
}

fieldset div {
	margin-bottom:30px;
}

fieldset div:last-child {
	margin-bottom:0px;
}

form .flex {
	flex-wrap: wrap;
	justify-content:space-between;
}

@media (min-width: 769px) {
form .flex > div {
	width:calc( 50% - 15.01px);
}
}

#post_number,
.post_number {
	width:8em !important;
}

.flex input[type="text"]  {
	width:100%;
}

@media (min-width: 769px) {
.flex input:required {
	width:85%;
}
}

input[type="button"],
input[type="submit"] {
	border-radius:5px;
	background:#444;
	color:#fff;
	border:none;
    border-bottom: solid 3px #ccc;
	margin-left:5px;
	padding:5px 10px;
}

#btn-send {
	text-align:center;
	margin:30px 0;
}

#btn-send input[type="button"],
#btn-send input[type="submit"] {
	font-size:3rem;
	padding:10px 50px;
}

#btn-send input[type="submit"] {
	background:#c4181f;
}

#btn-send input[type="submit"][disabled] {
	background-color: #eee;
	color: #ccc;
	border-color: #ccc;
	cursor: default;
}


#btn-send input[type="button"]:active{
    -ms-transform: translateY(3px);
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    border-bottom: none;
}

input[type="button"]:focus {
	outline:none;
}

input[type="radio"] + label,
input[type="checkbox"] + label,
select + label{
	margin-left:3px;
	display:inline-block;
}

.newsletter_form {
	text-align: center;
}

.notes-privacy {
	border:5px solid #f6ddde;
	background:#fcf3f4;
	padding:30px;
	margin-top:50px;
}

.notes-privacy p,
.notes-privacy ul {
	font-size:1.4rem;
	line-height:1.2;
}

input:invalid,
textarea:invalid {
	background-color:#fcf3f4;
}

form p.notes{
	margin-bottom:5px;
}

.form_error {
	color:#F00;
}

input + p {
	margin-top:5px;
	
}

form table {
	width:auto;
	margin:0 auto;
}

/*-----------------------------------------------
	search
-----------------------------------------------*/
#gmenu-search form {
	display:inline-block;
	width:100%;
	text-align:center;
	margin:30px 0;
}

#gmenu-search img {
	width:15px;
	height:15px;
}

.search_text,
.search_btn,
.search_select {
	height:50px;
	line-height:50px;
    vertical-align:top;
}
	
.search_text,
.search_select {
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:0 10px;
}

.search_select {
	border-right:1px solid #ccc;
	cursor: pointer;
	background:#fff url(../images/ico-arrow_triangle_down.svg#gray) no-repeat center right 10px / 15px 15px;
	padding-right:50px;
}

.search_text:focus,
.search_select:focus {
	outline:none;
	background-color:#f5f5f5;
}

.search_select:focus option {
	margin:10px;
}

.search-conditions {
	margin:2em 0;
}

@media (min-width: 769px) {
.search_text {
	width:30em;
}	 
}

input[type="submit"].search_btn {
	color: #fff;
	border-radius:0 10px 10px 0px;
	border:none;
	outline:none;
	margin:0;
	padding:0 1em 0 40px;
	background:#444 url(../images/ico-search.svg#white) 15px center / 18px 18px no-repeat;
}

#gmenu-search .search_text,
body#search .search_text {
	border-left:1px solid #ccc;
	border-radius:10px 0 0 10px;
}

#gmenu-search label {
	display:none;
}

/*	search-products
------------------------------------------*/

#search-products {
	text-align:left;
	margin-bottom:50px;
}

@media (min-width: 769px) {
#search-products label {
	border-radius:10px 0 0 10px;
	background: #194375;
	height: 50px;
	line-height:50px;
	display:inline-block;
	color:#fff;
	padding:0 1em;
}
}

.ui-widget-content {
  border: 1px solid #ccc;
  background: #fff;
  color: #000;
  padding:10px;
  display:inline-block;
  max-height:300px;
  overflow:auto;
}
.ui-autocomplete {
  background: #fff;
  color: #000;
}
ui-menu-item {
  background: #fff;
  color: #000;
}
.ui-state-focus {
  background: #eee;
  color: #000;
  cursor:pointer;
}

/*-----------------------------------------------
	login
-----------------------------------------------*/
#login {
	text-align:center;
	margin:0 auto 50px auto;
	border:4px double #ccc;
	padding:10px;
}
@media (min-width: 769px) {
#login {
	padding:30px;
	display:table;
	width:auto;
}
}

@media (min-width: 769px) {
#login label {
	border-radius:10px 0 0 10px;
	background: #444;
	height: 50px;
	line-height:50px;
	display:inline-block;
	color:#fff;
	padding:0 1em;
	width:10em;
}
}

#login input[type="mail"] ,
#login input[type="password"] {
	height:50px;
	line-height:50px;
    vertical-align:top;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;
	padding:0 10px;
	margin-bottom:30px;
	width:20em;
}

#login input[type="submit"] {
	font-size:2rem;
	padding:10px 50px;
	margin-bottom:10px;
	margin-top:0;
}

#login p.txtSmall {
	margin-bottom:0;
}

#login #btn-send {
	margin:0;
}


/*-----------------------------------------------
	main / article / section
-----------------------------------------------*/
article {
	/* margin-bottom:50px; */
}
.menuless section {
	padding:10px;
}

.menuless section.part {
	padding:0;
}

/*	lmenu
------------------------------------------*/
#lmenu {
	position:fixed;
	width:100%;
	z-index:300;
	left:auto;
	transition: all 0.4s;
	background:#f5f5f5;
	padding:2em 0em;
	font-size:1.4rem;
}

#lmenu.hide {
	top:-1000px !important;
}

@media screen and (max-width: 768px) {
#lmenu {
	display:none !important;
}
}

.products #lmenu {
	background:#f3f5f8;
}

.technology #lmenu {
	background:#fefaf3;
}

.application #lmenu {
	background:#f8fbf4;
}

.why #lmenu {
	background:#f6f5f9;
}

.library #lmenu {
	background:#f2fbfc;
}

#lmenu ul {
	margin:0 auto;
	max-width:80%;
	display: table;
}
#lmenu li {
	display:inline-block;
	margin:5px 0;
}
#lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#gray);
	background-repeat:no-repeat;
	background-size:10px 10px;
	background-position:left center;
	padding-left:1em;
	margin-right:2em;
	text-decoration:none;
}
#lmenu li:last-child a {
	margin-right:0;
}

body.products #lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#blue);
}

body.technology #lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#orange);
}

body.why #lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#violet);
}

body.application #lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#green);
}

body.library #lmenu a {
	background-image:url(../images/ico-arrow_triangle.svg#turquoise);
}

#lmenu a:hover,
#lmenu a.current {
	color:#c4181f;
	background-image:url(../images/ico-arrow_triangle.svg#red) !important;
	text-decoration:underline;
}

/*	contact-share
------------------------------------------*/

#contact-share {
	font-size:3rem;
	padding:15px;
	background:#444;
	text-align:center;
	margin:25px 0px;
	color:#fff;
	clear:both;
}

@media (min-width: 769px) {
#contact-share {
	padding:30px;
	margin:50px 0px;
}	
}
.products #contact-share {
	background:#194375;
}

.library #contact-share {
	background:#01b3cd;
}

.technology #contact-share {
	background:#f3980f;
}

.application #contact-share {
	background:#7cba27;
}

.why #contact-share {
	background:#4b3a93;
}

#contact-share a {
	color:#fff;
}

@media (min-width: 769px) {
#contact-share ul {
	display: flex;
	justify-content:center;
}
}

#contact-share ul li {
	display:flex;
}


.btn-sns li {
	float:left;
}

@media (min-width: 769px) {
.btn-sns li {
	float:none;
}

}

.btn-twitter,
.btn-facebook {
	display:table-cell;
	vertical-align:middle;
}
.btn-twitter {
	margin-right:0.5em;
}
.fb_iframe_widget span {
	vertical-align: baseline !important;
}

.link-contact {
	background-image:url(../images/ico-mail.svg#white);
	background-size:1.2em 1.2em;
	background-position:center left;
	padding-left:1.5em;
}

@media (min-width: 769px) {
.link-contact {
	border-right:1px solid #fff;
	padding-right:1em;
	margin-right:1em;
}
}
.link-share {
	background-image:url(../images/ico-share.svg#white);
	background-size:1.2em 1.2em;
	background-position:center left;
	padding-left:1.5em;
	margin-right:1em;
}

/*	breadcrumb
------------------------------------------*/
#breadcrumb {
	/* margin-bottom:1em; */
	font-size:1.2rem;
}
#breadcrumb a {
	text-decoration:underline;
}

#breadcrumb ol li {
	display:inline;
	padding-left:0.5em;
}
#breadcrumb ol li:first-child {
	background-image:url(../images/ico-home.svg);
	background-size:1.2em 1.2em;
	background-position:top 1px left 0px;
	padding-left:1.5em;
}
#breadcrumb ol li::before {
	content: ">";
	padding-right:0.5em;
}
#breadcrumb ol li:first-child:before {
	content:"";
}

/*	link-pagetop
------------------------------------------*/

#link-pagetop {
	background:#666;
	right:20px;
	text-align:center;
	z-index:10000;
}
#link-pagetop a {
	display:block;
	width:50px;
	height:50px;
	padding:10px;
}

/*-----------------------------------------------
	footer-site
-----------------------------------------------*/
#footer-site {
	background:#f5f5f5;
	/* margin-top:15px; */
	padding:10px 0px;
	font-size:1.4rem;
}

@media (min-width: 769px) {
#footer-site {
	margin-top:30px;
	padding:20px 0px;
}
}

#footer-site img {
	vertical-align:bottom;
}

#footer-site ul {
	list-style:none;
	margin-bottom:1em;
}
#footer-site li {
	display:inline-block;
	padding-right:0.5em;
}

#link-note,
#auther {
	text-align:center;
}

#auther {
	margin-top:20px;
}

#link-info, #link-smenu {
	font-size:0px;
}
#link-smenu li {
	font-size:1.4rem;
	margin-bottom:1em;
}
#link-info li {
	font-size:1.2rem;
}

@media (min-width: 769px) {
#footer-site small img {
	width:150px;
}	

#auther {
	margin-top:0;
	text-align:left;
}

#footer-site .inner {
	display:flex;
	justify-content: space-between;
	flex-direction:row-reverse;
}

#link-note {
	text-align:right;
}

#link-info li:not( :last-child ) {
	border-right:1px solid #ccc;
	padding-right:0.5em;
	margin-right:0.5em;
}
}

/*	fmenu
------------------------------------------*/
#fmenu  {
	display:none;
}

@media (min-width: 769px) {
#fmenu {
	display:flex;
	justify-content: space-between;
}
#fmenu > div {
	width:calc(20% - 10.01px);
}

#fmenu ul {
	font-size:1.2rem;
}
#fmenu li {
	margin-bottom:0.2em;
}
#fmenu h2 {
	font-size:1.8rem;
	margin-bottom:1rem;
}
}

/*	Lity
------------------------------------------*/

/*! Lity - v2.4.1 - 2020-04-26
* http://sorgalla.com/lity/
* Copyright (c) 2015-2020 Jan Sorgalla; Licensed MIT */
.lity {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  background: #0b0b0b;
  background: rgba(0, 0, 0, 0.9);
  outline: none !important;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.lity.lity-opened {
  opacity: 1;
}
.lity.lity-closed {
  opacity: 0;
}
.lity * {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
.lity-wrap {
  z-index: 9990;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  outline: none !important;
}
.lity-wrap:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.25em;
}
.lity-loader {
  z-index: 9991;
  color: #fff;
  position: absolute;
  top: 50%;
  margin-top: -0.8em;
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-family: Arial, Helvetica, sans-serif;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.lity-loading .lity-loader {
  opacity: 1;
}
.lity-container {
  z-index: 9992;
  position: relative;
  text-align: left;
  vertical-align: middle;
  display: inline-block;
  white-space: normal;
  max-width: 100%;
  max-height: 100%;
  outline: none !important;
}
.lity-content {
  z-index: 9993;
  width: 100%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
       -o-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  -o-transition: -o-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease;
}
.lity-loading .lity-content,
.lity-closed .lity-content {
  -webkit-transform: scale(0.8);
      -ms-transform: scale(0.8);
       -o-transform: scale(0.8);
          transform: scale(0.8);
}
.lity-content:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
.lity-close {
  z-index: 9994;
  width: 35px;
  height: 35px;
  position: fixed;
  right: 0;
  top: 0;
  -webkit-appearance: none;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
  text-decoration: none;
  text-align: center;
  padding: 0;
  color: #fff;
  font-style: normal;
  font-size: 35px;
  font-family: Arial, Baskerville, monospace;
  line-height: 35px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  border: 0;
  background: none;
  outline: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.lity-close:active {
  top: 1px;
}
/* Image */
.lity-image img {
  max-width: 100%;
  display: block;
  line-height: 0;
  border: 0;
}
/* iFrame */
.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
  width: 100%;
  max-width: 964px;
}
.lity-iframe-container {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: auto;
  pointer-events: auto;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-overflow-scrolling: touch;
}
.lity-iframe-container iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}
.lity-hide {
  display: none;
}
