@charset "UTF-8";

/* @group Reset Style */

body {
	background: transparent;
	-webkit-text-size-adjust: 100%;
	}

body,
h1,h2,h3,h4,h5,h6,
p,
blockquote,
div,
dl,dt,dd,
ul,ol,li,
pre,code,
form,fieldset,legend,input,textarea,
th,td {
	margin:0;
	padding:0;
	font-size: 100%;
	}

table {
	border-collapse: collapse;
	border-spacing:0;
	}

fieldset,img {
	border:0;
	}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
	font-weight: normal;
	}

li {
	list-style: none;
	list-style-position: outside;
	}

caption,th {
	text-align: left;
	}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
	font-weight: normal;
	}

q:before,q:after {
	content:'';
	}

abbr,acronym {
	border:0;
	font-variant:normal;
	}

sup,sub {
	line-height: 1px;
	vertical-align: text-top;
	}

sub {
	vertical-align: text-bottom;
	}

input, textarea, select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	}
	
/* @end */

/* @group Structure */

/* @group Structure elements */

html {
	height: 100%;
}

body {
	font-size: 13px;
	font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN,
				 "ヒラギノ角ゴ Pro",'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3',
				 'Meiryo','メイリオ','Osaka','ＭＳ Ｐゴシック',sans-serif;
	line-height: 1;
	}

/* @end */


/* @end */


/* @group Text Module */


strong {
	font-weight: bold;
	}

.uppercase {
	text-transform: uppercase;
	}

.bullet {
	font-family: "Lucida Grande", Lucida, Verdana, sans-serif;
	}

.notice {
	}

.require {
	}

.lang-ja {
	/*font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3',
				 'Meiryo','メイリオ','Osaka','ＭＳ Ｐゴシック',sans-serif;*/
	}

.lang-en {
	/*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/	
	}

.lang-cn {
	font-family: 'Hei Regular','SimHei',sans-serif;
	}
	
sup {
	font-size: 77%;
	line-height: 0.8;
	}

.registered-trademark {
	}

#copyright,
.copyright-sign {
	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 0.9em;
	font-weight: 300;
	}


/* @end */


/* @group Hypertext Module */

a {
	color: #000000;
	text-decoration: underline;
	outline: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0.40); 
	}

a:link {
	}

a:visited {
	}

a:hover {
	text-decoration: none;
	}

a:active {
	}


/* @end */

/* @group Modules */

/* @group column module */

.columns-row {
	/*width: 656px;*/
	}

.columns-row:before,
.columns-row:after {
    content: "";
    display: block;
    overflow: hidden;
	}

.columns-row:after {
    clear: both;
	}
	
/* For IE 6/7 (trigger hasLayout) */
.columns-row {
    zoom: 1;
	}


.columns-row .column {
	float: left;
	}

.columns-row .column-left {
	float: left;
	}

.columns-row .column-right {
	float: right;
	}

.columns-row .last {
	}

.split .column {
	float: none;
	}

.split .columns-row .column {
	float: left;
	}

/* @end */

/* @group clearfix */

.clearfix:before,
.clearfix:after,
.columns-row:before,
.columns-row:after {
	content: "";
	display: block;
	overflow: hidden;
	}

.clearfix:after,
.columns-row:after {
	clear: both;
	}

/* For IE 6/7 (trigger hasLayout) */
.clearfix,
.columns-row {
	zoom: 1;
	}

/* @end */

/* @group separator */

div.separator {
	}

div.separator hr {
	display: none;
	}

/* @end */

/* @group button */

.button-image {
	}

.button-style {
	}

.button-style:hover img {
	opacity: 0.3;
	filter: alpha(opacity=30);
	cursor: pointer;
	}


/* @end */
/* @end */



/* @group flickity */

/*! Flickity v2.0.10
http://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus { outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
          tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: hsla(0, 0%, 100%, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.flickity-prev-next-button:hover { background: white; }

.flickity-prev-next-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #09F;
}

.flickity-prev-next-button:active {
  opacity: 0.6;
}

.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button:disabled {
  opacity: 0.3;
  cursor: auto;
}

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-prev-next-button .arrow {
  fill: #333;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots { direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/* @end */

/* @group 共通 */

html {
	}

body {
	font-size: 26px;
	}

body.lang-en .lang-ja,
body.lang-ja .lang-en {
	overflow: hidden;
	height: 0;
	/*display: none;*/
	}

body.lang-ja .lang-ja,
body.lang-en .lang-en {
	overflow: visible;
	height: auto;
	/*display: block;*/
	}

#lang-ja {
	}

#lang-en {
	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	}

#lang-en .font-ag-old-face {
	font-family: aktiv-grotesk, "AG Old Face Std", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	}


.fluid-std,
.fluid-full,
.fluid-large,
.fluid-inside {
	box-sizing: border-box;
	margin: 0 auto;
	}

.fluid-std {
	width: 590px;
	}

.fluid-full {
	width: 100%;
	}

.fluid-large {
	width: auto;
	}

.fluid-min {
	width: auto;
	}

.fluid-inside {
	width: auto;
	}


span.row {
	display: block;
	}

.text-std {
	font-size: 100%;
	line-height: 2;
	letter-spacing: 0.1em;
	word-wrap: break-word;
	}

.font-ag-old-face {
	font-family: aktiv-grotesk, "AG Old Face Std", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	
	}

.arrow-left-large {
	width: 120px;
	height: auto;
	}

.language-select a {
	color: #888888;
	text-decoration: none;
	text-transform: uppercase;
	vertical-align: top;
	}

.language-select a:hover {
	color: #010101;
	}

.language-select .selected {
	color: #010101;
	}

.language-select .selected:hover {
	cursor: default;
	}

.main-header {
	overflow: hidden;
	}

.main-header .page-title {
	float: left;
	font-size: 1.2em;
	letter-spacing: 0.05em;
	}

.main-header .language-select {
	float: right;
	}


/* @group button */

.button {
	}



/* @end */

/* @end */

@media screen and (min-width: 641px){

body {
	font-size: 13px;
	}

.has-sizes {
	visibility: hidden;
	}

.javascript .has-sizes {
	visibility: hidden;
	}

.pc-hidden {
	display: none;
	}


.fluid-std {
	box-sizing: border-box;
	width: auto;
	margin: 0 auto;
	}

.fluid-large {
	box-sizing: border-box;
	width: auto;
	margin: 0 auto;
	}

.fluid-min {
	box-sizing: border-box;
	width: auto;
	margin: 0 auto;
	}

.fluid-inside {
	box-sizing: border-box;
	width: auto;
	margin: 0 auto;
	}

.fluid-columns {
	overflow: hidden;
	}

.fluid-columns .column-left {
	float: left;
	}

.fluid-columns .column-right {
	float: right;
	}

/* @group page-header */

.site-title {
	position: relative;
	box-sizing: border-box;
	width: 960px;
	height: 150px;
	margin: 0 auto;
	}

.site-title .logo {
	position: absolute;
	top: 40px;
	z-index: 100;
	}

.site-title .title {
	position: absolute;
	top: 65px;
	left: 110px;
	z-index: 100;
	}

.page-header {
	position: fixed;
	box-sizing: border-box;
	top: 0;
	width: 100%;
	z-index: 10;
	}

.page-header .page-title {
	display: table;
	position: fixed;
	box-sizing: border-box;
	top: 0;
	width: 100%;
	height: 56px;
	margin: 0 auto;
	background: #ffffff;
	z-index: 10;
	}

.page-header .page-title .txt {
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	top: -56px;
	width: 960px;
	height: 56px;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
	}

.page-header .container  {
	position: relative;
	box-sizing: border-box;
	width: 960px;
	margin: 0 auto;
	z-index: 20;
	}

.page-header .container .navigation {
	}

.page-header .container .navigation .button {
	display: none;
	position: absolute;
	top: 18px;
	right: 0;
	z-index: 100;
	}

.page-header .container .navigation button:hover {
	cursor: pointer;
	opacity: 0.3;
	}


.page-header .container .navigation .drawer-hamburger {
	position: absolute;
	display: block;
	box-sizing: content-box;
	top: 18px;
	right: 0;
	width: 20px;
	height: 20px;
	padding: 0;
	-webkit-transition: all .6s cubic-bezier(.19, 1, .22, 1);
	transition: all .6s cubic-bezier(.19, 1, .22, 1);
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	border: 0;
	outline: 0;
	background: transparent;
	z-index: 100;
	}

.drawer-hamburger:hover {
	cursor: pointer;
	background-color: transparent
	}

.drawer-hamburger-icon {
	position: relative;
	display: block;
	}

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	width: 100%;
	height: 1px;
	-webkit-transition: all .6s cubic-bezier(.19, 1, .22, 1);
	transition: all .6s cubic-bezier(.19, 1, .22, 1);
	background-color: #222
	}

.drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	position: absolute;
	top: -8px;
	left: 0;
	content: ' '
	}

.drawer-hamburger-icon:after {
	top: 8px
	}

.drawer-open .drawer-hamburger-icon {
	background-color: transparent
	}

.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before {
	top: 0
	}

.drawer-open .drawer-hamburger-icon:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
	}

.drawer-open .drawer-hamburger-icon:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
	}

.sr-only {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0
	}

.sr-only-focusable:active, .sr-only-focusable:focus {
	position: static;
	overflow: visible;
	clip: auto;
	width: auto;
	height: auto;
	margin: 0
	}

.drawer--sidebar, .drawer--sidebar .drawer-contents {
	background-color: #fff
	}


.page-header .container .navigation .content {
	display: none;
	position: absolute;
	top: 90px;
	left: 830px;
	}

.page-header .container .navigation ul li {
	display: block;
	position: relative;
	left: 10px;
	padding: 0 0 0.6em;
	line-height: 1.4;
	opacity: 0;
	}

.drawer-open .page-header .container .navigation ul li {
	display: block;
	}

.page-header .container .navigation .global li a {
	text-transform: uppercase;
	}

.page-header .container .navigation .social {
	margin: 20px 0 0;
	}

.page-header .container .navigation ul li a {
	font-size: 17px;
	font-weight: 600;
	text-decoration: none;
	}

.page-header .container .navigation .social li a {
	font-size: 13px;
	}

.page-header .container .navigation ul li a:hover {
	color: #333333;
	}

.page-header .news {
	position: absolute;
	top: 18px;
	left: 830px;
	z-index: 100;
	}

.page-header .news .button-solid-bordered {
	}

.page-header .news .button-solid-bordered a {
	display: block;
	box-sizing: border-box;
	padding: 4px 4px 2px 6px;
	border: 1px solid #000000;
	font-size: 12px;
	font-family: aktiv-grotesk, sans-serif;
	font-weight: 400;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	}

.page-header .news .button-solid-bordered a:hover {
	opacity: 0.3;
	} 

/* @end */

/* @group page-body */

.page-body {
	box-sizing: border-box;
	width: 960px;
	margin: 0 auto;
	} 

.main-header {
	margin: 76px 0 0;
	}

.main-header .page-title {
	float: left;
	}

.main-header .page-title-large {
	margin: 0 0 70px;
	font-size: 40px;
	line-height: 1.4;
	font-size: 3.4em;
	font-weight: 500;
	}

.main-header .language-select {
	float: right;
	}

.main-header .language-select .select-ja, .main-header .language-select .select-en {
	font-weight: 400;
	font-size: 0.9em;
}


.main-header .page-title-small {
	margin: 0 0 24px;
	font-size: 17px;
	}

.main .introduction {
	margin: 0 0 90px;
	}
	
.main .news-introduction {
	margin: 60px 0 20px;
	}

.main .introduction .heading-large {
	margin: 0 0 0.8em;
	font-size: 32px;
	font-weight: 200;
	line-height: 1.8;
	}

.main .introduction .description {
	font-size: 16px;
	font-weight: 300;
	line-height: 2.0;
	}
	
.main .news-introduction .description {
	font-size: 1.1em;
	}	

.main .category-select ul {
	overflow: hidden;
	margin: 0 0 50px;
	}

.main .category-select ul li {
	display: inline-block;
	float: left;
	margin: 0 2em 0 0;
	line-height: 1.4;
	font-weight: 400;
	font-size: 0.95em;
	}

.main .category-select a {
	color: #888888;
	text-decoration: none;
	}

.main .category-feature {
	height: 290px;
	margin: 50px 0 90px;
	background: #000000;
	}

.main .category-feature a {
	display: block;
	}

.main .category-feature a:hover {
	opacity: 0.8;
	}

.main .category-feature .thumbnail {
	width: 516px;
	}

.main .category-feature .thumbnail img {
	width: 516px;
	height: auto;
	}

.main .category-feature .txt {
	display: table;
	float: right;
	width: 400px;
	height: 290px;
	color: #ffffff;
	}

.main .category-feature .txt .content {
	display: table-cell;
	font-size: 30px;
	line-height: 2;
	vertical-align: middle;
	}

.main .category-feature .txt .content p {
	}

.main .hero-images {
	}

.main .hero-images .selected-image {
	}

.main .hero-images .selected-image img {
	display: block;
	width: 960px;
	height: auto;
	}

.main .hero-images .carousel {
	overflow: hidden;
	margin: 20px 0 0;
	}

.main .hero-images .carousel .image {
	float: left;
	margin: 0 20px 0 0;
	}

.main .hero-images .carousel .image:last-of-type {
	margin: 0;
	}

.main .hero-images .carousel .image img {
	display: block;
	width: 176px;
	height: auto;
	}

.main .hero-images .carousel .image img:hover {
	cursor: pointer;
	opacity: 0.8;
	}

.main .hero-images .carousel .image img.selected {
	opacity: 0.3;
	}

/* @group format-page-std */

.format-page-std {
	}

.format-page-std .hero-image {
	width: 960px;
	margin: 0 0 90px;
	}

.format-page-std .hero-image .hero img {
	width: 960px;
	}

.format-page-std .content-body {
	display: block;
	width: 600px;
	margin: 0 0 90px;
	font-size: 16px;
	line-height: 2;
	text-align: justify;
	}

.format-page-std .content-body p {
	margin: 0 0 90px;
	font-weight: 200;
	}

.format-page-std .content-body strong {
	font-weight: 200;
	background: #dedede;
	}

.format-page-std .content-body img {
	display: block;
	max-width: 600px;
	}

.format-page-std .content-body .heading {
	margin-bottom: 0.4em;
	font-size: 45px;
	line-height: 1.4;
	}

.format-page-std .map {
	margin: 0 0 90px;
	font-size: 45px;
	line-height: 1.4;
	}

.format-page-std .map iframe {
	width: 600px;
	}



/* @end */

/* @group format-section-std */

.format-section-std {
	width: 600px;
	margin: 0 0 160px;
	}


.format-section-std p {
	margin: 0 0 90px;
	font-weight: 200;
	}

.format-section-std strong {
	font-weight: 200;
	background: #dedede;
	}

.format-section-std .heading {
	margin-bottom: 0.8em;
	font-size: 45px;
	line-height: 1.4;
	}

dl.style-ordered {
	margin: 0 0 40px;
	}

dl.style-ordered dt {
	display: table;
	margin: 0 0 0.8em;
	font-size: 24px;
	}

dl.style-ordered dt .no {
	display: table-cell;
	width: 40px;
	height: 40px;
	color: #ffffff;
	background: #0d0d0d;
	font-size: 24px;
	text-align: center;
	vertical-align: middle;
	}

dl.style-ordered dt .txt {
	display: table-cell;
	padding: 0 0 0 0.5em;
	font-size: 24px;
	vertical-align: middle;
	}

dl.style-ordered dd {
	font-size: 16px;
	font-weight: 200;
	line-height: 2;
	}

ul.style-std {
	padding: 0 0 0 1.2em;
	}

ul.style-std li {
	list-style: disc;
	margin: 0 0 0.6em;
	font-size: 16px;
	font-weight: 200;
	line-height: 1.8;
	}

.button-group {
	}

.button-group dt.button {
	}

.button-group dd.caption {
	margin: 0.8em 0 0;
	font-size: 16px;
	font-weight: 200;
	line-height: 1.6;
	}

.button-solid-gray {
	display: table;
	width: 100%;
	height: 140px;
	color: #ffffff;
	background: #6f6f6f;
	text-decoration: none;
	text-align: center;
	}

.button-solid-gray:hover {
	opacity: 0.8;
	}

.button-solid-gray .txt {
	display: table-cell;
	font-size: 18px;
	vertical-align: middle;
	letter-spacing: 0.1em;
	}

/* @end */



/* @group category-list-2col */

.category-list-2col {
	width: 980px;
	margin: 0 0 90px;
	}

.category-list-2col .category {
	width: 980px;
	margin: 0 0 90px;
	}

.category-list-2col .category a {
	overflow: hidden;
	display: block;
	text-decoration: none;
	}

.category-list-2col .category a:hover {
	opacity: 0.8;
	}

.category-list-2col .category .image {
	float: right;
	width: 435px;
	margin: 0 0 0;
	}

.category-list-2col .category .image img {
	display: block;
	width: 435px;
	}

.category-list-2col .category .content {
	float: left;
	display: block;
	width: 435px;
	}

.category-list-2col .category .category-title {
	margin: -0.2em 0 0.5em;
	font-size: 45px;
	line-height: 1.4;
	}

.category-list-2col .category .category-description {
	font-size: 16px;
	font-weight: 200;
	line-height: 2;
	}

/* @end */


.main .directory-go-up {
	margin: 0 0 90px;
	}

.main .directory-go-up .arrow-left-large {
	width: 120px;
	height: auto;
	}


/* @end */

/* @group page-footer */

.page-footer {
	box-sizing: border-box;
	width: 960px;
	margin: 0 auto;
	padding: 0 0 20px;
	}

.page-footer .container {
	overflow: hidden;
	}

#copyright {
	float: left;
	}

#copyright .row {
	display: inline;
	}

.page-footer .contact {
	float: right;
	font-weight: 500;
	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 0.9em;
	}

/* @end */

/* @group home */

.home .category-list {
	margin: 0 0 130px;
	}

.home .category-list .category {
	display: block;
	position: relative;
	width: 960px;
	height: 640px;
	margin: 0 0 130px;
	text-align: center;
	opacity: 0;
	-webkit-animation: blockfadeIn 0s ease 0.25s forwards; /* 初期アニメーションの隠蔽 */
	animation: blockfadeIn 0s ease 0.25s forwards; /* 初期アニメーションの隠蔽 */
	}

.home .category-list .category a {
	display: block;
	}

.home .category-list .category .category-title {
	display: table;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-animation: blockfadeOut 0.25s ease-in-out forwards;
	animation: blockfadeOut 0.25s ease-in-out forwards;
	z-index: 2;
	}

.home .category-list .category a:hover .category-title {
	opacity: 1;
	-webkit-animation: blockfadeIn 0.25s ease-in-out forwards;
	animation: blockfadeIn 0.25s ease-in-out forwards;
	}

.home .category-list .category .category-title span {
	display: table-cell;
	font-size: 60px;
	vertical-align: middle;
	text-transform: uppercase;
	}

.home .category-list .category .image img {
	display: block;
	-webkit-animation: imagefadeIn 0.25s ease-in-out forwards;
	animation: imagefadeIn 0.25s ease-in-out forwards;
	}

.home .category-list .category a:hover .image img {
	opacity: 0.3;
	-webkit-animation: imagefadeOut 0.25s ease-in-out forwards;
	animation: imagefadeOut 0.25s ease-in-out forwards;
	}

/* @end */

/* @group products */

.products .category-feature {
	margin: 50px 0 90px;
	}

.products .products-lineup {
	overflow: hidden;
	width: 1050px;
	margin: 0 0 90px;
	}

.products .products-lineup .product {
	float: left;
	width: 435px;
	margin: 0 90px 90px 0;
	}

.products .products-lineup .product a {
	display: block;
	text-decoration: none;
	}

.products .products-lineup .product a:hover {
	opacity: 0.8;
	}

.products .products-lineup .product-title {
	margin: 0.4em 0 0;
	line-height: 1.4;
	}

.products .products-lineup .product .image img {
	display: block;
	width: 435px;
	height: auto;
	}


.products .product-detail {
	font-size: 16px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.products .product-detail a {
	color: #6f6f6f;
	}

.products .product-detail .column-left {
	width: 600px;
	}

.products .product-detail .column-right {
	width: 270px;
	}

.products .product-detail .product-buy,
.products .product-detail .product-spec,
.products .product-detail .product-description,
.products .product-detail .product-designer {
	margin: 0 0 60px;
	}

.products .product-detail .product-dimensions img {
	width: 270px;
	height: auto;
	}


/* @end */

/* @group contract */

.contract .category-feature {
	margin: 0 0 90px;
	}

.contract .contract-lineup {
	overflow: hidden;
	width: 1050px;
	margin: 0 0 90px;
	}

.contract .contract-lineup .contract {
	float: left;
	width: 435px;
	margin: 0 90px 90px 0;
	}

.contract .contract-lineup .contract a {
	display: block;
	text-decoration: none;
	}

.contract .contract-lineup .contract a:hover {
	opacity: 0.8;
	}

.contract .contract-lineup .contract .image img {
	width: 435px;
	height: auto;
	}

.contract .contract-lineup .contract-title {
	margin: 5px 0 0;
	line-height: 1.4;
	font-weight: 400;
	}
	
.contract .contract-lineup .contract-title .font-ag-old-face {
	font-weight: 400;	
}

#lang-en .contract-title {
	margin: 6px 0 0;
}

#lang-en .contract-title .font-ag-old-face {
	font-weight: 400;	
}


.contract .contract-detail {
	margin: 0 0 80px;
	font-size: 16px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.contract .contract-detail a {
	color: #6f6f6f;
	}

.contract .contract-detail .column-left {
	width: 600px;
	}

.contract .contract-detail .column-right {
	width: 270px;
	}

.contract .contract-detail .contract-heading {
	font-weight: 600;
	}

.contract .contract-detail .contract-heading,
.contract .contract-detail .contract-spec,
.contract .contract-detail .contract-description {
	margin: 0 0 40px;
	}

.contract .contract-detail .contract-dimensions img {
	width: 270px;
	height: auto;
	}


/* @end */

/* @group news */

.news-list {
	overflow: hidden;
	margin: 80px 0 80px;
	}

.news-list .news {
	float: left;
	width: 210px;
	height: 210px;
	margin: 0 40px 50px 0;
	}

.news-list .news:nth-child(4n) {
	margin: 0 0 50px 0;
	}

.news-list .news a {
	text-decoration: none;
	}

.news-list .news .image img {
	display: block;
	width: 210px;
	}

.news-list .news .news-meta {
	display: table;
	margin: 1em 0 0;
	}

.news-list .news .news-category {
	display: table-cell;
	width: 11em;
	text-transform: uppercase;
	font-weight: 400;
	}

.news-list .news .news-date {
	display: table-cell;
	width: 4em;
	font-weight: 400;
	}

.news-list .news .news-title {
	margin: 0.6em 0 0;
	color: #6f6f6f;
	font-size: 16px;
	text-decoration: underline;
	line-height: 1.5;
	text-align: justify;
	}

.format-news-detail .news-header {
	margin: 30px 0 90px;
	}


.format-news-detail .news-header .heading-large {
	margin: 0 0 0.8em;
	font-size: 32px;
	font-weight: 200;
	line-height: 1.8;
	}

.format-news-detail .news-header .news-meta {
	display: table;
	margin: 0 0 0.8em;
	font-size: 12px;
	line-height: 1.4;
	text-transform: uppercase;
	font-family: "aktiv-grotesk";
	font-weight: 400;
	letter-spacing: 0.05em;
	}

.format-news-detail .news-header .news-meta p {
	display: table-cell;
	}

.format-news-detail .news-header .news-meta .news-category {
	padding: 0 2em 0 0;
	}

.format-news-detail .news-image {
	margin: 0 0 90px;
	}

.format-news-detail .news-image img {
	display: block;
	width: 960px;
	height: auto;
	}

.format-news-detail .news-body {
	display: block;
	width: 600px;
	margin: 0 0 0;
	font-size: 16px;
	line-height: 2;
	}

.format-news-detail .news-body p {
	margin: 0 0 90px;
	font-weight: 200;
	}

.format-news-detail .news-body strong {
	font-weight: 200;
	background: #dedede;
	}

.format-news-detail .news-body img {
	display: block;
	max-width: 600px;
	}


/* @end */

/* @group service */

.format-rental {
	}

.format-rental .product {
	width: 960px;
	margin: 0 auto 90px;
	}

.format-rental .product .image-header {
	overflow: hidden;
	margin: 0 0 40px;
	}

.format-rental .product .image-header img {
	display: block;
	}

.format-rental .product .image-header .image {
	float: left;
	width: 600px;
	}

.format-rental .product .image-header .figure {
	float: right;
	width: 270px;
	}

.format-rental .product .product-header {
	margin: 0 0 20px;
	}

.format-rental .product .product-header .product-title {
	font-size: 24px;
	line-height: 1.4;
	}

.format-rental .product .product-header .model {
	font-size: 16px;
	line-height: 1.4;
	}

.format-rental .product .content {
	}


.format-rental .product .content .spec {
	font-weight: 200;
	}

.format-rental .product .content .spec p {
	margin: 0 0 40px;
	font-size: 16px;
	line-height: 2;
	}

.format-rental .product .content .rental-price-list {
	margin: -20px 0 0;
	font-size: 16px;
	line-height: 1.4;
	}

.format-rental .product .content .rental-price-list a {
	color: #6f6f6f;
	}

.rental-downloads .column {
	width: 280px;
	}

.rental-inquiry {
	font-size: 16px;
	line-height: 2;
	}

.rental-inquiry .heading {
	font-size: 16px;
	font-weight: 600;
	}

/* @end */

/* @group rental */

.rental .category-feature {
	margin: 0 0 90px;
	}

.rental .rental-lineup {
	overflow: hidden;
	width: 1050px;
	margin: 0 0 90px;
	}

.rental .rental-lineup .rental {
	float: left;
	width: 435px;
	margin: 0 90px 90px 0;
	}

.rental .rental-lineup .rental a {
	display: block;
	text-decoration: none;
	}

.rental .rental-lineup .rental a:hover {
	opacity: 0.8;
	}

.rental .rental-lineup .rental .image img {
	width: 435px;
	height: auto;
	}

.rental .rental-lineup .rental-title {
	margin: 5px 0 0;
	line-height: 1.4;
	font-weight: 400;
	}
	
.rental .rental-lineup .rental-title .font-ag-old-face {
	font-weight: 400;	
}

#lang-en .rental-title {
	margin: 6px 0 0;
}

#lang-en .rental-title .font-ag-old-face {
	font-weight: 400;	
}


.rental .rental-detail {
	margin: 0 0 80px;
	font-size: 16px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.rental .rental-detail a {
	color: #6f6f6f;
	}

.rental .rental-detail .column-left {
	width: 600px;
	}

.rental .rental-detail .column-right {
	width: 270px;
	}

.rental .rental-detail .rental-heading {
	font-weight: 600;
	}

.rental .rental-detail .rental-heading,
.rental .rental-detail .rental-spec,
.rental .rental-detail .rental-description {
	margin: 0 0 40px;
	}

.rental .rental-detail .rental-dimensions img {
	width: 270px;
	height: auto;
	}


/* @end */

/* @group shoplist */

.shoplist .introduction {
	margin: 0 auto 80px;
	}

.format-shoplist {
	margin: 0 auto 80px;
	}

.format-shoplist .heading {
	padding: 0 0 0.4em;
	font-size: 45px;
	line-height: 1.4;
	}

.format-shoplist .shop {
	display: table;
	font-size: 24px;
	font-weight: 200;
	line-height: 1.6;
	border: none;
	}

.format-shoplist .shop .fn,
.format-shoplist .shop .address,
.format-shoplist .shop .tel {
	padding: 1em 0 1em;
	border-top: 1px solid #e6e6e6;
	font-size: 16px;
	}

.format-shoplist .shop:last-of-type .fn,
.format-shoplist .shop:last-of-type .address,
.format-shoplist .shop:last-of-type .tel {
	border-bottom: 1px solid #e6e6e6;
	}

.format-shoplist .shop .fn {
	display: table-cell;
	width: 245px;
	border-right: 10px solid #ffffff;
	font-weight: 600;
	vertical-align: middle;
	}

.format-shoplist .shop .address {
	display: table-cell;
	width: 445px;
	border-right: 10px solid #ffffff;
	word-break: break-all;
	vertical-align: middle;
	}

.format-shoplist .shop .tel {
	display: table-cell;
	width: 249px;
	vertical-align: middle;
	}

/*
.format-shoplist .shop .fn:before,
.format-shoplist .shop .address:before,
.format-shoplist .shop .tel:before {
	display: block;
	content: ' ';
	border-top: 1px solid #e6e6e6;
	}

.format-shoplist .shop .fn:after,
.format-shoplist .shop .address:after,
.format-shoplist .shop .tel:after {
	display: block;
	content: ' ';
	border-bottom: 1px solid #e6e6e6;
	}
*/

	
/* @end */


}

@media screen and (max-width: 640px), screen and (max-device-width: 480px), screen and (max-device-width: 736px) and (orientation : portrait) {

body {
	width: 640px;
	margin: 0 auto;
	}
	
br.wbr {
	display: none;
	}

.mobile-hidden {
	display: none;
	}

/* @group page-header */

.site-title {
	position: fixed;
	box-sizing: border-box;
	top: 0;
	left: 50%;
	width: 590px;
	height: 1px;
	margin: 0 0 0 -295px;
	z-index: 100;
	}

.site-title .logo {
	position: absolute;
	top: 34px;
	z-index: 100;
	}

.site-title .logo img {
	width: 58px;
	height: auto;
	}

.site-title .title {
	position: absolute;
	top: 56px;
	left: 84px;
	z-index: 100;
	}

.site-title .title img {
	display: block;
	width: auto;
	height: 14px;
	}


.page-header {
	position: fixed;
	box-sizing: border-box;
	top: 0;
	width: 100%;
	height: 126px;
	background: #ffffff;
	z-index: 10;
	}

.page-header .page-title {
	display: none;
	position: fixed;
	box-sizing: border-box;
	top: 0;
	width: 100%;
	height: 126px;
	margin: 0 auto;
	background: #ffffff;
	z-index: 10;
	}

.page-header .page-title .txt {
	display: table-cell;
	position: relative;
	box-sizing: border-box;
	top: -56px;
	width: 590px;
	height: 56px;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
	}

.page-header .container  {
	position: relative;
	box-sizing: border-box;
	width: 590px;
	margin: 0 auto;
	z-index: 20;
	}

.page-header .container .navigation {
	}

.page-header .container .navigation .button {
	display: none;
	position: absolute;
	top: 18px;
	right: 0;
	z-index: 101;
	}

.page-header .container .navigation button:hover {
	cursor: pointer;
	}


.page-header .container .navigation .drawer-hamburger {
	position: absolute;
	display: block;
	box-sizing: content-box;
	top: 45px;
	right: 0;
	width: 36px;
	height: 36px;
	padding: 0;
	-webkit-transition: all .6s cubic-bezier(.19, 1, .22, 1);
	transition: all .6s cubic-bezier(.19, 1, .22, 1);
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	border: 0;
	outline: 0;
	background: transparent;
	z-index: 101;
	}

.drawer-hamburger:hover {
	cursor: pointer;
	background-color: transparent
	}

.drawer-hamburger-icon {
	position: relative;
	display: block;
	}

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	width: 100%;
	height: 1px;
	-webkit-transition: all .6s cubic-bezier(.19, 1, .22, 1);
	transition: all .6s cubic-bezier(.19, 1, .22, 1);
	background-color: #222
	}

.drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	position: absolute;
	top: -14px;
	left: 0;
	content: ' '
	}

.drawer-hamburger-icon:after {
	top: 14px
	}

.drawer-open .drawer-hamburger-icon {
	background-color: transparent
	}

.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before {
	top: 0
	}

.drawer-open .drawer-hamburger-icon:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
	}

.drawer-open .drawer-hamburger-icon:after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
	}

.sr-only {
	position: absolute;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0
	}

.sr-only-focusable:active, .sr-only-focusable:focus {
	position: static;
	overflow: visible;
	clip: auto;
	width: auto;
	height: auto;
	margin: 0
	}

.drawer--sidebar, .drawer--sidebar .drawer-contents {
	background-color: #fff
	}


.page-header .container .navigation .content {
	display: block;
	position: absolute;
	top: 160px;
	right: 0;
	}

.page-header .container .navigation ul li {
	display: none;
	position: relative;
	left: 10px;
	padding: 0 0 0.6em;
	line-height: 1.4;
	opacity: 0;
	}

.drawer-open .page-header .container .navigation ul li {
	display: block;
	}

.page-header .container .navigation .global li a {
	text-transform: uppercase;
	}

.page-header .container .navigation .social {
	margin: 20px 0 0;
	}

.page-header .container .navigation ul li a {
	font-size: 36px;
	font-weight: 600;
	text-decoration: none;
	}

.page-header .container .navigation .social li a {
	font-size: 26px;
	}

.page-header .container .navigation ul li a:hover {
	color: #333333;
	}

.page-header .news {
	position: absolute;
	top: 48px;
	left: 418px;
	z-index: 101;
	}

.page-header .news .button-solid-bordered {
	}

.page-header .news .button-solid-bordered a {
	display: block;
	box-sizing: border-box;
	padding: 4px 8px;
	border: 1px solid #000000;
	font-size: 22px;
	font-family: aktiv-grotesk, "AG Old Face Std", sans-serif;
	font-weight: 500;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	}

.page-header .news .button-solid-bordered a:hover {
	} 

/* @end */

/* @group page-body */

.page-body {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 126px 0 0;
	} 

.main-header {
	margin: 40px auto 0;
	}

.main-header .page-title {
	float: left;
	}

.main-header .page-title-large {
	margin: 0 0 50px;
	font-size: 40px;
	line-height: 1.2;
	}

.main-header .language-select {
	float: right;
	font-size: 20px;
	}

.main-header .page-title-small {
	margin: 0 0 50px;
	font-size: 24px;
	}

.main .introduction {
	margin: 0 auto 50px;
	}

.main .introduction .heading-large {
	margin: 0 0 0.8em;
	font-size: 40px;
	font-weight: 200;
	line-height: 1.4;
	}

.main .introduction .description {
	font-size: 24px;
	font-weight: 300;
	line-height: 1.8;
	}

.main .category-select {
	margin: 0 auto 50px;
	}

.main .category-select ul {
	display: none;
	overflow: hidden;
	}

.main .category-select ul li {
	display: inline-block;
	float: left;
	margin: 0 2em 1em 0;
	line-height: 1.4;
	}

.main .category-select a {
	color: #888888;
	text-decoration: none;
	}

.main .category-selector {
	display: table;
	position: relative;
	width: 410px;
	margin: 0 auto;
	padding: 0.7em 0.5em 0.7em;
	border: 1px solid #000000;
	text-align: center;
	z-index: 2;
	}

.main .category-selector:after {
	display: block;
	position: absolute;
	top: 26px;
	right: 24px;
	width: 26px;
	height: 16px;
	content: "";
	background: #ffffff url(../images/global/arrow_down.svg) no-repeat;
	z-index: 1;
	}

.main .category-selector .control-label {
	display: table-cell;
	vertical-align: middle;
	text-transform: uppercase;
	}

.main .category-selector select {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 2em;
	border: none;
	text-align: center;
	opacity: 0;
	z-index: 2;
	-webkit-appearance: none;
	}

.main .category-selector select option {
	font-family: sans-serif;
	font-weight: normal;
	text-align: center;
	-webkit-appearance: none;
	}

.main .category-feature {
	width: 590px;
	margin: 50px auto 90px;
	background: #000000;
	}

.main .category-feature a {
	display: block;
	}

.main .category-feature a:hover {
	opacity: 0.8;
	}

.main .category-feature .thumbnail {
	width: 334px;
	background: #ffffff;
	}

.main .category-feature .thumbnail img {
	display: block;
	width: 334px;
	height: auto;
	}

.main .category-feature .txt {
	display: table;
	float: right;
	width: 230px;
	height: 100%;
	min-height: 190px;
	}

.main .category-feature .txt .content {
	display: table-cell;
	height: 100%;
	min-height: 190px;
	color: #ffffff;
	font-size: 20px;
	line-height: 2;
	vertical-align: middle;
	}

.main .category-feature .txt .content p {
	}

.main .hero-images {
	margin: 0 0 100px;
	}

.main .hero-images .selected-image {
	display: none;
	}

.main .hero-images .selected-image img {
	display: none;
	}

.main .hero-images .carousel {
	overflow: hidden;
	margin: 0 0 0;
	padding: 0 0 38px;
	}

.main .hero-images .carousel .image {
	display: none;
	}

.main .hero-images .carousel.flickity-enabled .image {
	display: block;
	}

.main .hero-images .carousel .image:first-of-type {
	display: block;
	}

.main .hero-images .carousel .image img {
	display: block;
	width: 640px;
	height: auto;
	}

.main .hero-images .carousel .flickity-viewport {
	min-height: 427px;
}

.main .flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.main .flickity-rtl .flickity-page-dots { direction: rtl; }

.main .flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.main .flickity-page-dots .dot.is-selected {
  opacity: 1;
}



/* @group format-page-std */

.format-page-std {
	}

.format-page-std .hero-image {
	width: 100%;
	margin: 0 0 50px;
	}

.format-page-std .hero-image .hero img {
	display: block;
	width: 100%;
	height: auto;
	}

.format-page-std .content-body {
	display: block;
	width: 590px;
	margin: 0 auto 50px;
	font-size: 24px;
	line-height: 2;
	text-align: justify;
	}

.format-page-std .content-body p {
	margin: 0 0 50px;
	font-weight: 200;
	}

.format-page-std .content-body strong {
	font-weight: 200;
	background: #dedede;
	}

.format-page-std .content-body img {
	display: block;
	max-width: 100%;
	}

.format-page-std .content-body .heading {
	margin-bottom: 0.4em;
	font-size: 45px;
	line-height: 1.4;
	}

.format-page-std .map {
	margin: 0 0 50px;
	font-size: 45px;
	line-height: 1.4;
	}

.format-page-std .map iframe {
	width: 590px;
	}


/* @end */



/* @group format-section-std */

.format-section-std {
	width: 600px;
	margin: 0 auto 160px;
	}


.format-section-std p {
	margin: 0 0 90px;
	font-weight: 200;
	}

.format-section-std strong {
	font-weight: 200;
	background: #dedede;
	}

.format-section-std .heading {
	margin-bottom: 0.8em;
	font-size: 40px;
	line-height: 1.4;
	}

dl.style-ordered {
	margin: 0 0 40px;
	}

dl.style-ordered dt {
	display: table;
	margin: 0 0 0.8em;
	font-size: 24px;
	}

dl.style-ordered dt .no {
	display: table-cell;
	width: 40px;
	height: 40px;
	color: #ffffff;
	background: #0d0d0d;
	font-size: 30px;
	text-align: center;
	vertical-align: middle;
	}

dl.style-ordered dt .txt {
	display: table-cell;
	padding: 0 0 0 0.5em;
	font-size: 30px;
	vertical-align: middle;
	}

dl.style-ordered dd {
	font-size: 24px;
	font-weight: 200;
	line-height: 2;
	}

ul.style-std {
	padding: 0 0 0 1.2em;
	}

ul.style-std li {
	list-style: disc;
	margin: 0 0 0.6em;
	font-size: 24px;
	font-weight: 200;
	line-height: 1.8;
	}

.button-group {
	margin: 0 0 50px;
	}

.button-group dt.button {
	}

.button-group dd.caption {
	margin: 0.8em 0 0;
	font-size: 24px;
	font-weight: 200;
	line-height: 1.6;
	}

.button-solid-gray {
	display: table;
	width: 100%;
	height: 140px;
	color: #ffffff;
	background: #6f6f6f;
	text-decoration: none;
	text-align: center;
	}

.button-solid-gray:hover {
	opacity: 0.8;
	}

.button-solid-gray .txt {
	display: table-cell;
	font-size: 30px;
	vertical-align: middle;
	letter-spacing: 0.1em;
	}

/* @end */

/* @group category-list-2col */

.category-list-2col {
	margin: 0 auto 90px;
	}

.category-list-2col .category {
	margin: 0 auto 120px;
	}

.category-list-2col .category a {
	overflow: hidden;
	display: block;
	text-decoration: none;
	}

.category-list-2col .category .image {
	width: 100%;
	margin: 0 0 0;
	}

.category-list-2col .category .image img {
	display: block;
	width: 100%;
	}

.category-list-2col .category .content {
	display: block;
	}

.category-list-2col .category .category-title {
	margin: 0.4em 0 0;
	font-size: 40px;
	line-height: 1.4;
	}

.category-list-2col .category .category-description {
	font-size: 24px;
	font-weight: 200;
	line-height: 2;
	}

/* @end */

.main .directory-go-up {
	margin: 0 auto 40px;
	}

.main .directory-go-up .arrow-left-large {
	width: auto;
	height: 80px;
	}

/* @end */

/* @group page-footer */

.page-footer {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 40px;
	}

.page-footer .container {
	overflow: hidden;
	}

#copyright {
	font-size: 16px;
	line-height: 1.6;
	}

.page-footer .contact {
	margin-bottom: 1em;
	font-size: 20px;
	font-weight: 600;
	font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	text-align: right;
	text-transform: uppercase;
	}

/* @end */

/* @group home */

.home .category-list {
	margin: 0 0 90px;
	}

.home .category-list .category {
	display: block;
	position: relative;
	margin: 0 0 90px;
	opacity: 1;
	}

.home .category-list .category a {
	display: block;
	text-decoration: none;
	text-transform: uppercase;
	}

.home .category-list .category .category-title {
	}

.home .category-list .category .category-title span {
	display: block;
	margin: 0.6em 0 0;
	font-size: 30px;
	}

.home .category-list .category .image img {
	display: block;
	width: 640px;
	}


/* @end */

/* @group products */

.products .category-feature {
	width: 590px;
	margin: 50px auto 90px;
	}

.products .products-lineup {
	overflow: hidden;
	width: 590px;
	margin: 0 auto 90px;
	}

.products .products-lineup .product {
	float: left;
	width: 282px;
	margin: 0 26px 40px 0;
	}

.products .products-lineup .product:nth-child(2n) {
	float: right;
	margin: 0 0 40px 0;
	}

.products .products-lineup .product a {
	display: block;
	width: 283px;
	text-decoration: none;
	}

.products .products-lineup .product .image img {
	display: block;
	width: 283px;
	height: auto;
	}

.products .products-lineup .product-title {
	width: 283px;
	margin: 0.4em 0 0;
	font-size: 20px;
	line-height: 1.4;
	}


.products .product-detail {
	margin: 0 auto 100px;
	font-size: 24px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.products .product-detail a {
	color: #6f6f6f;
	}

.products .product-detail .column-left {
	width: 600px;
	}

.products .product-detail .column-right {
	width: 270px;
	}

.products .product-detail .product-buy,
.products .product-detail .product-spec,
.products .product-detail .product-description,
.products .product-detail .product-designer {
	margin: 0 0 90px;
	}

.products .product-detail .product-dimensions {
	width: 590px;
	margin: 0 auto;
	}

.products .product-detail .product-dimensions img {
	width: 590px;
	height: auto;
	}
	
/* @end */

/* @group contract */

.contract .category-feature {
	margin: 0 0 90px;
	}

.contract .contract-lineup {
	overflow: hidden;
	width: 590px;
	margin: 0 auto 90px;
	}

.contract .contract-lineup .contract {
	display: inline-block;
	float: none;
	width: 282px;
	margin: 0 26px 40px 0;
	vertical-align: top;
	}

.contract .contract-lineup .contract:nth-child(2n) {
	float: none;
	margin: 0 0 40px 0;
	}

.contract .contract-lineup .contract a {
	display: block;
	text-decoration: none;
	}

.contract .contract-lineup .contract .image img {
	display: block;
	width: 282px;
	height: auto;
	}

.contract .contract-lineup .contract-title {
	width: 282px;
	margin: 5px 0 0;
	font-size: 20px;
	line-height: 1.4;
	}


.contract .contract-detail {
	margin: 0 auto 150px;
	font-size: 24px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.contract .contract-detail a {
	color: #6f6f6f;
	}

.contract .contract-detail .column-left {
	width: 600px;
	}

.contract .contract-detail .column-right {
	width: 270px;
	}

.contract .contract-detail .contract-heading {
	font-weight: 600;
	}

.contract .contract-detail .contract-heading,
.contract .contract-detail .contract-spec,
.contract .contract-detail .contract-description {
	margin: 0 0 50px;
	}

.contract .contract-detail .contract-dimensions {
	width: 590px;
	margin: 0 auto;
	}

.contract .contract-detail .contract-dimensions img {
	width: 590px;
	height: auto;
	}
	
/* @end */

/* @group news */

.news-list {
	margin: 80px auto 80px;
	}

.news-list .news {
	width: 590px;
	margin: 0 0 50px;
	}


.news-list .news a {
	display: block;
	overflow: hidden;
	text-decoration: none;
	}

.news-list .news .image {
	display: block;
	float: left;
	width: 284px;
	margin: 0 26px 0 0;
	}

.news-list .news .image img {
	display: block;
	width: 284px;
	height: auto;
	}

.news-list .news .news-meta {
	font-size: 20px;
	line-height: 1.4;
	}

.news-list .news .news-category {
	text-transform: uppercase;
	}

.news-list .news .news-date {
	}

.news-list .news .news-title {
	margin: 0.6em 0 0;
	color: #6f6f6f;
	font-size: 24px;
	text-decoration: underline;
	line-height: 1.6;
	}



.format-news-detail .news-header {
	margin: 50px auto 50px;
	}


.format-news-detail .news-header .heading-large {
	margin: 0 0 0.8em;
	font-size: 40px;
	font-weight: 200;
	line-height: 1.6;
	}

.format-news-detail .news-header .news-meta {
	display: table;
	margin: 0 0 0.8em;
	font-size: 20px;
	line-height: 1.4;
	text-transform: uppercase;
	}

.format-news-detail .news-header .news-meta p {
	display: table-cell;
	}

.format-news-detail .news-header .news-meta .news-category {
	padding: 0 1em 0 0;
	}

.format-news-detail .news-image {
	margin: 0 0 50px;
	}

.format-news-detail .news-image img {
	display: block;
	width: 100%;
	height: auto;
	}

.format-news-detail .news-body {
	display: block;
	width: 590px;
	margin: 0 auto 0;
	font-size: 24px;
	line-height: 2;
	text-align: justify;
	}

.format-news-detail .news-body p {
	margin: 0 0 50px;
	font-weight: 200;
	}

.format-news-detail .news-body strong {
	font-weight: 200;
	background: #dedede;
	}

.format-news-detail .news-body img {
	display: block;
	max-width: 100%;
	}
	
/* @end */

/* @group service */

.format-rental {
	margin: 0 auto 90px;
	border-top: 2px solid #e5e5e5;
	}

.format-rental .product {
	margin: 0 auto 0;
	padding: 30px 0;
	border-bottom: 2px solid #e5e5e5;
	}

.format-rental .product .product-header {
	position: relative;
	}

.format-rental .product .product-header:after {
	display: block;
	position: absolute;
	content: "";
	top: 50%;
	right: 26px;
	width: 30px;
	height: 20px;
	margin: -10px 0 0 0;
	}

.format-rental .product-close .product-header:after {
	background: #ffffff url(../images/global/arrow_down.svg) no-repeat;
	}

.format-rental .product-open .product-header:after {
	background: #ffffff url(../images/global/arrow_up.svg) no-repeat;
	}

.format-rental .product .product-header .product-title {
	padding: 0 80px 0 0;
	font-size: 30px;
	line-height: 1.4;
	}

.format-rental .product .product-header .model {
	padding: 0 80px 0 0;
	font-size: 24px;
	line-height: 1.4;
	}

.format-rental .product .content {
	display: none;
	margin: 90px 0 0;
	}

.format-rental .product .content .image {
	margin: 0 0 90px;
	}

.format-rental .product .content .image img {
	display: block;
	width: 100%;
	}

.format-rental .product .content .figure {
	margin: 0 0 90px;
	}

.format-rental .product .content .figure img {
	display: block;
	width: 460px;
	margin: 0 auto;
	}

.format-rental .product .content .spec {
	font-weight: 200;
	}

.format-rental .product .content .spec p {
	margin: 0 0 40px;
	font-size: 24px;
	line-height: 2;
	}

.format-rental .product .content .rental-price-list {
	margin: -20px 0 0;
	font-size: 24px;
	line-height: 1.4;
	}

.format-rental .product .content .rental-price-list a {
	color: #6f6f6f;
	}

.rental-inquiry {
	font-size: 24px;
	line-height: 2;
	}

.rental-inquiry .heading {
	font-size: 24px;
	font-weight: 600;
	}


/* @end */

/* @group rental */

.rental .category-feature {
	margin: 0 0 90px;
	}

.rental .rental-lineup {
	overflow: hidden;
	width: 590px;
	margin: 0 auto 90px;
	}

.rental .rental-lineup .rental {
	display: inline-block;
	float: none;
	width: 282px;
	margin: 0 26px 40px 0;
	vertical-align: top;
	}

.rental .rental-lineup .rental:nth-child(2n) {
	float: none;
	margin: 0 0 40px 0;
	}

.rental .rental-lineup .rental a {
	display: block;
	text-decoration: none;
	}

.rental .rental-lineup .rental .image img {
	display: block;
	width: 282px;
	height: auto;
	}

.rental .rental-lineup .rental-title {
	width: 282px;
	margin: 5px 0 0;
	font-size: 20px;
	line-height: 1.4;
	}


.rental .rental-detail {
	margin: 0 auto 150px;
	font-size: 24px;
	font-weight: 200;
	line-height: 2;
	text-align: justify;
	}

.rental .rental-detail a {
	color: #6f6f6f;
	}

.rental .rental-detail .column-left {
	width: 600px;
	}

.rental .rental-detail .column-right {
	width: 270px;
	}

.rental .rental-detail .rental-heading {
	font-weight: 600;
	}

.rental .rental-detail .rental-heading,
.rental .rental-detail .rental-spec,
.rental .rental-detail .rental-description {
	margin: 0 0 50px;
	}

.rental .rental-detail .rental-dimensions {
	width: 590px;
	margin: 0 auto;
	}

.rental .rental-detail .rental-dimensions img {
	width: 590px;
	height: auto;
	}
	
/* @end */

/* @group shoplist */

.shoplist .introduction {
	margin: 0 auto 120px;
	}

.format-shoplist {
	margin: 0 auto 120px;
	}

.format-shoplist .heading {
	padding: 0 0 0.4em;
	font-size: 40px;
	line-height: 1.4;
	border-bottom: 3px solid #e6e6e6;
	}

.format-shoplist .shop {
	padding: 1em 0 1em;
	border-bottom: 3px solid #e6e6e6;
	font-size: 24px;
	font-weight: 200;
	line-height: 1.6;
	}

.format-shoplist .shop .fn {
	font-weight: 600;
	}

.format-shoplist .shop .fn br {
	display: none;
	}

.format-shoplist .shop .address {
	word-break: break-all;
	}

.format-shoplist .shop .empty {
	display: none;
	}

	
/* @end */


}



/* @group Animation */

@-webkit-keyframes imagefadeIn {
	0% {
		opacity: 0.3;
	}
	100% {
		opacity: 1;
	}
}

@keyframes imagefadeIn {
	0% {
		opacity: 0.3;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes imagefadeIn {
	0% {
		opacity: 0.3;
	}
	100% {
		opacity: 1;
	}
}

@keyframes imagefadeIn {
	0% {
		opacity: 0.3;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes imagefadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0.3;
	}
}

@keyframes imagefadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0.3;
	}
}

@-webkit-keyframes blockfadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes blockfadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes blockfadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes blockfadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes titleSlideIn {
	0% {
		top: -56px;
	}
	100% {
		top: 0;
	}
}

@keyframes titleSlideIn {
	0% {
		top: -56px;
	}
	100% {
		top: 0;
	}
}

@-webkit-keyframes titleSlideOut {
	0% {
		top: 0;
	}
	100% {
		top: -56px;
	}
}

@keyframes titleSlideOut {
	0% {
		top: 0;
	}
	100% {
		top: -56px;
	}
}

.txt-slide-in {
	-webkit-animation: titleSlideIn 0.2s ease-in-out 0s;
	-webkit-animation-fill-mode: forwards;
	animation: titleSlideIn 0.2s ease-in-out 0s;
	animation-fill-mode: forwards;
}

.txt-slide-out {
	-webkit-animation: titleSlideOut 0.2s ease-in-out 0s;
	-webkit-animation-fill-mode: forwards;
	animation: titleSlideOut 0.2s ease-in-out 0s;
	animation-fill-mode: forwards;
}

/* @end */
