@charset "utf-8";
/* このファイルはUTF-8のBOMなし(UTF-8N)で保存しています */

/**
 * CSS Information
 * ===============================================================
 *
 * Site URL:  http://
 * File name: module.css
 * Summary:   モジュール用スタイル
 * Author:    CrEa Inc.
 *
 * -----------------------------------
 *
 * TOC:
 *     =1    modules - parts
 *     =2    modules - block
 *     =3    modules for javascript
 *
 * ===============================================================
*/



/** =1
 * ========================================
 * modules - parts
 * ========================================
 */


/*
 * icon
 * ----------------------------------
 */
[class^="icon-"] {
	display: inline-block;
	vertical-align: middle;
}

[class^="icon-"] svg {
	width: 100%;
	height: 100%;
	vertical-align: top;
	/*stroke: #000;*/
	stroke-width: 1.5;
	stroke-linecap: round;
	/*fill: none;*/
}
/*[class^="icon-"] svg path,
[class^="icon-"] svg circle {
	stroke: #000;
	fill: none;
}*/

[class^="icon-"].white svg path,
[class^="icon-"].white svg circle {
	stroke: #fff;
}
[class^="icon-"].lightGray svg path,
[class^="icon-"].lightGray svg circle {
	stroke: #ddd;
}
[class^="icon-"].gray svg path,
[class^="icon-"].gray svg circle {
	stroke: #555;
}

[class^="icon-"].transition svg path,
[class^="icon-"].transition svg circle {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.no-touch [class^="icon-"].transition:hover svg path,
.no-touch [class^="icon-"].transition:hover svg circle {
	stroke: #a5d8e4;
}

	/* [ arrow ]
	------------------------------ */
	.icon-arrow {
		width: 20px;
		height: 40px;
	}
	.icon-arrow.arrowLeft {
		-webkit-transform: rotateY(-180deg);
		-moz-transform: rotateY(-180deg);
		-o-transform: rotateY(-180deg);
		-ms-transform: rotateY(-180deg);
		transform: rotateY(-180deg);
	}
	.icon-arrow.arrowRight {}
	.icon-arrow.arrowUp {
		-webkit-transform: rotate(-90deg);
		-moz-transform: rotate(-90deg);
		-o-transform: rotate(-90deg);
		-ms-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}
	.icon-arrow.arrowDown {
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-o-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	.icon-arrow.small {
		width: 10px;
		height: 20px;
	}
	.icon-arrow.small svg {
		stroke-width: 3;
	}
	.icon-arrow.x-small {
		width: 4px;
		height: 8px;
	}
	.icon-arrow.x-small svg {
		stroke-width: 6;
	}

	/* [ close ]
	------------------------------ */
	.icon-close {
		width: 30px;
		height: 30px;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.icon-close {
				width: 20px;
				height: 20px;
			}
			.icon-close svg {
				stroke-width: 2;
			}
		}


	/* [ search ]
	------------------------------ */
	.icon-search,
	.icon-searchAnim {
		width: 30px;
		height: 30px;
	}
	.icon-searchAnim {
		cursor: pointer;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.icon-search,
			.icon-searchAnim {
				width: 20px;
				height: 20px;
			}
			.icon-search svg,
			.icon-searchAnim svg {
				/*stroke-width: 2;*/
				stroke-width: 1.6;
			}
		}


/*
 * title
 * ----------------------------------
 */

	/* [ titleBasic ]
	------------------------------ */
	.titleBasic {
		color: #000;
		letter-spacing: .05em;
		line-height: 1;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.titleBasic {
				margin-bottom: .85em;
				font-size: 2.875rem;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.titleBasic {
				margin-bottom: 1.3em;
				font-size: 30px;
				font-size: 3.0rem;
			}
		}


/*
 * link
 * ----------------------------------
 */

	/* [ icon in link ]
	------------------------------ */
	a.transition [class^="icon-"] {
		position: relative;
		top: -.1em;
		margin-left: 1.0em;
	}
	a.transition .icon-arrow.x-small {
		top: -.05em;
	}
	.no-touch a.transition [class^="icon-"] svg path,
	.no-touch a.transition [class^="icon-"] svg circle {
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.no-touch a.transition:hover [class^="icon-"] svg path,
	.no-touch a.transition:hover [class^="icon-"] svg circle {
		stroke: #a5d8e4;
	}

	/* [ image ]
	------------------------------ */
	a.linkImage {
		display: -webkit-inline-flex;
		display: inline-flex;
		align-items: center;
	}
	a.linkImage .image {
		margin-right: 1.0em;
	}
	a.linkImage .text {
		line-height: 1.4;
	}
	/*a.linkImage .text [class^="icon-"] {
		position: relative;
		top: -.1em;
		margin-left: 1.0em;
	}*/
	/*.no-touch .linkImage.transition .text [class^="icon-"] svg path,
	.no-touch .linkImage.transition .text [class^="icon-"] svg circle {
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		-o-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	.no-touch .linkImage.transition:hover .text [class^="icon-"] svg path,
	.no-touch .linkImage.transition:hover .text [class^="icon-"] svg circle {
		stroke: #a5d8e4;
	}*/

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.linkImage .image {
				max-width: 40px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.linkImage .image {
				max-width: 50px;
			}
		}

/*
 * form
 * ----------------------------------
 */

	/* [ group ]
	------------------------------ */
	.input-group {
		position: relative;
		display: table;
		width: 100%;
		border-collapse: collapse;
	}
	.input-group .form-control,
	.input-group .input-group-btn,
	.input-group .input-group-add {
		display: table-cell;
	}
	.input-group .form-control {
		width: 100%;
	}
	.input-group .input-group-btn,
	.input-group .input-group-add {
		width: 1%;
		white-space: nowrap;
		vertical-align: middle;
	}

	.input-group .input-group-add {
		border-radius: 3px;
	}
	.input-group .input-group-add.large {
		border-radius: 5px;
	}

	.input-group .form-control:first-child > *,
	.input-group .input-group-btn:first-child > *,
	.input-group .input-group-add:first-child > * {
		border-right: 0;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
	.input-group .form-control:last-child > *,
	.input-group .input-group-btn:last-child > *,
	.input-group .input-group-add:last-child > * {
		border-left: 0;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}


/*
 * iframe
 * ----------------------------------
 */

.iframeWrapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	/* padding-top: 66.67%;
	padding-top: -webkit-calc( 480/720 * 100% );
	padding-top: calc( 480/720 * 100% ); */
}

.iframeWrapper iframe,
.iframeWrapper video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	vertical-align: top;
}

.touch .iframeWrapper {
	padding-top: 0;
}
.touch .iframeWrapper iframe,
.touch .iframeWrapper video {
	position: static;
}


/*
 * list
 * ----------------------------------
 */

	/* [ line ]
	------------------------------ */
	.listLine {
		border-top: 1px solid #ddd;
	}
	.listLine .itemList {
		border-bottom: 1px solid #ddd;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.listLine .itemList {
				padding-top: 15px;
				padding-bottom: 15px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.listLine .itemList {
				padding-top: 35px;
				padding-bottom: 35px;
			}
		}


	/* [ information ]
	------------------------------ */
	.listInformation {
		letter-spacing: .05em;
	}

	.listInformation .itemList .meta {
		color: #555;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.listInformation .itemList .meta .category {
		display: inline-block;
		/*color: #a5d8e4;*/
		color: #7bc7d9;
	}
	.listInformation .itemList .meta .category::before {
		display: inline-block;
		margin-right: .5em;
		content: "[";
	}
	.listInformation .itemList .meta .category::after {
		display: inline-block;
		margin-left: .5em;
		content: "]";
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.listInformation .itemList .meta {
				margin-bottom: .2em;
			}
			.listInformation .itemList .meta .category {
				margin-left: .75em;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.listInformation .itemListInner {
				display: -webkit-flex;
				display: flex;
				-webkit-justify-content: center;
				justify-content: center;
				-webkit-align-items: baseline;
				align-items: baseline;
			}

			.listInformation .itemList {
				padding-right: 1.4em;
				padding-left: 1.4em;
			}
			.listInformation .itemList .meta {
				-webkit-flex-shrink: 0;
				flex-shrink: 0;
				width: 190px;
				padding-right: 20px;
			}
			.listInformation .itemList .meta .category {
				margin-left: 2.5em;
			}

			.listInformation .itemList .title {
				-webkit-flex-grow: 1;
				flex-grow: 1;
			}
		}



/*
 * タッチデバイス以外では「tel:」リンク無効
 * ----------------------------------
 */
.no-touch a[href^="tel:"] {
	color: inherit;
	cursor: default;
	pointer-events: none;
}




/** =2
 * ========================================
 * modules - block
 * ========================================
 */


/*
 * header
 * ----------------------------------
 */
#header {
	position: relative;
	z-index: 1000;
	border-bottom: 1px solid #ddd;
	background-color: #fff;
}
#header .logo {
	margin-right: auto;
	margin-left: auto;
}
#header .logo a {
	display: block;
	line-height: 1;
}

#header .logo .logo-pj {
	display: block;
}
#header .logo .logo-pj svg {
	width: 100%;
	height: 100%;
	vertical-align: top;
	fill: #000;
}
	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		#header {
			padding: 17px 0;
		}
		#header .logo {
			width: 110px;
			height: 16px;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		#header {
			position: relative;
			padding: 38px 0 37px;
		}
		#header .logo {
			width: 164px;
		}
	}

	/* -- >>> styles for medium layout ----- */
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}

	/* -- >>> styles for wide layout ----- */
	@media screen and (min-width: 1025px) {
	}

	/* navHandler */
	#header .navHandler {
		position: absolute;
		top: 50%;
		left: 4.6875%;
		-webkit-transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-o-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
	#header .navHandler a {
		display: block;
		overflow: hidden;
		position: relative;
		width: 20px;
		height: 15px;
		text-indent: 100%;
		white-space: nowrap;
	}
	#header .navHandler a::before {
		position: absolute;
		top: 7px;
		right: 0;
		left: 0;
		border-top: 1px solid #000;
		-webkit-box-shadow: 0 7px 0 #000, 0 -7px 0 #000;
		-moz-box-shadow: 0 7px 0 #000, 0 -7px 0 #000;
		box-shadow: 0 7px 0 #000, 0 -7px 0 #000;
		content: "";
	}

	/* btnSearch */
	#header .btnSearch {
		position: absolute;
		top: 50%;
		right: 40px;
		-webkit-transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-o-transform: translate(0, -50%);
		-ms-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}
	#header .btnSearch a {
		display: block;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			#header .btnSearch {
				right: 4.6875%;
				width: 20px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			#header .btnSearch {
				right: 40px;
			}
		}


/*
 * footer
 * ----------------------------------
 */
#footer {
	padding-top: 20px;
	padding-bottom: 40px;
	border-top: 1px solid #ddd;
	background-color: #fff;
}

	/* list SNS */
	.listSNS {
		margin-bottom: 15px;
		text-align: center;
	}
	.listSNS a {
		display: block;
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		border-radius: 50%;
		background-color: #cce6ec;
		-webkit-transition: background-color .3s ease;
		-moz-transition: background-color .3s ease;
		-o-transition: background-color .3s ease;
		transition: background-color .3s ease;
	}
	.no-touch .listSNS a:hover {
		background-color: #7bc7d9;
	}
	.listSNS .itemNav {
		display: inline-block;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.listSNS .itemNav {
				width: 25px;
				margin-right: 5px;
				margin-left: 5px;
			}
			.listSNS a {
				width: 25px;
				height: 25px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.listSNS .itemNav {
				width: 30px;
				margin-right: 6px;
				margin-left: 6px;
			}
			.listSNS a,
			.listSNS a [class^="icon-"] {
				width: 30px;
				height: 30px;
			}
		}


/*
 * navigation
 * ----------------------------------
 */

	/* [ nav global ]
	------------------------------ */
	#nav {}

	#nav .navList .itemNav {
		line-height: 1.4;
		letter-spacing: .05em;
	}
	#nav .navList .itemNav a {
		display: inline-block;
		position: relative;
		padding: 0.5em 0;
		color: #000;
		-webkit-transition: color 0.3s ease;
		-moz-transition: color 0.3s ease;
		-o-transition: color 0.3s ease;
		transition: color 0.3s ease;
	}
	#nav .navList .itemNav.is-current > a,
	#nav .navList .itemNav.is-current .navListSub .navListSubTitle a,
	.no-touch #nav .navList .itemNav a:hover {
		color: #a5d8e4;
	}
	#nav .navList .itemNav a::after {
		display: none;
		position: absolute;
		right: 0;
		left: 0;
		border-bottom: 2px solid #a5d8e4;
		content: "";
	}
	#nav .navList .itemNav.is-current > a::after,
	#nav .navList .itemNav.is-current .navListSub .navListSubTitle a::after {
		display: block;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			#nav {
				position: absolute;
				top: 0;
				right: 0;
				bottom: 0;
				left: 0;
				z-index: 1001;
				background-color: #eee;
				background-color: rgba(238,238,238,.92);
			}
			#nav .navInner {
				position: absolute;
				width: 80%;
				top: 0;
				right: 20%;
				bottom: 0;
				left: 0;
				-webkit-box-sizing: border-box;
				-moz-box-sizing: border-box;
				box-sizing: border-box;
				background-color: #fff;
				-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, .1),
														0px 0px 20px rgba(0, 0, 0, .1);
				-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, .1),
												 0px 0px 20px rgba(0, 0, 0, .1);
				box-shadow: 0px 0px 10px rgba(0, 0, 0, .1),
										0px 0px 20px rgba(0, 0, 0, .1);
				padding: 20px 6.25%;
			}
			#nav.pattern02 {
				background-color: #fff;
				background-color: rgba(255,255,255,.98);
			}
			#nav.pattern02 .navInner {
				position: static;
				width: 100%;
				background-color: rgba(255,255,255,.98);
				-webkit-box-shadow: none;
				-moz-box-shadow: none;
				box-shadow: none;
			}

			#nav .navHandler {
				position: relative;
				top: -7px;
				left: -0.25%;
				margin-bottom: 25px;
			}
			#nav.pattern02 .navHandler {
				left: -1.5%;
			}
			#nav .navHandler a {
				display: inline-block;
			}

			#nav .navList .itemNav {
				font-weight: 200;
				line-height: 1.2;
			}
			#nav .navList .itemNav a {
				font-size: 2.5rem;
			}
			#nav .navList .itemNav a::after {
				bottom: .25em;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			#nav {
				border-bottom: 1px solid #ddd;
				background-color: #fff;
			}
			#home #nav {
				border-bottom: none;
			}
			#nav .navList {
				display: -webkit-flex;
				display: flex;
				-webkit-justify-content: space-between;
				justify-content: space-between;
				-webkit-align-items: center;
				align-items: center;
				text-align: center;
				margin-right: -10px;
				margin-left: -10px;
			}
			#nav .navList .itemNav {
				padding-right: 10px;
				padding-left: 10px;
				font-weight: 500;
			}

			#nav .navList .itemNav a {
				padding: 1.75em 0;
			}
			#nav .navList .itemNav a::after {
				bottom: 1.25em;
			}
		}

		/* -- >>> styles for medium layout ----- */
		@media screen and (min-width: 768px) and (max-width: 1024px) {
			#nav .navInner {
				max-width: 920px;
				padding-right: 6.521739130434783%;
				padding-right: -webkit-calc( 60/920 * 100%);
				padding-right: calc( 60/920 * 100%);
				padding-left: 6.521739130434783%;
				padding-left: -webkit-calc( 60/920 * 100%);
				padding-left: calc( 60/920 * 100%);
			}
		}

		/* -- >>> styles for wide layout ----- */
		@media screen and (min-width: 1025px) {
			#nav .navInner {
				width: 920px;
				margin-right: auto;
				margin-left: auto;
			}
		}


		/* sub menu */
		#nav .navListSub {
			position: relative;
		}
		#nav .navListSub .navListSubTitle {
			/*font-weight: 500;*/
			font-weight: 200;
		}
		#nav .navListSub.is-open .navListSubTitle a {
			color: #a5d8e4;
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 767px) {
				#nav .navListSub .navListSubTitle {
					font-weight: 200;
				}
				#nav .navListSub .navListSubContent {
					margin-top: .5em;
					margin-bottom: .5em;
					font-weight: 500;
					line-height: 1.4;
				}
				#nav .navListSub .navListSubChild a {
					font-size: 1.5rem;
					color: #555;
				}
				#nav .navListSub .navListSubChild .is-current a {
					color: #a5d8e4;
				}
			}

			/* -- >>> styles for medium & wide layout ----- */
			@media screen and (min-width: 768px) {
				#nav .navListSub .navListSubTitle {
					font-weight: 500;
				}
				#nav .navListSub .navListSubContent {
					position: absolute;
					top: 100%;
					right: -3.4em;
					left: -2.0em;
					text-align: left;
				}
				#nav .itemNavCreation .navListSub .navListSubContent {
					right: -5.0em;
				}
				#nav .itemNavPickup .navListSub .navListSubContent {
					right: -5.0em;
				}
				#nav .itemNavAbout .navListSub .navListSubContent {
					right: -8.0em;
				}

				#nav .navListSub .navListSubChild {
					padding-bottom: 1.0em;
					-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .1),
															0 5px 10px rgba(0, 0, 0, .1);
					-moz-box-shadow:    0 2px 4px rgba(0, 0, 0, .1),
															0 5px 10px rgba(0, 0, 0, .1);
					box-shadow:         0 2px 4px rgba(0, 0, 0, .1),
															0 5px 10px rgba(0, 0, 0, .1);
					background-color: #fff;
					background-color: rgba(255,255,255,.95);
					font-size: 13px;
					font-size: 1.3rem;
				}
				#nav .navListSub .navListSubChild a {
					padding: .85em 2.15em;
					white-space: nowrap;
				}
			}

			/* -- >>> styles for medium layout ----- */
			@media screen and (min-width: 768px) and (max-width: 1024px) {
			}

			/* -- >>> styles for wide layout ----- */
			@media screen and (min-width: 1025px) {
			}


	/* [ nav other ]
	------------------------------ */
	#nav .navOther {}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			#nav .navOther {
				margin-top: 30px;
				padding-top: 35px;
				border-top: 1px solid #ddd;
				font-weight: 500;
				line-height: 1.4;
				letter-spacing: .05em;
			}
			#nav .navOther a {
				display: block;
				padding: .5em 0;
				color: #000;
				font-size: 1.5rem;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
		}


	/* [ nav country ]
	------------------------------ */
	#nav .navCountry {
		position: absolute;
		line-height: 1.0;
		letter-spacing: .05em;
	}
	#nav .navCountry .itemNav {
		display: inline-block;
		position: relative;
		margin: 0 .5em;
	}
	#nav .navCountry .itemNav.is-current::after {
		display: block;
		position: absolute;
		right: 0;
		bottom: -40%;
		left: 0;
		border-bottom: 1px solid #000;
		content: "";
	}
	#nav .navCountry .itemNav a {
		display: block;
		color: #888;
		font-size: 1.5rem;
	}
	#nav .navCountry .itemNav.is-current a {
		color: #000;
	}
	.no-touch #nav .navCountry .itemNav a:hover {
		color: #a5d8e4;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			#nav .navCountry {
				top: 20px;
				right: 6.25%;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			#nav .navCountry {
				top: 50px;
				right: 100px;
				z-index: 1000;
				-webkit-transform: translate(0%, -50%);
				-moz-transform: translate(0%, -50%);
				-o-transform: translate(0%, -50%);
				-ms-transform: translate(0%, -50%);
				transform: translate(0%, -50%);
			}
		}


	/* [ nav footer ]
	------------------------------ */
	.navFooter {
		margin-bottom: 1.0em;
		font-size: 12px;
		font-size: 1.2rem;
		text-align: center;
		letter-spacing: .05em;
	}
	.navFooter .itemNav {
		display: inline-block;
		margin-right: .75em;
		margin-left: .75em;
	}
	.navFooter .itemNav + .itemNav::before {
		display: inline-block;
		position: relative;
		top: -.05em;
		margin-right: 1.5em;
		content: "|";
	}


	/* [ nav local ]
	------------------------------ */
	.navLocal {
		position: relative;
		z-index: 100;
		border-bottom: 1px solid #ddd;
		background-color: #fff;
	}
	/*.navLocal::before,
	.navLocal::after {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		content: "";
	}
	.navLocal::before {
		z-index: 101;
		border-bottom: 1px solid #ddd;
	}
	.navLocal::after {
		top: 0;
		z-index: -1;
		background: #fff;
	}*/

	.navListLocal {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		/*font-size: 0;
		text-align: center;
		letter-spacing: -.4em;
		word-spacing: -.4em;*/
	}
	.navLocal.column2 .navListLocal {
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.navListLocal .itemNav {
		/*display: inline-block;*/
		/*overflow: hidden;*/
		/*width: 50%;*/
		-webkit-flex-grow: 1;
		flex-grow: 1;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		background-color: #fff;
		/*font-size: 14px;
		font-size: 1.4rem;
		vertical-align: middle;*/
		letter-spacing: .05em;
		/*word-spacing: 0;*/
		-webkit-transition: all 0.4s ease;
		-moz-transition: all 0.4s ease;
		-o-transition: all 0.4s ease;
		transition: all 0.4s ease;
	}
	.navLocal.column2 .navListLocal .itemNav {
		width: 50%;
		-webkit-flex-grow: 0;
		flex-grow: 0;
	}
	.navLocal.column2 .navListLocal .itemNav:nth-child(2n+1) {
		border-right: 1px solid #ddd;
	}
	.navListLocal .itemNav a {
		display: block;
		padding-top: 1.25em;
		padding-bottom: 1.25em;
		color: #555;
	}
	.navListLocal .itemNav.js-dropdown.is-open {
		/*width: 100%;*/
		-webkit-flex-basis: 100%;
		flex-basis: 100%;
		border-left: 0 solid transparent;
	}

	.navLocal.is-active .navListLocal .itemNav.js-dropdown:not(.is-open) {
		/*width: 0;*/
		-webkit-flex-basis: 0;
		flex-basis: 0;
		opacity: 0;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.navLocal {}

			.navListLocal.l-inner {
				padding-right: 0;
				padding-left: 0;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.navLocal {}
		}

		/* nav local sub */
		.navListLocalSub {
			position: relative;
		}

		.navListLocalSub .navListLocalSubTitle {
			position: relative;
			z-index: 1;
			background-color: #fff;
		}
		.navListLocalSub .navListLocalSubTitle.js-accordionTrigger::before,
		.navListLocalSub .navListLocalSubTitle.js-accordionTrigger::after {
			display: none;
		}
		.navListLocalSub .navListLocalSubTitle a {
			position: relative;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
		}
		.navListLocalSub .navListLocalSubTitle .text {
			display: inline-block;
			position: relative;
			left: 50%;
			-webkit-transform: translateX(-50%);
			-moz-transform: translateX(-50%);
			-o-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
			transform: translateX(-50%);
			white-space: nowrap;
			/*-webkit-transition: all 0.4s ease;
			-moz-transition: all 0.4s ease;
			-o-transition: all 0.4s ease;
			transition: all 0.4s ease;*/
		}
		.itemNav.js-accordion.is-open .navListLocalSub .navListLocalSubTitle .text {
			/*left: 0;
			-webkit-transform: translateX(0);
			-moz-transform: translateX(0);
			-o-transform: translateX(0);
			-ms-transform: translateX(0);
			transform: translateX(0);*/
		}
		.navListLocalSub .navListLocalSubTitle .text::after {
			display: inline-block;
			opacity: 1;
			position: relative;
			top: -.25em;
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			-o-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
			margin-left: 1.0em;
			border-left: 1px solid #555;
			border-bottom: 1px solid #555;
			content: "";
			-webkit-transition: opacity 0.4s ease;
			-moz-transition: opacity 0.4s ease;
			-o-transition: opacity 0.4s ease;
			transition: opacity 0.4s ease;
		}
		.itemNav.js-accordion.is-open .navListLocalSub .navListLocalSubTitle .text::after {
			opacity: 0;
		}

		.navListLocalSub .navListLocalSubContent {
			position: absolute;
			top: 100%;
			right: 0;
			left: 0;
			z-index: 0;
			background-color: #fff;
			background-color: rgba(255,255,255, .95);
			-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, .1),
													0 5px 10px rgba(0, 0, 0, .1);
			-moz-box-shadow:    0 2px 4px rgba(0, 0, 0, .1),
													0 5px 10px rgba(0, 0, 0, .1);
			box-shadow:         0 2px 4px rgba(0, 0, 0, .1),
													0 5px 10px rgba(0, 0, 0, .1);
		}
		.navListLocalSub .navListLocalSubContent::after {
			display: block;
			position: absolute;
			top: 0;
			right: 0;
			left: 0;
			z-index: -1;
			border-top: 1px solid #fff;
			content: "";
		}
		/*.navListLocalSub .navListLocalSubContent::before,
		.navListLocalSub .navListLocalSubContent::after {
			display: block;
			position: absolute;
			right: 0;
			left: 0;
			z-index: -1;
			width: 100%;
			background: -moz-linear-gradient(top, rgba(0,0,0,0.09) 0%, rgba(0,0,0,0) 100%);
			background: -webkit-linear-gradient(top, rgba(0,0,0,0.09) 0%,rgba(0,0,0,0) 100%);
			background: linear-gradient(to bottom, rgba(0,0,0,0.09) 0%,rgba(0,0,0,0) 100%);
			content: "";
		}
		.navListLocalSub .navListLocalSubContent::before {
			bottom: -5px;
			height: 5px;
		}
		.navListLocalSub .navListLocalSubContent::after {
			bottom: -10px;
			height: 10px;
		}*/

		.navListLocalSub .navListLocalSubChild {
			padding-bottom: 1.0em;
			text-align: left;
		}
		.navListLocalSub .navListLocalSubChild .itemNavSub {
			border-top: 1px solid #eee;
			border-top-color: rgba(221,221,221,.5);
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 767px) {
				.navListLocalSub .navListLocalSubTitle a {
					/*height: 48px;*/
					padding-top: 15px;
					padding-bottom: 15px;
					line-height: 18px;
				}
				.itemNav.js-accordion .navListLocalSub .navListLocalSubTitle a {
					margin-right: 6.25%;
					margin-left: 6.25%;
				}
				.navLocal.column2 .itemNav.js-accordion .navListLocalSub .navListLocalSubTitle a {
					margin-right: 12.5%;
					margin-left: 12.5%;
				}
				.navListLocalSub .navListLocalSubTitle .text::after {
					width: 5px;
					height: 5px;
				}
				.itemNav.js-accordion.is-open .navListLocalSub .navListLocalSubTitle .text {
					/*left: 6.25%;*/
				}
				.navLocal.column2 .itemNav.js-accordion.is-open .navListLocalSub .navListLocalSubTitle .text {
					/*left: 12.5%;*/
				}

				.navListLocalSub .navListLocalSubChild {
					padding-right: 6.25%;
					padding-left: 6.25%;
				}
				.navLocal.column2 .navListLocalSub .navListLocalSubChild {
					padding-right: 12.5%;
					padding-left: 12.5%;
				}
			}

			/* -- >>> styles for medium & wide layout ----- */
			@media screen and (min-width: 768px) {
				.navListLocalSub .navListLocalSubTitle a {
					height: 60px;
				}
				.itemNav:nth-child(2n) .navListLocalSub .navListLocalSubTitle .text {
					padding-right: 2.0em;
					padding-left: 2.0em;
				}
				.navListLocalSub .navListLocalSubTitle .text::after {
					width: 7px;
					height: 7px;
				}

				.itemNav:nth-child(2n+1) .navListLocalSub .navListLocalSubContent {
					left: -2.0em;
				}
				.itemNav:nth-child(2n) .navListLocalSub .navListLocalSubContent {
					right: -2.0em;
				}
				.navListLocalSub .navListLocalSubChild {
					padding-right: 2.0em;
					padding-left: 2.0em;
				}
			}



/*
 * search form
 * ----------------------------------
 */
#serchForm.blockSearch {
	position: absolute;
	right: 0;
	left: 0;
	z-index: 999;
	/*padding-top: 20px;
	padding-bottom: 20px;*/
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #fff;
	/*background-color: rgba(255,255,255,.92);*/
	-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, .2),
											0px 0px 20px rgba(0, 0, 0, .2);
	-moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, .2),
									 0px 0px 20px rgba(0, 0, 0, .2);
	box-shadow: 0px 0px 10px rgba(0, 0, 0, .2),
							0px 0px 20px rgba(0, 0, 0, .2);
}

.blockSearch .formSearch {
	max-width: 560px;
}
#serchForm.blockSearch .formSearch {
	margin-right: auto;
	margin-left: auto;
}
.blockSearch .formSearch input[type="text"] {
	padding: .75em 1.0em;
}
.blockSearch .formSearch input[type="text"].large {
	font-size: 16px;
	line-height: 24px;
}
.blockSearch .formSearch [type="submit"].large {
	line-height: 1;
}
.no-touch .blockSearch .formSearch [type="submit"].btn:hover {
	border-color: #ddd;
	color: #000;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.blockSearch {
			top: 49px;
		}
		.blockSearch .formSearch input[type="text"] {
			height: 50px;
			padding: 12px 16px;
		}
		.blockSearch .formSearch [type="submit"].large {
			width: 50px;
			height: 50px;
			padding: 14px;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		.blockSearch {
			top: 100px;
		}
		.blockSearch .formSearch [type="submit"].large {
			padding: 12px 19px;
		}
		.blockSearch .formSearch [type="submit"].large .icon-search {
			width: 24px;
			height: 24px;
		}
	}



/*
 * pagetop
 * ----------------------------------
 */

.pagetop {
	opacity: 0;
	position: fixed;
	right: 0;
	bottom: -100px;
	z-index: 100;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-ttransition-property: opacity, bottom;
	-moz-transition-property: opacity, bottom;
	-o-transition-property: opacity, bottom;
	transition-property: opacity, bottom;
}
.pagetop.is-appear {
	opacity: 1;
	bottom: 0;
}
.pagetop.is-footer {
	position: absolute;
}

.pagetop a.btn {
	display: block;
	width: 50px;
	height: 50px;
	padding: 0;
	padding-top: 10px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.pagetop a.btn .icon-arrow.small {
	width: 8px;
	height: 16px;
}
.no-touch .pagetop a.btn .icon-arrow svg path {
	-webkit-transition: stroke 0.3s ease;
	-moz-transition: stroke 0.3s ease;
	-o-transition: stroke 0.3s ease;
	transition: stroke 0.3s ease;
}
.no-touch .pagetop a.btn:hover .icon-arrow svg path {
	stroke: #a5d8e4;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.pagetop {
			-webkit-transform: scale(.75);
			-moz-transform: scale(.75);
			-o-transform: scale(.75);
			-ms-transform: scale(.75);
			transform: scale(.75);
			transform-origin: right bottom;
			padding-right: 14px;
			padding-bottom: 20px;
		}
		.pagetop a.btn {
			padding-top: 12px;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		.pagetop {
			padding-right: 40px;
			padding-bottom: 20px;
		}
	}

	/* -- >>> styles for medium layout ----- */
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}

	/* -- >>> styles for wide layout ----- */
	@media screen and (min-width: 1025px) {
	}



/** =3
 * ========================================
 * modules for javascript
 * ========================================
 */


/*
 * js-switchImg
 * ----------------------------------
 */
.js-switchImg { visibility: hidden; }


/*
 * js-dropdown
 * ----------------------------------
 */
.js-dropdown {}
.js-dropdownTrigger {}
.js-dropdownContent {
	z-index: 1000;
}
.js-dropdownContent {
	display: none;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.js-dropdown.js-dropdownSpOff .js-dropdownContent {
			display: block;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
	}


/*
 * js-accordion
 * ----------------------------------
 */
.js-accordion {}

.js-accordionTrigger {
	position: relative;
	cursor: pointer;
}
.js-accordionTrigger::before,
.js-accordionTrigger::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 30px;
	width: 16px;
	height: 2px;
	margin-top: -1px;
	-webkit-border-radius: 9999px;
	-moz-border-radius: 9999px;
	border-radius: 9999px;
	background: #000;
	content: "";
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.js-accordionTrigger::after {
	opacity: 0;
}
.js-accordion .js-accordionTrigger::before {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
.js-accordion .js-accordionTrigger::after {
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
	opacity: 1;
}
.js-accordion.is-open .js-accordionTrigger::before,
.js-accordion.is-open .js-accordionTrigger::after {
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-o-transform: rotate(0);
	-ms-transform: rotate(0);
	transform: rotate(0);
	opacity: 1;
}

.js-accordionContent {
	display: none;
}
.js-accordion.is-open .js-accordionContent {
	display: block;
}
.js-navLocal .js-accordion.is-open .js-accordionContent {
	display: none;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.js-accordionTrigger::before,
		.js-accordionTrigger::after {
			right: 20px;
			width: 11px;
			height: 1px;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		.js-accordionTrigger::before,
		.js-accordionTrigger::after {
			right: 30px;
			width: 16px;
			height: 2px;
			margin-top: -1px;
		}
	}

	/* [ radius ]
	------------------------------ */
	.accordionRadius.js-accordion {}
	.accordionRadius.js-accordion .js-accordionTrigger {
		-webkit-border-radius: 9999px;
		-moz-border-radius: 9999px;
		border-radius: 9999px;
		background-color: #a5d8e4;
		color: #fff;
		letter-spacing: .05em;
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.4;
		-webkit-transition: background-color 0.3s ease;
		-moz-transition: background-color 0.3s ease;
		-o-transition: background-color 0.3s ease;
		transition: background-color 0.3s ease;
	}
	.accordionRadius.js-accordion .js-accordionTrigger::before,
	.accordionRadius.js-accordion .js-accordionTrigger::after {
		background-color: #fff;
	}
	.no-touch .accordionRadius.js-accordion .js-accordionTrigger:hover {
		background-color: #cce6ec;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.accordionRadius.js-accordion + .accordionRadius.js-accordion {
				margin-top: 10px;
			}
			.accordionRadius.js-accordion .js-accordionTrigger {
				padding: 1.0em 1.875em;
			}
			.accordionRadius.js-accordion .js-blockRegionContent {
				margin-top: 20px;
				padding-bottom: 30px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.accordionRadius.js-accordion + .accordionRadius.js-accordion {
				margin-top: 20px;
			}
			.accordionRadius.js-accordion .js-accordionTrigger {
				padding: 1.1875em 1.875em;
			}
			.accordionRadius.js-accordion .js-blockRegionContent {
				margin-top: 40px;
				padding-bottom: 60px;
			}
		}



/*
 * slider
 * ----------------------------------
 */
.slick-slider {}
.slick-slider img {
	display: inline-block;
	width: 100%;
	height: auto;
	vertical-align: top;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.slick-slider.slick-dotted {
			margin-bottom: 43px;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		.slick-slider.slick-dotted {
			margin-bottom: 85px;
		}
	}


	/* arrow */
	.slick-arrow {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		position: absolute;
		top: 0;
		bottom: 0;
		z-index: 10;
		cursor: pointer;
	}
	.slick-arrow.slick-prev {
		left: 0;
	}
	.slick-arrow.slick-next {
		right: 0;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.slick-arrow {
				width: 13.125%;
			}
			.slick-arrow .icon-arrow {
				width: 10px;
				height: 20px;
			}
			.slick-arrow .icon-arrow svg {
				stroke-width: 3;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.slick-arrow {
				width: 7%;
			}
		}


	/* dots */
	.slick-dots {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		position: absolute;
		right: 0;
		left: 0;
	}
	.slick-dots button {
		overflow: hidden;
		padding: 0;
		border: 0;
		-webkit-border-radius: 9999px;
		-moz-border-radius: 9999px;
		border-radius: 9999px;
		background-color: #ccc;
		text-indent: 100%;
		vertical-align: top;
		white-space: nowrap;
		-webkit-transition: background-color 0.3s ease;
		-moz-transition: background-color 0.3s ease;
		-o-transition: background-color 0.3s ease;
		transition: background-color 0.3s ease;
	}
	.slick-dots li.slick-active button {
		background-color: #000;
	}
	.no-touch .slick-dots button:hover {
		background-color: #a5d8e4;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 767px) {
			.slick-dots {
				bottom: -43px;
				padding-top: 20px;
				padding-bottom: 20px;
			}
			.slick-dots li {
				height: 3px;
				margin-right: 3px;
				margin-left: 3px;
			}
			.slick-dots button {
				width: 15px;
				height: 3px;
			}
		}

		/* -- >>> styles for medium & wide layout ----- */
		@media screen and (min-width: 768px) {
			.slick-dots {
				bottom: -85px;
				padding-top: 40px;
				padding-bottom: 40px;
			}
			.slick-dots li {
				height: 5px;
				margin-right: 5px;
				margin-left: 5px;
			}
			.slick-dots button {
				width: 30px;
				height: 5px;
			}
		}


/*
 * modal
 * ----------------------------------
 */
.js-modal {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	background-color: #fff;
	background-color: rgba(255,255,255,.9);
	cursor: pointer;
}
.js-modalInner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
	height: 100%;
}
.js-modal .btnCloseModal {
	text-align: right;
}
.js-modal .btnCloseModal .js-modalClose {
	display: inline-block;
}

.js-modalContent {
	display: none;
}
.js-modal .js-modalContent {
	display: block;
	cursor: default;
}
.js-modalContent .modalTitle {
	line-height: 1.2;
	letter-spacing: .05em;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 767px) {
		.js-modal {
			background-color: rgba(255,255,255,.98);
		}
		.js-modalInner {
			/*overflow-y: auto;
			padding-top: 60px;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;*/
		}
		.js-modalInner.l-inner {
			padding-right: 0;
			padding-left: 0;
		}
		.js-modal .btnCloseModal {
			/*position: absolute;
			top: 20px;
			right: 6.25%;*/
			margin-top: 20px;
			margin-bottom: 20px;
			padding-right: 6.25%;
			padding-left: 6.25%;
		}

		.js-modal .js-modalContent {
			flex-grow: 1;
			overflow-y: auto;
			padding-right: 6.25%;
			padding-bottom: 40px;
			padding-left: 6.25%;
		}
		.js-modalContent .modalTitle {
			margin-bottom: 1.3em;
			font-size: 2.7rem;
		}
	}

	/* -- >>> styles for medium & wide layout ----- */
	@media screen and (min-width: 768px) {
		.js-modal {
			background-color: rgba(255,255,255,.9);
		}
		.js-modal .btnCloseModal {
			margin-top: -50px;
			margin-bottom: 20px;
		}

		.js-modal .js-modalContent {
			overflow-y: auto;
			max-height: 80%;
			/*padding: 10px;*/
			padding: 49px 59px 69px;
			border: 1px solid #ddd;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
			background-color: #fff;
		}
		.js-modal .js-modalContent .scrollArea {
			/*overflow-y: auto;
			height: 100%;*/
			/*padding: 39px 49px 59px;*/
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
		}
		.js-modalContent .modalTitle {
			margin-bottom: 1.0em;
			padding-bottom: 1.0em;
			border-bottom: 1px solid #ddd;
			font-size: 30px;
			font-size: 3.0rem;
		}
	}

/*
 * scrollAppear
 * ----------------------------------
 */
[data-scroll-appear] {
	opacity: 0;
	/*-webkit-transition: opacity 5.0s ease;
	-moz-transition: opacity 5.0s ease;
	-o-transition: opacity 5.0s ease;
	transition: opacity 5.0s ease;*/
	-webkit-transition: all 1.0s ease;
	-moz-transition: all 1.0s ease;
	-o-transition: all 1.0s ease;
	transition: all 1.0s ease;
}
[data-scroll-appear].is-visible {
	opacity: 1;
}

/*
 * scrollbar
 * ----------------------------------
 */
/*************** SCROLLBAR BASE CSS ***************/
 
.scroll-wrapper {
    overflow: hidden !important;
    padding: 0 !important;
    position: relative;
}
 
.scroll-wrapper > .scroll-content {
    border: none !important;
    box-sizing: content-box !important;
    height: auto;
    left: 0;
    margin: 0;
    max-height: none;
    max-width: none !important;
    overflow: scroll !important;
    padding: 0;
    position: relative !important;
    top: 0;
    width: auto !important;
}
 
.scroll-wrapper > .scroll-content::-webkit-scrollbar {
    height: 0;
    width: 0;
}
 
.scroll-element {
    display: none;
}
.scroll-element, .scroll-element div {
    box-sizing: content-box;
}
 
.scroll-element.scroll-x.scroll-scrollx_visible,
.scroll-element.scroll-y.scroll-scrolly_visible {
    display: block;
}
 
.scroll-element .scroll-bar,
.scroll-element .scroll-arrow {
    cursor: default;
}
 
.scroll-textarea {
    border: 1px solid #cccccc;
    border-top-color: #999999;
}
.scroll-textarea > .scroll-content {
    overflow: hidden !important;
}
.scroll-textarea > .scroll-content > textarea {
    border: none !important;
    box-sizing: border-box;
    height: 100% !important;
    margin: 0;
    max-height: none !important;
    max-width: none !important;
    overflow: scroll !important;
    outline: none;
    padding: 2px;
    position: relative !important;
    top: 0;
    width: 100% !important;
}
.scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
    height: 0;
    width: 0;
}
 
 
 
 
/*************** SIMPLE INNER SCROLLBAR ***************/
 
.scrollbar-inner > .scroll-element,
.scrollbar-inner > .scroll-element div {
  border: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: 10;
}
 
.scrollbar-inner > .scroll-element div {
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}
 
.scrollbar-inner > .scroll-element.scroll-x {
  bottom: 2px;
  height: 8px;
  left: 0;
  width: 100%;
}
 
.scrollbar-inner > .scroll-element.scroll-y {
  height: 100%;
  right: 2px;
  top: 0;
  width: 8px;
}
 
.scrollbar-inner > .scroll-element .scroll-element_outer {
  overflow: hidden;
}
 
.scrollbar-inner > .scroll-element .scroll-element_outer,
.scrollbar-inner > .scroll-element .scroll-element_track,
.scrollbar-inner > .scroll-element .scroll-bar {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}
 
.scrollbar-inner > .scroll-element .scroll-element_track,
.scrollbar-inner > .scroll-element .scroll-bar {
  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
  filter: alpha(opacity=40);
  opacity: 0.4;
}
 
.scrollbar-inner > .scroll-element .scroll-element_track { background-color: #e0e0e0; }
.scrollbar-inner > .scroll-element .scroll-bar { background-color: #c2c2c2; }
.scrollbar-inner > .scroll-element:hover .scroll-bar { background-color: #919191; }
.scrollbar-inner > .scroll-element.scroll-draggable .scroll-bar { background-color: #919191; }
 
 
/* update scrollbar offset if both scrolls are visible */
 
.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -12px; }
.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -12px; }
 
 
.scrollbar-inner > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -12px; }
.scrollbar-inner > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -12px; }
