.clearfix {
  *zoom: 1;
  display: block;
}
.clearfix:after {
  content: ".";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.site-nav > .nav-list > li {
  margin-top: 1px;
  height: 52px;
  background: rgba(255,255,255,0.87);
}
.site-nav > .nav-list > li:hover {
  background: #ffffff;
}
.site-nav {
  width: 100%;
  height: 52px;
  position: fixed;
  z-index: 100;
  right: 0;
  top: 131px;
}
.site-nav .nav-toggle {
  position: absolute;
  z-index: 1002;
  right: 0;
  top: 0;
  width: 100%;
  height: 52px;
  cursor: pointer;
  border: 0;
  background: #e96a9d;
  background: url(img/nav/arrow-down.png) #e96a9d center center no-repeat;
  font-size: 28px;
  text-align: center;
  text-transform: uppercase;
  font-family: 'Myriad Pro', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', "微軟正黑體", "Microsoft Jhenghei";
  color: #fff;
}
.site-nav .nav-toggle.opened {
  background: url(img/nav/arrow-up.png) #e96a9d center center no-repeat;
}
.site-nav .nav-toggle.opened + .nav-list {
  visibility: visible;
  top: 52px;
  opacity: 1;
}
.site-nav .nav-list {
  *zoom: 1;
  display: block;
  -webkit-transition: .2s all;
  -moz-transition: .2s all;
  -ms-transition: .2s all;
  -o-transition: .2s all;
  transition: .2s all;
  -webkit-transition-property: right, opacity;
  -moz-transition-property: right, opacity;
  -o-transition-property: right, opacity;
  transition-property: right, opacity;
  width: 100%;
  height: 52px;
  position: absolute;
  z-index: 1001;
  visibility: hidden;
  top: -44px;
  left: 0;
  opacity: 0;
}
.site-nav .nav-list:after {
  content: ".";
  display: block;
  height: 0px;
  clear: both;
  visibility: hidden;
}
.site-nav .nav-list > li {
  list-style: none;
  display: block;
}
.site-nav .nav-list > li > a {
  display: block;
  height: 100%;
  line-height: 52px;
  font-size: 28px;
  text-align: center;
  text-transform: uppercase;
  font-family: 'Myriad Pro', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', "微軟正黑體", "Microsoft Jhenghei";
  color: #e96a9d;
}
body {
  position: relative;
  font: 18px 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', "微軟正黑體", "Microsoft Jhenghei";
}
body h1,
body h2,
body h3,
body h4,
body h5,
body p,
body a,
body input,
body textarea {
  font: 18px 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', "微軟正黑體", "Microsoft Jhenghei";
}
html,
body {
  *overflow: hidden;
}
.site-header {
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  height: 131px;
  background: url(img/general/semi-white.png) repeat;
  background: rgba(255,255,255,0.95);
}
.site-header .site-title {
  width: 400px;
  height: 131px;
  margin: 0 auto;
}
.site-header .site-title a {
  display: block;
  width: 100%;
  height: 100%;
}
.site-header .language-aside {
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -17px;
}
.site-footer {
  position: relative;
  width: 100%;
  height: 45px;
  background: url(img/general/semi-white-85.png) repeat;
  background: rgba(255,255,255,0.85);
}
.site-footer.bottom {
  position: absolute;
  left: 0;
  bottom: 0;
}
.site-footer .social-aside {
  float: left;
  padding: 8px 8px 0 18px;
}
.site-footer .social-aside a {
  white-space: nowrap;
  overflow: hidden;
  text-indent: 100%;
  text-indent: -9999px \9;
  *text-transform: capitalize;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  width: 27px;
  height: 27px;
  margin-right: 10px;
  background: url(img/general/social.png) 0 0 no-repeat;
}
.site-footer .social-aside a.facebook {
  background-position: 0 0;
}
.site-footer .social-aside a.facebook:hover {
  background-position: 0 -30px;
}
.site-footer .social-aside a.twitter {
  background-position: -37px 0;
}
.site-footer .social-aside a.twitter:hover {
  background-position: -37px -30px;
}
.site-footer .info-aside {
  float: left;
}
.site-footer .info-aside a {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  height: 45px;
  line-height: 45px;
}
.site-footer .footer-copyright {
  position: absolute;
  right: 16px;
  top: 8px;
}
.form {
  position: relative;
}
.form .error {
  background: #ffd0d0 !important;
}
.form .form-buttons {
  position: relative;
  text-align: center;
}
.form .form-buttons .form-button {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  text-align: center;
  background: none;
  border: 0;
  margin: 0;
  padding: 0;
  width: 70px;
  height: 24px;
  line-height: 24px;
  cursor: pointer;
}
.form .form-buttons .form-button.submit {
  color: #fff;
}
.form .form-buttons .form-button.reset {
  color: #febdd7;
}
.form .form-content {
  position: relative;
}
.form .form-content .field-row {
  margin-bottom: 5px;
}
.form .form-content .field-row .label,
.form .form-content .field-row .input,
.form .form-content .field-row .compulsory {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
}
.form .form-content .field-row .label {
  width: 120px;
  vertical-align: -3px;
  color: #fff;
}
.form .form-content .field-row .input {
  width: 612px;
}
.form .form-content .field-row .input input {
  border: 0;
  margin: 0;
  padding: 0;
}
.form .form-content .field-row .input .type-text {
  width: 602px;
  padding: 0 5px;
  height: 53px;
  line-height: 53px;
  border: 0 #333 solid;
  background-color: #fff;
}
.form .form-content .field-row .input .type-textarea {
  width: 602px;
  height: 133px;
  padding: 12px 5px;
  border: 0 #333 solid;
  background-color: #fff;
}
body {
  background: center top no-repeat;
  background-size: cover;
}
#wrapper {
  position: absolute;
  z-index: 1;
  top: 183px;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: auto;
}
#scroller {
  position: absolute;
  z-index: 1;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  width: 100%;
  padding: 0;
}
.site-content {
  position: relative;
  bottom: auto;
}
.site-content .page-content > .header {
  position: relative;
}
.site-content .page-content > .header .back {
  position: absolute;
  right: 10px;
  top: 10px;
}
.site-content .page-content .photo img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}
.site-content .page-title {
  font-size: 47px;
  font-weight: normal;
  font-family: 'Kozuka Gothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', "微軟正黑體", "Microsoft Jhenghei";
  color: #e96a9d;
  text-transform: uppercase;
}
.site-content.home {
  height: 100%;
}
.site-content.home .page-content {
  height: 100%;
}
.site-content.home .banner-container {
  width: 100%;
  height: 100%;
}
.site-content.home .banner-container .banner-list {
  width: 100%;
  height: 100%;
}
.site-content.home .banner-container .banner-list li {
  width: 100%;
  height: 100%;
  position: relative;
}
.site-content.home .banner-container .banner-list li .img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}
.site-content.home + .site-footer {
  z-index: 10000;
}
.site-content.concept {
  padding: 255px 0 90px;
}
.site-content.concept .page-content {
  width: 568px;
  height: 351px;
  padding: 36px 30px;
  background: rgba(255,255,255,0.77);
  box-shadow: 0 0 8px #333;
  margin: 0 auto;
}
body.collection {
  background: #ffbfd9;
}
.site-content.collection {
  padding: 28px 0;
}
.site-content.collection .content-container .header {
  position: relative;
}
.site-content.collection .content-container .header .page-title {
  width: 638px;
  margin: 0 auto;
  color: #fff;
}
.site-content.collection .content-container .header .total-record {
  margin: 10px auto;
  text-align: center;
}
.site-content.collection .content-container .header .total-record .record-count {
  font-size: 18px;
}
.site-content.collection .content-container .collection-container {
  width: 100%;
  height: 812px;
  padding: 8px 0;
  overflow: hidden;
  position: relative;
}
.site-content.collection .content-container .collection-container .collection-list-container {
  width: 629px;
  height: 100%;
  margin: 0 auto;
  position: relative;
}
.site-content.collection .content-container .collection-container .collection-list-container >.inner {
  width: 629px;
  padding-right: 150px;
  position: relative;
}
.site-content.collection .content-container .collection-container .collection-list {
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  white-space: nowrap;
}
.site-content.collection .content-container .collection-container .collection-list li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  white-space: normal;
  position: relative;
  width: 605px;
  height: 722px;
  padding: 12px;
  margin-right: 150px;
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 8px #666;
  cursor: pointer;
}
.site-content.collection .content-container .collection-container .collection-list li .thumbnail {
  width: 100%;
  height: 100%;
}
.site-content.collection .content-container .collection-container .collection-list li .thumbnail img {
  width: 100%;
}
.site-content.collection .content-container .collection-container .collection-list li .thumbnail a {
  display: block;
  width: 100%;
  height: 100%;
}
.site-content.collection .content-container .collection-container .collection-list li .thumbnail .img {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}
.site-content.collection .content-container .collection-container .collection-list li .info {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  background: rgba(255,255,255,0.6);
}
.site-content.collection .content-container .collection-container .collection-list li .info .title {
  font-weight: bold;
  font-size: 25px;
  height: 50px;
  line-height: 50px;
  background: url(img/collection/arrow-down.png) right 13px no-repeat;
}
.site-content.collection .content-container .collection-container .collection-list li .info .title,
.site-content.collection .content-container .collection-container .collection-list li .info .content {
  width: 496px;
  margin: 0 auto;
}
.site-content.collection .content-container .collection-container .collection-list li .info .content {
  padding-top: 10px;
  padding-bottom: 20px;
  white-space: normal;
  text-overflow: clip;
  overflow: hidden;
}
.site-content.collection .content-container .collection-container .collection-list li .info .content * {
  white-space: normal;
  text-overflow: clip;
  line-height: 1.5em;
}
.site-content.collection .content-container .collection-container .collection-list li.closed .title {
  background: url(img/collection/arrow-up.png) right 13px no-repeat;
}
.site-content.collection .content-container .collection-container .collection-list li.closed .info .content {
  height: 0 !important;
  padding-bottom: 0;
}
.site-content.collection .content-container .collection-container .controls {
  width: 630px;
  height: 50px;
  margin: 0 auto;
  position: relative;
}
.site-content.collection .content-container .collection-container .controls .control {
  display: block;
  width: 95px;
  height: 27px;
  position: absolute;
  z-index: 1000000;
  top: 0;
  cursor: pointer;
}
.site-content.collection .content-container .collection-container .controls .control.prev {
  left: 0;
  background: url(img/collection/arrow-prev.png) left top no-repeat;
}
.site-content.collection .content-container .collection-container .controls .control.next {
  right: 0;
  background: url(img/collection/arrow-next.png) left top no-repeat;
}
body.collectionplus {
  background: #C9E5FF;
}
.site-content.collectionplus {
  padding: 28px 0;
}
.site-content.collectionplus .content-container .header {
  position: relative;
}
.site-content.collectionplus .content-container .header .page-title {
  width: 638px;
  margin: 0 auto;
  color: #fff;
}
.site-content.collectionplus .content-container .header .total-record {
  margin: 10px auto;
  text-align: center;
}
.site-content.collectionplus .content-container .header .total-record .record-count {
  font-size: 18px;
}
.site-content.collectionplus .content-container .collectionplus-container {
  width: 100%;
  height: 812px;
  padding: 8px 0;
  overflow: hidden;
  position: relative;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list-container {
  width: 629px;
  height: 100%;
  margin: 0 auto;
  position: relative;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list-container >.inner {
  width: 629px;
  padding-right: 150px;
  position: relative;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list {
  position: absolute;
  left: 0;
  top: 0;
  width: auto;
  white-space: nowrap;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  white-space: normal;
  position: relative;
  width: 605px;
  height: 722px;
  padding: 12px;
  margin-right: 150px;
  background: rgba(255,255,255,0.85);
  box-shadow: 0 0 8px #666;
  cursor: pointer;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .thumbnail {
  width: 100%;
  height: 100%;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .thumbnail img {
  width: 100%;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .thumbnail a {
  display: block;
  width: 100%;
  height: 100%;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .thumbnail .img {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  background: rgba(255,255,255,0.6);
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info .title {
  font-weight: bold;
  font-size: 25px;
  height: 50px;
  line-height: 50px;
  background: url(img/collectionplus/arrow-down.png) right 13px no-repeat;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info .title,
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info .content {
  width: 496px;
  margin: 0 auto;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info .content {
  padding-top: 10px;
  padding-bottom: 20px;
  white-space: normal;
  text-overflow: clip;
  overflow: hidden;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li .info .content * {
  white-space: normal;
  text-overflow: clip;
  line-height: 1.5em;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li.closed .title {
  background: url(img/collectionplus/arrow-up.png) right 13px no-repeat;
}
.site-content.collectionplus .content-container .collectionplus-container .collectionplus-list li.closed .info .content {
  height: 0 !important;
  padding-bottom: 0;
}
.site-content.collectionplus .content-container .collectionplus-container .controls {
  width: 630px;
  height: 50px;
  margin: 0 auto;
  position: relative;
}
.site-content.collectionplus .content-container .collectionplus-container .controls .control {
  display: block;
  width: 95px;
  height: 27px;
  position: absolute;
  z-index: 1000000;
  top: 0;
  cursor: pointer;
}
.site-content.collectionplus .content-container .collectionplus-container .controls .control.prev {
  left: 0;
  background: url(img/collectionplus/arrow-prev.png) left top no-repeat;
}
.site-content.collectionplus .content-container .collectionplus-container .controls .control.next {
  right: 0;
  background: url(img/collectionplus/arrow-next.png) left top no-repeat;
}
.site-content.news .page-title {
  color: #fff;
  padding-left: 25px;
}
.site-content.news .news-list li {
  list-style: none;
  display: block;
  margin-bottom: 1px;
}
.site-content.news .news-list li a {
  display: block;
  border: 4px #e96a9d solid;
  padding: 16px 30px;
  background: rgba(251,230,238,0.8);
}
.site-content.news .news-list li:nth-child(even) a {
  border-color: #8a8a8a;
  background: rgba(255,255,255,0.8);
}
.site-content.news .news-list li .title {
  color: #000;
}
.site-content.news .news-list li .title > * {
  font-size: 22px;
}
.site-content.news .news-list li .content {
  font-size: 20px;
}
.site-content.news-detail .header .back {
  top: 20px;
  text-decoration: underline;
}
.site-content.news-detail .content-container {
  background: rgba(255,255,255,0.85);
}
.site-content.news-detail .content-container .header {
  padding: 20px 33px;
  border-bottom: 4px #e96a9d solid;
}
.site-content.news-detail .content-container .header > * {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: middle;
  margin-right: 15px;
  color: #000;
  font-size: 22px;
}
.site-content.news-detail .content-container .content {
  padding: 24px 33px;
  min-height: 300px;
}
.site-content.contact {
  padding: 34px;
  background: rgba(255,255,255,0.85);
}
.site-content.contact .map-icon {
  position: absolute;
  right: 35px;
  top: 15px;
}
.site-content.contact .contact-form .form-content {
  background: #e96a9d;
  padding: 19px 17px;
}
.site-content.contact .contact-form .form-content .field-row.verify-row .input .type-verify {
  width: 115px;
  height: 42px;
  line-height: 42px;
}
.site-content.policy {
  padding: 28px 0;
}
.site-content.policy .page-content {
  width: 620px;
  min-height: 400px;
  padding: 24px 30px;
  margin: 0 auto;
  background: rgba(255,255,255,0.85);
}
.site-content.policy .page-title {
  margin-bottom: 36px;
}
.site-content.policy .content-article .title {
  font-size: 36px;
}
.site-content.policy .content-article .date {
  display: block;
  font-size: 18px;
  margin-bottom: 12px;
}
