html, body, #wrapper, #main { height: 100%; }

body { position: relative; background: white; font-family: helvetica,Arial,'Hiragino Kaku Gothic Pro',Meiryo,'MS PGothic',sans-serif; color: #3c3c3c; }

ul { margin: 0; padding: 0; }

a { color: #3c3c3c; text-decoration: none; }

.parts.text, a.parts { display: inline-block; text-indent: 100%; overflow: hidden; white-space: nowrap; }
@media (-webkit-min-device-pixel-ratio: 2), (-o-min-device-pixel-ratio: 3 / 2), (min-device-pixel-ratio: 2) { .parts.text, a.parts { text-indent: 200%; } }

a.parts { display: block; width: 100%; height: 100%; }

ul { list-style: none; }
ul.inline li { display: inline-block; }

/* loading scene */
#loading { position: absolute; z-index: 1000; top: 0; left: 0; width: 100%; height: 100%; }

.loading { background: url(../images/loading.gif) 50% 50% no-repeat white; }

/* Title */
#title { width: 100%; height: 100%; background: #B05A29; }
#title h1 a { display: block; width: 100%; height: 100%; }

/* catalog */
#catalog { position: relative; width: 100%; height: 100%; }

/* catalog > header */
#header { position: fixed; top: 0; left: 0; width: 100%; z-index: 10; text-align: center; background: white; }
#header h1 { position: absolute; left: 25px; height: 15px; top: 0; bottom: 0; margin: auto 0; z-index: 200; line-height: 15px; }
#header h1 a { display: block; }

/* header > gender menu */
#gender-menu { position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
#gender-menu li { float: left; vertical-align: middle; }
#gender-menu a { display: block; padding: 5px; }

/* header > menus */
#menus { position: absolute; overflow: hidden; }
#menus a { display: block; float: left; }

/* catalog > footer */
#footer { position: fixed; z-index: 1; }

#title { position: fixed; overflow: hidden; left: 0; top: 0; width: 100%; height: 100%; background: #e2e2da; z-index: 100; }
#title h1 { position: absolute; left: 0; top: 0; right: 0; bottom: 0; margin: auto; }
#title .msg { position: absolute; left: 0; right: 0; margin: 0 auto; bottom: 50px; }

/* catalog > contents  */
#catalog { position: relative; width: 100%; height: 100%; min-height: 101%; }
#catalog div.wrapper { position: relative; width: 100%; height: 100%; }

#catalog-contents { position: relative; width: 100%; height: 100%; }
#catalog-contents #tax-note { color: #b3b3b3; text-align: center; font-size: 12px; line-height: 1.6; }

#catalog-pages { position: relative; overflow: hidden; }
#catalog-pages .catalog-page { float: left; display: table-cell; }
#catalog-pages .catalog-page .image img { height: auto; cursor: pointer; }
#catalog-pages .catalog-page.page-type2 .image img, #catalog-pages .catalog-page.page-type10 .image img, #catalog-pages .catalog-page.page-type11 .image img { cursor: default; }
#catalog-pages .catalog-page.layout1, #catalog-pages .catalog-page.layout2 { clear: both; }
#catalog-pages.thumbnail { padding-left: 0; }
#catalog-pages.thumbnail .catalog-page.page-type10 { display: none; }
#catalog-pages.thumbnail .catalog-page.layout1, #catalog-pages.thumbnail .catalog-page.layout2 { clear: none; }
#catalog-pages.thumbnail .catalog-page.thumbnail-first-col { clear: both !important; }

#catalog-page1 h1, #catalog-page1 h2 { position: absolute; top: 0; left: 0; right: 0; margin: 0 auto; opacity: 0; width: 90%; }
#catalog-page1 h1 img, #catalog-page1 h2 img { width: 100%; height: auto; }
#catalog-page1 h1 { -moz-transition: linear 1s opacity 1s; -o-transition: linear 1s opacity 1s; -webkit-transition: linear 1s opacity; -webkit-transition-delay: 1s; transition: linear 1s opacity 1s; }
#catalog-page1 h2 { -moz-transition: linear 1s opacity 2.5s; -o-transition: linear 1s opacity 2.5s; -webkit-transition: linear 1s opacity; -webkit-transition-delay: 2.5s; transition: linear 1s opacity 2.5s; }

#catalog.ready #catalog-page1 h1, #catalog.ready #catalog-page1 h2 { opacity: 1; }

#product-info-popup { z-index: 100; }

/* catalog > scroll-meter */
#scroll-meter { position: fixed; top: 65px; right: 22px; z-index: 1; }

/* products */
#products { position: absolute; top: 0; left: 0; width: 100%; z-index: 100; background: #f7f7f7; color: #333; font-family: helvetica; }
#products header h1 { position: absolute; }

#products-close { position: absolute; }
#products-close a { display: block; }

.scrollable .viewport { overflow: hidden; position: relative; }
.scrollable .overview { list-style: none; position: absolute; left: 0; top: 0; }
.scrollable .thumb .end, .scrollable .thumb { background-color: #808080; background-color: rgba(128, 128, 128, 0.8); -moz-border-radius: 6px 6px 6px 6px; -webkit-border-radius: 6px 6px 6px 6px; -ms-border-radius: 6px 6px 6px 6px; border-radius: 6px 6px 6px 6px; }
.scrollable .scrollbar { position: relative; width: 6px; -moz-user-select: none; -khtml-user-select: none; user-select: none; }
.scrollable .track { height: 100%; width: 6px; position: relative; padding: 0 1px; }
.scrollable .thumb { height: 20px; width: 6px; cursor: pointer; overflow: hidden; position: absolute; top: 0; }
.scrollable .thumb .end { overflow: hidden; height: 5px; width: 13px; }
.scrollable .disable { display: none; }
