@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap);
/*
 * Tamron Camera Lens CSS Styles
 * Optimized for performance and maintainability
 * 
 * Table of Contents:
 * 1. CSS Reset & Base Styles
 * 2. Typography & Fonts
 * 3. Layout & Grid System
 * 4. Components & Modules
 * 5. Responsive Design
 * 6. Utility Classes
 */
/* ==========================================================================
   1. CSS Reset & Base Styles
   ========================================================================== */
* {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}
html {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
/* ==========================================================================
   2. Typography & Fonts
   ========================================================================== */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
q,
blockquote {
  quotes: none;
}
q:before,
q:after,
blockquote:before,
blockquote:after {
  content: "";
  content: none;
}
a img {
  border: none;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
*:after {
  display: block;
  clear: both;
}
.jp {
  font-family: "Noto Sans SC", sans-serif
;
}
.en {
  font-family: "Noto Sans SC", sans-serif
;
  letter-spacing: .05em;
}
.serif {
  font-family: "Noto Sans SC", sans-serif
;
  letter-spacing: .05em;
}
body.lenses article section.FloatingSystem .block .feature_body {
  font-size: 1.6rem;
  line-height: 1.8;
  padding-top: 15px;
  /* padding-bottom: 15px; */
}
.mincho {
  font-family: "Noto Sans SC", sans-serif
;
}
*:after {
  display: block;
  clear: both;
}
a {
  color: #000;
}
strong {
  font-weight: bold;
}
.underline {
  text-decoration: underline;
}
.left {
  float: left;
}
.right {
  float: right;
}
/* Utility Classes */
.mgt10 {
  margin-top: 10px;
}
.mgt20 {
  margin-top: 20px;
}
.mgb100 {
  margin-bottom: 100px;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
  margin: 0;
  padding: 0;
}
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  text-rendering: optimizeLegibility;
}
strong {
  font-weight: bold;
}
[class^="icon-"],
[class*=" icon-"] {
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-download:before {
  content: "\e602";
}
.icon-bubble2:before {
  content: "\e603";
}
.icon-plus:before {
  content: "\e805";
}
.bx-wrapper {
  position: relative;
  margin: 0 auto 60px;
  padding: 0;
  zoom: 1;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}
.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.mod-spacer-small {
  margin-top: 48px;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
@font-face {
  font-family: 'tmrnp';
  src: url("/assets/font/tmrnp.eot?wxafg5");
  src: url("/assets/font/tmrnp.eot?wxafg5#iefix") format("embedded-opentype"), url("/assets/font/tmrnp.ttf?wxafg5") format("truetype"), url("/assets/font/tmrnp.woff?wxafg5") format("woff"), url("/assets/font/tmrnp.svg?wxafg5#tmrnp") format("svg");
  font-weight: normal;
  font-style: normal;
}
.slick-arrow.slick-hidden {
  display: none;
}
.slick-arrow {
  position: absolute;
  z-index: 10000;
  display: block;
  width: 28px;
  height: 28px;
  top: 50%;
  margin-top: -14px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  padding: 0;
  background: transparent;
  color: transparent;
  border: none;
  outline: none;
}
.slick-arrow:hover,
.slick-arrow:focus {
  outline: none;
  background: transparent;
  color: transparent;
  -webkit-transition: 0.3s ease-out;
  -moz-transition: 0.3s ease-out;
  -ms-transition: 0.3s ease-out;
  -o-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}
.slick-arrow:hover:before,
.slick-arrow:focus:before {
  opacity: 1;
}
.slick-arrow.slick-disabled:before {
  opacity: 0.25;
}
.slick-arrow:before {
  font-family: 'tmrnp';
  font-size: 28px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-prev {
  left: -22px;
}
[dir="rtl"] .slick-prev {
  left: auto;
  right: -22px;
}
.slick-prev:before {
  content: "";
}
[dir="rtl"] .slick-prev:before {
  content: "�?;
}
.slick-next {
  right: -22px;
}
[dir="rtl"] .slick-next {
  left: -22px;
  right: auto;
}
.slick-next:before {
  content: "�?;
}
[dir="rtl"] .slick-next:before {
  content: "";
}
.slick-dots {
  position: absolute;
  bottom: 30px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 12px;
  width: 12px;
  margin: 0 7px;
  padding: 0;
  cursor: pointer;
  text-align: center;
}
.slick-dots li button {
  display: inline-block;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
  height: 12px;
  width: 12px;
  line-height: 12px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  outline: none;
  font-size: 0;
  background-color: #393939;
  border: 1px solid #393939;
  color: transparent;
  cursor: pointer;
  -webkit-transition: 0.25s ease;
  -moz-transition: 0.25s ease;
  -ms-transition: 0.25s ease;
  -o-transition: 0.25s ease;
  transition: 0.25s ease;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
  background-color: #727272;
  border: 1px solid #727272;
}
.slick-dots li.slick-active button {
  background-color: white;
}
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}
.fancybox-nav {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}
.fancybox-nav span {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}
.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10020;
}
.fancybox-skin {
  position: relative;
  background: white;
  color: #444;
  text-shadow: none;
}
.fancybox-opened {
  z-index: 10030;
}
.fancybox-outer {
  position: relative;
}
.fancybox-inner {
  position: relative;
  overflow: hidden;
}
.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch;
}
.fancybox-error {
  color: #444;
  font: 14px/20px "Helvetica Neue", Helvetica, Arial, sans-serif;
  margin: 0;
  padding: 15px;
  white-space: nowrap;
}
.fancybox-image,
.fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%;
}
.fancybox-image {
  max-width: 100%;
  max-height: 100%;
}
#fancybox-loading,
.fancybox-close,
.fancybox-prev span,
.fancybox-next span {
  background-image: url("fancybox_sprite.png");
}
.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll;
}
.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0;
}
.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 10010;
  background: rgba(242, 242, 242, 0.9);
}
#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background-position: 0 -108px;
  opacity: 0.8;
  cursor: pointer;
  z-index: 10060;
}
#fancybox-loading div {
  width: 44px;
  height: 44px;
  background: url("../img/plugin/fancybox/fancybox_loading.gif") center center no-repeat;
}
.fancybox-close {
  position: absolute;
  right: 10px;
  top: -50px;
  width: 32px;
  height: 32px;
  cursor: pointer;
  background: url(../img/plugin/fancybox/btn_close.png) no-repeat 0 0 !important;
}
.fancybox-nav {
  position: absolute;
  top: 0;
  width: 0;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  z-index: 10040;
}
.fancybox-prev {
  left: 0;
}
.fancybox-next {
  right: 0;
}
.fancybox-nav span {
  display: block;
  position: absolute;
  top: 50%;
  width: 36px;
  height: 60px;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
  margin-top: -18px;
  cursor: pointer;
  z-index: 10040;
  visibility: visible;
  background-image: url(../img/plugin/fancybox/btn_cursor.png);
  background-repeat: no-repeat;
  background-color: transparent;
}
.mod-txt {
  font-size: 1.8rem;
  line-height: 1.5;
  padding-top: 2rem;
  display: block;
  font-weight: bold;
}
.fancybox-prev span {
  left: -60px;
  background-position: left 0 !important;
}
.fancybox-next span {
  right: -60px;
  background-position: right 0 !important;
}
.fancybox-nav:hover span {
  visibility: visible;
}
.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  visibility: hidden;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important;
}
.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 10px;
  color: #fff;
}
.fancybox-title-inside-wrap {
  padding-top: 10px;
}
.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: rgba(0, 0, 0, 0.8);
}
.image-row .item.image {
  margin: 0;
  width: 46%;
}
/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min--moz-device-pixel-ratio: 1.5),
only screen and (min-device-pixel-ratio: 1.5) {
  #fancybox-loading div {
    background-image: url("../img/plugin/fancybox/fancybox_loading@2x.gif");
    background-size: 24px 24px;
    /*The size of the normal image, half the size of the hi-res image*/
  }
}
/**
* contactform 7
*/
div.wpcf7 {
  margin: 0;
  padding: 0;
}
div.wpcf7-response-output {
  font-weight: bold;
  font-size: 1.4em;
  margin: 0 auto 32px !important;
  padding: 10px 5px !important;
}
div.wpcf7 .screen-reader-response {
  position: absolute;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  width: 1px;
  margin: 0;
  padding: 0;
  border: 0;
}
div.wpcf7 .screen-reader-response ul {
  display: none;
}
div.wpcf7-mail-sent-ok {
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  background: #000;
  color: white;
  padding: 8px;
  text-align: center;
}
div.wpcf7-mail-sent-ng,
div.wpcf7-spam-blocked {
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  background: #ff5555;
  color: white;
  padding: 8px;
  text-align: center;
}
div.wpcf7-validation-errors {
  border: 0 none !important;
  background: #ff5555;
  color: white;
  padding: 8px;
  text-align: center;
}
span.wpcf7-form-control-wrap {
  /* position: relative; */
}
span.wpcf7-not-valid-tip {
  position: absolute;
  left: 0;
  bottom: -10px;
  z-index: 100;
  display: block;
  width: 100%;
  color: #f34743;
  font-size: 1em;
  white-space: nowrap;
}
.use-floating-validation-tip span.wpcf7-not-valid-tip {
  position: absolute;
  top: 20%;
  left: 20%;
  z-index: 100;
  border: 1px solid #ff0000;
  background: #fff;
  padding: .2em .8em;
}
span.wpcf7-list-item {
  margin-left: 0.5em;
}
.wpcf7-display-none {
  display: none;
}
div.wpcf7 img.ajax-loader {
  border: none;
  vertical-align: middle;
  margin-left: 4px;
}
div.wpcf7 div.ajax-error {
  display: none;
}
div.wpcf7 .placeheld {
  color: #888;
}
html {
  font-family: "Noto Sans SC", sans-serif
;
  font-size: 62.5%;
}
body {
  /* -webkit-text-size-adjust: none; */
  position: relative;
  width: auto;
  font-size: 1em;
  line-height: 1;
  color: #000;
  background-color: #fff;
}
body .inner {
  max-width: 1200px;
  width: 100%;
  padding: 0 20px;
  margin-left: auto;
  margin-right: auto;
}
*+html body {
  font-family: "Noto Sans SC", sans-serif
;
}
*+html body .en {
  font-size: 100%;
  letter-spacing: 0;
}
a {
  text-decoration: none;
}
a:link,
a:visited {
  color: #000;
}
a:hover,
a:active {
  color: #2a6cd6;
}
a.hvr {
  display: inline-block;
}
.in-block {
  width: 100%;
  max-width: 970px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 769px) {
  .in-block {
    padding-left: 0;
  }
}
@media screen and (min-width: 1200px) {
  .in-block {
    padding-right: 0;
  }
}
input[type=text],
input[type=number],
input[type=email] {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
  border: 0 none;
  background: white;
}
textarea {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
  border: 0 none;
  background: white;
}
input[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  border-radius: 0;
  border: 0 none;
  background: white;
}
input[type=text]:focus,
input[type=number]:focus,
input[type=email]:focus {
  outline: 0;
}
textarea:focus {
  outline: 0;
}
input[type=submit] {
  background-color: #000;
  color: white;
}
input[type=submit]:focus {
  outline: 0;
}
figure.photo img,
div.photo img {
  display: block;
  width: 100%;
}
.preloader i {
  color: #aaa;
  font-size: 40px;
}
.opacity0 {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.opacity1 {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
.bg_black {
  background-color: black !important;
  color: white;
}
.bg_black a {
  color: white !important;
}
.bg_black a:hover {
  color: #2a6cd6 !important;
}
.bg_white {
  background-color: white !important;
}
.bg_gray {
  background-color: #efefef !important;
}
.bg_gray2 {
  background-color: #efefef !important;
}
.bg_beige {
  background-color: #d4cbc4 !important;
}
.bg_lt-beige {
  background-color: #dfdbdc !important;
}
.bg_pickup {
  background-color: #fcfbf5 !important;
}
nav.page-nation a {
  font-size: 1.2rem;
  color: #2a6cd6;
}
nav.page-nation a:hover {
  text-decoration: underline;
}
.item_middle {
  text-align: center;
  line-height: 1.5;
}
.item_middle img {
  margin: 0 auto;
}
/* = footer#siteFooter
---------------------------------------------------------------------*/
footer#siteFooter {
  width: 100%;
  background-color: #fafafa;
}
footer#siteFooter .inner {
  position: relative;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  /* = Responsive (~900)
  -------------------------------------------------------------*/
  /* = Responsive (-768)
  -------------------------------------------------------------*/
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
footer#siteFooter .inner nav.top {
  height: 60px;
}
footer#siteFooter .inner nav.top:after {
  content: "";
}
footer#siteFooter .inner nav.top .left {
  height: 60px;
  line-height: 60px;
  font-size: 1.2rem;
}
footer#siteFooter .inner nav.top .right {
  height: 60px;
  line-height: 60px;
  font-size: 1.2rem;
}
footer#siteFooter .inner nav.top .right a.toTop {
  position: relative;
  display: inline-block;
  padding-right: 28px;
}
/* footer#siteFooter .inner nav.top .right a.toTop:after {
  position: absolute;
  right: 0;
  top: 20px;
  z-index: 1;
  display: block;
  content: '';
  width: 20px;
  height: 20px;
  background: transparent url("../img/common/btn_totop.png") right 0 no-repeat;
  -moz-background-size: 20px 20px;
  -o-background-size: 20px 20px;
  -webkit-background-size: 20px 20px;
  background-size: 20px 20px;
} */
footer#siteFooter .inner nav.top .right a.toTop:hover {
  color: #000 !important;
}
footer#siteFooter .inner nav.middle {
  position: relative;
  padding-top: 20px;
  padding-bottom: 50px;
  border-top: 1px solid #bdbdbd;
  border-bottom: 1px solid #bdbdbd;
  font-size: 1.2rem;
}
footer#siteFooter .inner nav.middle ul.sns {
  position: absolute;
  right: 0;
  bottom: 16px;
  z-index: 1;
  width: 100%;
  text-align: right;
}
footer#siteFooter .inner nav.middle .column6 {
  width: 100%;
}
footer#siteFooter .inner nav.middle .column6 .col {
  margin-bottom: 0 !important;
  width: 16.66667%;
  height: 185px;
}
footer#siteFooter .inner nav.middle .column6 .col .lead {
  font-weight: bold;
  margin-bottom: 15px;
}
footer#siteFooter .inner nav.middle .column6 .col ul {
  display: block;
}
footer#siteFooter .inner nav.middle .column6 .col ul li {
  display: block;
  width: 100%;
  margin-bottom: 8px;
}
footer#siteFooter .inner nav.middle .column6 .col ul li a {
  color: #757575;
}
footer#siteFooter .inner nav.bottom {
  padding-top: 20px;
  height: 60px;
}
footer#siteFooter .inner nav.bottom:after {
  content: "";
}
footer#siteFooter .inner nav.bottom .left,
footer#siteFooter .inner nav.bottom .right {
  font-size: 1.2rem;
}
footer#siteFooter .inner nav.bottom .left {
  margin-bottom: 30px;
}
footer#siteFooter .inner nav.bottom .left ul:after {
  content: "";
}
footer#siteFooter .inner nav.bottom .left ul li {
  float: left;
  margin-right: 18px;
  margin-bottom: 8px;
}
footer#siteFooter .inner nav.bottom .left ul li:last-child {
  margin-right: 0;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 192dpi) {
  footer#siteFooter .inner nav.top .right a.toTop:after {
    background-image: url("../img/common/btn_totop@2x.png");
    -webkit-background-size: 20px 20px;
    -moz-background-size: 20px 20px;
    -o-background-size: 20px 20px;
    background-size: 20px 20px;
  }
}
@media screen and (max-width: 900px) {
  footer#siteFooter .inner nav.middle {
    padding-top: 20px;
    padding-bottom: 50px;
    font-size: 1.2rem;
  }
  footer#siteFooter .inner nav.middle ul.sns {
    position: absolute;
    right: 0;
    bottom: 16px;
    z-index: 1;
    width: 100%;
    text-align: right;
  }
  footer#siteFooter .inner nav.middle .column6 .col {
    width: 33.33333%;
  }
  footer#siteFooter .inner nav.middle .column6 .col .lead {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 480px) {
  footer#siteFooter .inner nav.top {
    height: auto;
    margin-bottom: 8px;
  }
  footer#siteFooter .inner nav.top .left,
  footer#siteFooter .inner nav.top .right {
    height: auto;
    line-height: 1.6;
  }
  footer#siteFooter .inner nav.top .left {
    float: none;
  }
  footer#siteFooter .inner nav.top .right {
    margin-top: 20px;
  }
  footer#siteFooter .inner nav.top .right a.toTop:after {
    top: -2px;
  }
  footer#siteFooter .inner nav.middle {
    position: relative;
    padding-top: 20px;
    padding-bottom: 50px;
    border-top: 1px solid #bdbdbd;
    border-bottom: 1px solid #bdbdbd;
    font-size: 1.2rem;
  }
  footer#siteFooter .inner nav.middle ul.sns {
    position: absolute;
    right: 0;
    bottom: 16px;
    z-index: 1;
    width: 100%;
    text-align: right;
  }
  footer#siteFooter .inner nav.middle .column6 {
    display: block;
  }
  footer#siteFooter .inner nav.middle .column6 .col {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 40px !important;
  }
  footer#siteFooter .inner nav.middle .column6 .col .lead {
    margin-bottom: 15px;
  }
  footer#siteFooter .inner nav.middle .column6 .col ul {
    display: block;
  }
  footer#siteFooter .inner nav.middle .column6 .col ul li {
    margin-bottom: 8px;
  }
  footer#siteFooter .inner nav.middle .column6 .col ul li a {
    color: #757575;
  }
  footer#siteFooter .inner nav.bottom {
    height: auto;
    padding-top: 10px;
  }
  footer#siteFooter .inner nav.bottom .left,
  footer#siteFooter .inner nav.bottom .right {
    height: auto;
    line-height: inhe;
    font-size: 1.2rem;
  }
  footer#siteFooter .inner nav.bottom .left ul:after {
    content: "";
  }
  footer#siteFooter .inner nav.bottom .left ul li {
    float: left;
    width: 50%;
    height: 30px;
    line-height: 30px;
    margin-right: 0;
  }
}
/* = #contents
---------------------------------------------------------------------*/
div#contents {
  background-color: white;
}
header#siteHeaderSP {
  display: none;
  position: relative;
  width: 100%;
  height: 62px;
  padding-top: 18px;
}
header#siteHeaderSP h1 {
  margin-left: auto;
  margin-right: auto;
  width: 105px;
  height: 25px;
}
header#siteHeaderSP h1 a {
  display: block;
  display: block;
  text-align: left;
  text-indent: -9999px;
  width: 105px;
  height: 25px;
  background: transparent url("../img/common/logo_main_sp.png") center center no-repeat;
  -moz-background-size: 105px 25px;
  -o-background-size: 105px 25px;
  -webkit-background-size: 105px 25px;
  background-size: 105px 25px;
}
header#siteHeader {
  width: 100%;
  height: 70px;
}
header#siteHeader .inner {
  position: relative;
}
header#siteHeader .inner div.main {
  position: relative;
  height: 70px;
  padding-top: 24px;
}
header#siteHeader .inner div.main h1#mainLogo {
  position: relative;
  width: 130px;
  height: 22px;
}
header#siteHeader .inner div.main h1#mainLogo a {
  display: block;
  display: block;
  text-align: left;
  text-indent: -9999px;
  width: 130px;
  height: 22px;
  background: transparent url("/assets/img/common/logo_main.png") center center no-repeat;
  -moz-background-size: 130px 22px;
  -o-background-size: 130px 22px;
  -webkit-background-size: 130px 22px;
  background-size: 130px 22px;
}
header#siteHeader .inner div.main h1#mainLogo a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
  opacity: 0.6;
  -webkit-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -moz-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -ms-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -o-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
}
header#siteHeader nav#utilNavi {
  position: absolute;
  right: 20px;
  top: -25px;
  z-index: 1;
  width: 100%;
  height: 25px;
}
header#siteHeader nav#utilNavi ul {
  text-align: right;
}
header#siteHeader nav#utilNavi ul li {
  display: inline-block;
  margin-left: 12px;
  font-size: 1.1em;
  height: 25px;
  line-height: 25px;
}
header#siteHeader nav#utilNavi ul li a {
  color: #424242;
}
header#siteHeader nav#utilNavi ul li.lang {
  border-bottom: 1px solid;
}
header#siteHeader nav#utilNavi ul li.lang a {
  display: block;
  padding: 0 4px;
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 192dpi) {
  header#siteHeaderSP h1 a {
    background-image: url("../img/common/logo_main_sp@2x.png");
    -webkit-background-size: 105px 25px;
    -moz-background-size: 105px 25px;
    -o-background-size: 105px 25px;
    background-size: 105px 25px;
  }
}
@media screen and (min-width: 769px) {
  header#siteHeaderSP {
    display: none;
  }
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 192dpi) {
  header#siteHeader .inner div.main h1#mainLogo a {
    background-image: url("../img/common/logo_main@2x.png");
    -webkit-background-size: 130px 22px;
    -moz-background-size: 130px 22px;
    -o-background-size: 130px 22px;
    background-size: 130px 22px;
  }
}
.product header#siteHeader nav#siteNavi li.product a,
.special header#siteHeader nav#siteNavi li.special a,
.single-gallery header#siteHeader nav#siteNavi li.special a,
.single-column header#siteHeader nav#siteNavi li.special a,
.support header#siteHeader nav#siteNavi li.support a,
.repair header#siteHeader nav#siteNavi li.support a {
  color: #2a6cd6;
}
header#siteHeader #naviBtn {
  display: none;
}
header#siteHeader nav#siteNaviSP {
  display: none;
}
header#siteHeader nav#siteNavi {
  position: absolute;
  right: 0;
  top: 23px;
  z-index: 3;
  height: 24px;
  display: block !important;
  width: auto;
}
header#siteHeader nav#siteNavi ul {
  text-align: right;
}
header#siteHeader nav#siteNavi ul li {
  font-size: 1.6rem;
  height: 24px;
  line-height: 24px;
  display: inline-block;
  margin-right: 20px;
}
header#siteHeader nav#siteNavi ul li:last-child {
  margin-right: 0;
}
header#siteHeader nav#siteNavi ul li a {
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  header#siteHeader {
    display: block;
  }
  header#siteHeader nav#siteNaviSP {
    display: none;
  }
  header#siteHeader nav#siteNavi {
    position: absolute;
    right: 0;
    top: 23px;
    z-index: 3;
    height: 24px;
    display: block !important;
  }
  header#siteHeader nav#siteNavi ul li {
    height: 24px;
    line-height: 24px;
    display: inline-block;
  }
  header#siteHeader nav#siteNavi ul li:last-child {
    margin-right: 0;
  }
  header#siteHeader nav#siteNavi ul li a {
    position: relative;
    display: inline-block;
  }
}
@media screen and (max-width: 480px) {
  header#siteHeader {
    display: block;
    height: auto;
    border-top: 0 none;
  }
  header#siteHeader #naviBtn {
    display: block;
    position: fixed;
    right: 12px;
    top: 22px;
    z-index: 999999;
  }
  header#siteHeader #naviBtn .menu-trigger {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    display: block;
    position: relative;
    width: 36px;
    height: 24px;
  }
  header#siteHeader #naviBtn .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  header#siteHeader #naviBtn .menu-trigger.active div {
    display: none;
  }
  header#siteHeader #naviBtn .menu-trigger.active span {
    background-color: #757575;
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(1) {
    transform: translateY(11px) rotate(-135deg);
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-10px) rotate(-45deg);
  }
  header#siteHeader nav#utilNavi,
  header#siteHeader nav#siteNavi {
    display: none !important;
  }
  header#siteHeader nav#siteNaviSP {
    position: fixed;
    z-index: 10002;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    background-color: white;
  }
  header#siteHeader nav#siteNaviSP ul {
    width: 100%;
    text-align: center;
    padding-top: 75px;
  }
  header#siteHeader nav#siteNaviSP ul li {
    padding-right: 20px;
    width: 100%;
    margin-bottom: 20px;
  }
  header#siteHeader nav#siteNaviSP ul li:last-child {
    margin-bottom: 0;
  }
  header#siteHeader nav#siteNaviSP ul li a {
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: .1em;
    display: block;
    /* vertical-align: middle; */
    text-align: right;
    width: 100%;
    height: 100%;
    color: #000;
  }
}
.breadcrumbs .inner {
  position: relative;
  padding-top: 32px;
  padding-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1.2;
}
.breadcrumbs .inner span span {
  color: #2a6cd6;
}
.breadcrumbs .inner span a span {
  color: #000 !important;
}
.breadcrumbs .inner span a:hover span {
  color: #2a6cd6 !important;
}
.breadcrumbs .inner nav#subNavi {
  position: absolute;
  right: 20px;
  top: 32px;
  z-index: 1;
  font-size: 1.2rem;
}
.breadcrumbs .inner nav#subNavi ul li {
  display: inline-block;
  border-left: 1px solid #757575;
  padding-left: 9px;
  margin-left: 8px;
}
.breadcrumbs .inner nav#subNavi ul li:first-child {
  padding-left: 0;
  margin-left: 0;
  border: 0 none;
}
@media screen and (max-width: 700px) {
  .breadcrumbs .inner nav#subNavi {
    position: static;
    margin-top: 30px;
  }
}
@media screen and (max-width: 480px) {
  .breadcrumbs {
    margin-bottom: -20px;
  }
  .breadcrumbs .inner nav#subNavi {
    display: none;
  }
  .breadcrumbs .inner nav#subNavi ul li {
    display: block;
    padding-left: 0;
    margin-left: 0;
    border: 0 none;
    margin-bottom: 8px;
  }
  .breadcrumbs .inner nav#subNavi ul li:last-child {
    margin-bottom: 0;
  }
  .breadcrumbs .inner nav#subNavi ul li:before {
    display: inline-block;
    content: '�?';
    padding-right: 2px;
  }
}
a.moreBtn {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 102px;
  border: 1px solid #757575;
  text-align: center;
  padding: 8px;
  font-size: 1.2em;
}
a.moreBtn:hover {
  color: white !important;
  background-color: #2a6cd6;
  border-color: #2a6cd6;
}
#bannerArea .item {
  border-bottom: 1px solid #757575;
}
#bannerArea .item.last-child {
  border-bottom: 0 none;
}
#bannerArea .item.black {
  background-color: black;
}
#bannerArea .item .inner {
  position: relative;
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
#bannerArea .item .inner a {
  display: table;
  color: white;
  height: 200px;
}
#bannerArea .item .inner a .title {
  position: relative;
  z-index: 10;
  display: table-cell;
  vertical-align: middle;
  padding-right: 300px;
}
#bannerArea .item .inner a .title .lead {
  font-size: 1.4rem;
  margin-bottom: 10px;
}
#bannerArea .item .inner a .title .name {
  font-size: 2rem;
  line-height: 1.4;
  word-break: break-all;
}
#bannerArea .item .inner a figure {
  position: absolute;
  right: 20px;
  top: 50%;
  z-index: 1;
  width: 333px;
  height: 200px;
  margin-top: -100px;
}
#bannerArea .item .inner a figure img {
  display: block;
  width: 100%;
}
@media screen and (max-width: 480px) {
  #bannerArea .item .inner {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #bannerArea .item .inner a {
    display: block;
    height: auto;
  }
  #bannerArea .item .inner a .title {
    display: block;
    padding-right: 0;
    margin-bottom: 25px;
  }
  #bannerArea .item .inner a .title .lead {
    font-size: 1.3rem;
    margin-bottom: 7px;
  }
  #bannerArea .item .inner a .title .name {
    font-size: 1.7rem;
  }
  #bannerArea .item .inner a figure {
    position: static;
    width: 270px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
  }
}
.column:after {
  content: "";
}
.column .col {
  margin-bottom: 30px;
  float: left;
}
.column .col a figure {
  overflow: hidden;
}
.column .col a figure img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  height: 100%;
  display: block;
  width: auto;
  z-index: 1;
}
.column .moreBlock {
  float: left;
  width: 100%;
}
.column.video .col a figure {
  position: relative;
}
.column.video .col a figure:before {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  display: block;
  content: '';
  width: 80px;
  height: 80px;
  margin-left: -40px;
  margin-top: -40px;
  background: transparent url("../img/common/icon_play.png") center center no-repeat;
  -moz-background-size: 80px 80px;
  -o-background-size: 80px 80px;
  -webkit-background-size: 80px 80px;
  background-size: 80px 80px;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
}
.column.video .col a figure.photo:before {
  display: none;
}
.column.video .col a:hover figure:before {
  -moz-transform: scale(0.8, 0.8);
  -ms-transform: scale(0.8, 0.8);
  -webkit-transform: scale(0.8, 0.8);
  transform: scale(0.8, 0.8);
}
.column.exif .col a figure {
  margin-bottom: 26px;
  position: relative;
  width: 100%;
  padding-top: 66.6666666667%;
  height: 0;
  position: relative;
}
.column.exif .col a div.data {
  position: relative;
  font-size: 1.3rem;
}
.column.exif .col a div.data ul.info li {
  margin-bottom: 6px;
  line-height: 1.3;
}
.column.exif .col a div.data .filesize {
  position: absolute;
  right: 10px;
  top: 0;
  z-index: 1;
  font-weight: bold;
}
.column.product .col a {
  display: block;
  position: relative;
  background-color: #f5f5f5;
}
.column.product .col a figure.new:after {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 1;
  width: 34px;
  height: 34px;
  -moz-border-radius: 17px;
  -webkit-border-radius: 17px;
  border-radius: 17px;
  display: block;
  content: 'New';
  line-height: 34px;
  color: #2a6cd6;
  border: 1px solid #2a6cd6;
  font-family: 'Source Sans Pro', sans-serif;
  letter-spacing: .05em;
  font-size: 1.2rem;
  text-align: center;
  -webkit-transition: 0.25s ease;
  -moz-transition: 0.25s ease;
  -ms-transition: 0.25s ease;
  -o-transition: 0.25s ease;
  transition: 0.25s ease;
}
.column.product .col a div.data {
  position: absolute;
  left: 0;
  top: 25px;
  z-index: 2;
  width: 100%;
  padding: 0 55px 0 25px;
  font-family: 'Source Sans Pro', sans-serif;
  letter-spacing: .05em;
}
.column.product .col a div.data .title {
  font-weight: 600;
  font-size: 1.9em;
  line-height: 1.4;
  margin-bottom: 2px;
}
.column.product .col a div.data .model {
  font-size: 1.5rem;
}
.column.product .col a div.data .series {
  margin-top: 16px;
  display: inline-block;
  width: 40px;
  background-color: #757575;
  color: white;
  padding: 2px;
  font-weight: bold;
  font-size: 1.4em;
  text-align: center;
}
.column.product .col a:hover figure.new:after {
  background-color: #2a6cd6;
  color: white;
}
.column.product .col a div.data .type {
  margin-top: 5px;
  display: inline-block;
  background-color: #757575;
  color: white;
  padding: 3px 5px;
  font-weight: bold;
  font-size: 1.4em;
  text-align: center
}
.column.product .col a .sub {
  position: absolute;
  left: 15px;
  bottom: 15px;
  z-index: 2;
  font-family: 'Source Sans Pro', sans-serif;
  letter-spacing: .05em;
  line-height: 1.4;
  display: inline-block;
  /*  background-color: #757575;*/
  /*  color: white;*/
  padding: 2px;
  font-weight: bold;
  font-size: 1.3em;
}
.column.label .lbl {
  display: block;
  background-color: white;
}
.column.label .lbl .cat {
  color: #757575;
  font-size: 1.2rem;
  line-height: 1.5;
}
.column.label.label1 .lbl {
  padding: 20px 24px;
}
.column.label.label1 .lbl .title {
  margin-top: 14px;
  margin-bottom: 3px;
  font-weight: bold;
  font-size: 1.7rem;
  line-height: 1.6;
}
.column.label.label1 .lbl .author {
  font-size: 1.4rem;
  line-height: 1.4;
}
.column.label.label2 .lbl {
  padding: 14px;
}
.column.label.label2 .lbl .title {
  margin-bottom: 12px;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.6;
}
.column.label.label3 .col {
  margin-bottom: 0;
}
.column.label.label3 .col:first-child a.lbl,
.column.label.label3 .col:nth-child(2) a.lbl {
  border-top: 1px solid #666;
}
.column.label.label3 a.lbl {
  position: relative;
  background-color: transparent;
  border-bottom: 1px solid #666;
  padding: 34px 0 34px 3px;
}
body.lenses article section#information table th {
  font-weight: bold;
  width: 35%;
  padding: 0 14px 22px 0;
  vertical-align: text-top;
}
.column.label.label3 a.lbl:before {
  position: absolute;
  right: 14px;
  top: 50%;
  z-index: 1;
  width: 24px;
  height: 24px;
  font-size: 24px;
  margin-top: -12px;
  content: '\e602';
  display: block;
}
.column.label.label3 a.lbl .title {
  margin-bottom: 12px;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.6;
}
.column.label.label3 a.lbl .meta {
  font-size: 1.4em;
  color: #757575;
  min-height: 38px;
}
.column.label.label3 a.lbl .meta .model {
  margin-bottom: 8px;
}
.column.label.label3 a.lbl:hover {
  background-color: #f5f5f5;
}
.column.column2 {
  margin-left: -1%;
  margin-right: -1%;
}
.column.column2 .col {
  width: 50%;
  padding-left: 1%;
  padding-right: 1%;
  min-height: 1px;
}
.column.column3 {
  margin-left: -1%;
  margin-right: -1%;
  padding-top: 1.2rem;
}
.column.column3 .col {
  width: 33.3333%;
  padding-left: 1%;
  padding-right: 1%;
  min-height: 1px;
}
.column.column3 .col.col-double {
  float: right;
  width: 66.6666%;
}
.column.video .col a figure:before {
  background-image: url("../img/common/icon_play@2x.png");
  -webkit-background-size: 80px 80px;
  -moz-background-size: 80px 80px;
  -o-background-size: 80px 80px;
  background-size: 80px 80px;
}
@media screen and (max-width: 1000px) {
  .column.product .col a {
    padding-top: 35px;
  }
  .column.product .col a figure.new:after {
    right: auto;
    top: auto;
    left: 6%;
    bottom: 25px;
  }
  .column.product .col a div.data {
    padding: 0 6%;
  }
}
@media screen and (max-width: 768px) {
  .column .col {
    width: 100%;
    margin-bottom: 50px;
    float: none;
  }
  .column.label3 .col:nth-child(2) a.lbl {
    border-top: 0 none !important;
  }
  .column.column2,
  .column.column3 {
    margin-left: 0;
    margin-right: 0;
  }
  .column.column2 .col,
  .column.column3 .col {
    width: 100%;
    max-width: 580px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
  .column.product .col a {
    padding-top: 0;
  }
  .column.product .col a figure.new:after {
    left: 6%;
    bottom: 25px;
  }
  .column.product .col a div.data {
    padding: 0 6%;
  }
}
@media screen and (max-width: 480px) {
  .column .moreBlock {
    float: none;
  }
  .column.column3 .col.col-double {
    width: 100% !important;
    height: auto !important;
    float: none;
    margin-bottom: 0;
  }
}
body article {
  padding-top: 50px;
}
body article div#main {
  width: 100%;
}
body article div#main:after {
  content: "";
}
body article div#main h1#pageTitle {
  font-weight: bold;
  font-size: 2.4rem;
  margin-bottom: 8px;
}
body article div#main h1#pageTitle .right {
  float: right;
  font-weight: normal;
  font-size: 1.4rem;
  color: #2a6cd6;
}
body article div#main .meta {
  font-size: 1.4em;
  color: #757575;
}
body article div#main .slider .slide {
  padding-top: 64px;
  padding-bottom: 64px;
}
body article div#main figure img {
  display: block;
  max-width: 100%;
}
body article div#main div.links {
  margin-top: 14px;
  text-align: right;
}
body article div#main div.links a.fb {
  position: relative;
  display: inline-block;
  font-size: 1.4rem;
  padding-left: 30px;
}
body.lenses article section #subGallery.slick .slider-for figure figcaption {
  position: absolute;
  right: 10px;
  bottom: 10px;
  z-index: 1;
  font-size: 2rem;
  color: white
}
body.lenses article section #subGallery.slick .slider-for figure figcaption span.num {
  font-weight: bold;
  font-size: 2.4rem
}
body.lenses article section #subGallery.slick .slider-for figure figcaption span.mm {
  font-weight: bold;
  font-size: 1.4rem
}
body article div#main div.links a.fb:before {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  display: block;
  content: '\e700';
  font-size: 1.6rem;
  text-align: center;
  padding-top: 5px;
  background-color: #3B5998;
  color: white;
  width: 26px;
  height: 26px;
  margin-top: -6px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
body section {
  padding-top: 150px;
  padding-bottom: 40px;
  margin-top: -110px;
}
body section h1 {
  font-weight: normal;
  line-height: 1.2;
  font-size: 5.6rem;
  font-family: "Noto Sans JP", sans-serif;
}
body section h1 .right {
  float: right;
  font-weight: normal;
  font-size: 1.2rem;
  color: #2a6cd6;
}
body section h1 .attention {
  display: block;
  margin-top: 8px;
  font-weight: normal;
  font-size: 1.2rem;
}
body section .inner .column {
  margin-bottom: 50px;
}
body section#lensblog {
  background-color: #fcfbf5;
}
body section#lensblog .column3 {
  margin-left: 0;
  margin-right: 0;
}
body section#lensblog .column3 .col {
  padding-left: 0;
  padding-right: 0;
  width: 33.8333%;
}
body section#lensblog .column3 .col.col1 {
  padding: 2%;
  background-color: white;
}
body section#lensblog .column3 .col.col1 h2 {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.6;
  margin-bottom: 30px;
}
body section#lensblog .column3 .col.col1 h2 span {
  display: block;
  padding-top: 14px;
}
body section#lensblog .column3 .col.col1 .date {
  border-bottom: 1px solid #bdbdbd;
  padding-bottom: 14px;
  margin-bottom: 13px;
  color: #666;
  font-size: 1.2rem;
}
body section#lensblog .column3 .col.col1 .description {
  font-size: 1.3rem;
}
body section#lensblog .column3 .col.col1 .description p {
  line-height: 1.7;
  margin-bottom: 20px;
}
body section#lensblog .column3 .col.col1 .description a {
  color: #2a6cd6;
}
body section#lensblog .column3 .col.col-double {
  width: 66.1666%;
}
body section#support {
  background-color: #eee;
}
body section#support .column2 .col a {
  display: block;
}
body section#support .column2 .col .lbl {
  padding: 30px 24px;
  position: relative;
}
body section#support .column2 .col .lbl h2 {
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 30px;
}
body section#support .column2 .col .lbl p {
  padding-right: 75px;
  font-size: 1.3rem;
  line-height: 1.6;
  color: #757575;
}
body section#support .column2 .col .lbl ul li {
  font-size: 1.8rem;
  margin-bottom: 18px;
}
body section#support .column2 .col .lbl ul li a {
  color: #757575;
}
body section#support .column2 .col .lbl:before {
  display: block;
  position: absolute;
  right: 24px;
  top: 50%;
  margin-top: -32px;
  width: 64px;
  height: 64px;
  font-size: 60px;
}
body section#support .column2 .col.download .lbl:before {
  content: "\e602";
}
body section#support .column2 .col.repair .lbl:before {
  content: "\e601";
}
body section#support .column2 .col.qa .lbl:before {
  content: "\e603";
}
body section#support .column2 .col.contact .lbl:before {
  content: "\e604";
}
ul.sns li {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  margin: 0 12px;
}
ul.sns li a {
  display: block;
  width: 20px;
  color: #1e1e1e;
}
ul.sns li a span {
  display: none;
}
ul.sns li a:before {
  font-size: 1.7em;
}
ul.sns li.facebook a:hover {
  color: #3B5998;
}
ul.sns li.facebook a:before {
  content: '\e700';
}
ul.sns li.twitter a:hover {
  color: #55acee;
}
ul.sns li.twitter a:before {
  content: '\e701';
}
ul.sns li.instagram a:hover {
  color: #3f729b;
}
ul.sns li.instagram a:before {
  content: '\e702';
}
ul.sns li.youtube a:hover {
  color: #cd201f;
}
ul.sns li.youtube a:before {
  content: '\e703';
}
body.error404 article {
  padding-top: 80px;
  padding-bottom: 50px;
}
body.error404 article .inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
body.error404 article section {
  padding-top: 0;
  padding-bottom: 60px;
}
body.error404 article section h1 {
  font-weight: bold;
  font-size: 1.7rem;
  line-height: 1.4;
  margin-bottom: 8px;
}
body.error404 article section p {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 25px;
}
body.error404 article section a {
  color: #2a6cd6;
  font-size: 1.2rem;
}
body.error404 article section.en h1 {
  font-size: 1.8rem;
}
body.error404 article section.en p {
  font-size: 1.5rem;
}
body.error404 article section.en a {
  font-size: 1.3rem;
}
body.home article {
  padding-top: 0;
}
body.home article section#pickup {
  background-color: #fcfbf5;
}
body.home article section#news {
  background-color: #f5f5f5;
}
body.home article section#news a.moreBtn {
  margin-top: 50px;
}
body.home article section#news div.moreBlock {
  margin-top: 20px;
}
body.home article section#news ul {
  font-size: 1.4em;
  line-height: 1.4;
}
body.home article section#news ul li {
  display: table;
  margin-bottom: 20px;
}
body.home article section#news ul li:last-child {
  margin-bottom: 0;
}
body.home article section#news ul li div {
  display: table-cell;
  vertical-align: top;
}
body.home article section#news ul li div.meta {
  width: 310px;
}
body.home article section#news ul li div.meta:after {
  content: "";
}
body.home article section#news ul li div.meta div {
  display: block;
  float: left;
}
body.home article section#news ul li div.meta div.date {
  width: 140px;
}
body.home article section#news ul li div.meta div.cat {
  width: 170px;
  padding-right: 20px;
}
body.home article section#news ul li div.meta div.cat span {
  text-align: center;
  display: block;
  background-color: white;
  color: #2f2f2f !important;
  font-size: 1.3rem;
  color: white;
  padding: 1px 4px;
}
body.home article section#news ul li div.text {
  width: auto;
}
body.home article section#gallery {
  background-color: #f5f5f5;
}
body.product article div.header {
  position: relative;
  /* = Responsive (-768)
  -------------------------------------------------------------*/
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.product article div.header #refine {
  position: absolute;
  right: 0;
  top: -10px;
  z-index: 100;
  width: 465px;
}
body.product article div.header #refine:after {
  content: "";
}
body.product article div.header #refine .block {
  background-color: #f5f5f5;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 10px;
  color: #757575;
}
body.product article div.header #refine .block .lead {
  position: relative;
  cursor: pointer;
  font-size: 1.5em;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 5px;
}
body.product article div.header #refine .block .lead:after {
  position: absolute;
  right: 0;
  top: 50%;
  z-index: 1;
  margin-top: -6px;
  content: '\e800';
  display: block;
  width: 12px;
  height: 12px;
  font-size: 12px;
  line-height: 12px;
  color: #757575;
}
body.product article div.header #refine .block ul {
  border-top: 1px solid #757575;
  padding-top: 18px;
  padding-bottom: 20px;
}
body.product article div.header #refine .block ul li {
  display: table;
  cursor: pointer;
  font-size: 1.2rem;
  margin-bottom: 8px;
  padding-left: 24px;
  position: relative;
  overflow: hidden;
}
body.product article div.header #refine .block ul li span.type {
  display: table-cell;
  width: 30px;
}
body.product article div.header #refine .block ul li span.name {
  display: table-cell;
  width: 180px;
}
body.product article div.header #refine .block ul li:before {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1;
  margin-top: -6px;
  padding-left: 1px;
  content: '';
  font-size: 12px;
  line-height: 12px;
  display: block;
  width: 12px;
  height: 12px;
  color: white;
  background-color: #757575;
}
body.product article div.header #refine .block ul li:hover {
  color: #2a6cd6;
}
body.product article div.header #refine .block ul li:last-child {
  margin-bottom: 0;
}
body.product article div.header #refine .block ul li.active:before {
  content: '\e804';
  background-color: #2a6cd6;
}
body.product article div.header #refine .block.series {
  width: 275px;
  float: left;
}
body.product article div.header #refine .block.lens {
  width: 175px;
  float: right;
}
body.product article section#intro {
  background-color: black;
}
body.product article section#intro .inner {
  background: url(../img/lenses/f000/SP90_product-image_large.jpg) no-repeat right bottom black;
  -moz-background-size: 85%;
  -o-background-size: 85%;
  -webkit-background-size: 85%;
  background-size: 85%;
  padding-top: 40px;
  padding-bottom: 40px;
}
body.product article section#intro .ttl {
  width: 50%;
  margin-bottom: 80px;
}
body.product article section#intro .ttl img {
  width: 100%;
}
body.product article section#intro .subttl {
  color: white;
}
body.product article section#intro .subttl .image {
  width: 13%;
  margin-bottom: 25px;
}
body.product article section#intro .subttl .image img {
  width: 100%;
}
body.product article section#intro .txt1Wrap {
  padding-left: 7px;
  border-left: 1px solid #fff;
}
body.product article section#intro .txt1Wrap div {
  font-size: 1.4rem;
}
body.product article section#intro .txt1Wrap div.txt1 {
  margin-bottom: 15px;
}
body.product article section#intro .txt1Wrap div.txt3 {
  margin-top: 10px;
  font-size: 1rem;
}
body.product article section#product h2 {
  font-weight: bold;
  font-size: 1.6rem;
  border-bottom: 1px solid #757575;
  padding-bottom: 16px;
  margin-bottom: 20px;
}
body.product-home article {
  padding-top: 0;
}
body.lenses .box {
  padding: 20px;
  /* = Responsive (-768)
  -------------------------------------------------------------*/
}
body.lenses .box:after {
  content: "";
}
body.lenses .box .title,
body.lenses .box .txt {
  float: left;
  width: 50%;
  padding-right: 20px;
}
body.lenses .box .title {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.3;
  margin-bottom: 20px;
}
body.lenses .box .txt p {
  font-size: 1.4rem;
  line-height: 1.6;
}
body.lenses .box .txt small {
  font-size: 1.2rem;
  line-height: 1.5;
}
body.lenses .box figure {
  float: right;
  width: 50%;
}
body.lenses .box figure img {
  display: block;
  width: 100%;
  margin-bottom: 5px;
}
body.lenses .box figure figcaption {
  font-size: 1.2rem;
  color: #757575;
  text-align: right;
}
body.lenses #vc {
  color: white;
  background-color: black;
}
body.lenses #vc.box .title {
  width: 100%;
  margin-bottom: 14px;
}
body.lenses #vc.box .block:after {
  content: "";
}
body.lenses #vc.box .block1 {
  margin-bottom: 30px;
}
body.lenses #vc.box .block1 figure.left {
  float: left !important;
  width: 35%;
}
body.lenses #vc.box .block1 .txt {
  padding-right: 0;
  padding-left: 20px;
  width: 65%;
}
body.lenses #vc.box .block2 .txt {
  float: none;
  width: 100%;
  margin-bottom: 15px;
}
body.lenses #vc.box .block2 figure.image {
  float: none;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
body.lenses #vc.box .block2 figure.image figcaption {
  text-align: left;
  font-size: 1.1rem;
  line-height: 1.3;
}
body.lenses #modal-mtf {
  padding: 20px;
}
body.lenses #modal-mtf .title {
  font-weight: bold;
  font-size: 1.9rem;
  line-height: 1.4;
  margin-bottom: 30px;
}
body.lenses #modal-mtf .text p {
  font-size: 1.5rem;
  line-height: 1.7;
}
body.lenses article {
  padding-top: 0;
  font-family: "Noto Sans SC", sans-serif
;
}
body.lenses article section.ProductOverview .inner {
  max-width: 800px;
  line-height: 1.5;
}
body.lenses article section.ProductOverview h2 {
  font-weight: bold;
  font-size: 2.2rem;
  margin-bottom: 24px;
}
body.lenses article section.ProductOverview h3 {
  font-size: 1.6rem;
}
body.lenses article section.ProductOverview small {
  font-size: 1.2rem;
  line-height: 1.5;
}
body.lenses article section#imageGallery .inner {
  position: relative;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  position: relative;
  min-height: 280px;
}
body.lenses article section#imageGallery .inner .slick.loading {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
body.lenses article section#imageGallery .inner .spin {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 200000;
  width: 100%;
  height: 100%;
  background: url(../img/common/spin.gif) no-repeat center center black;
}
body.lenses article section#imageGallery .slider {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}
body.lenses article section#imageGallery .slider-for .slick-arrow {
  width: 50px;
  height: 50px;
  margin-top: -25px;
}
body.lenses article section#imageGallery .slider-for .slick-arrow:before {
  font-size: 50px;
}
body.lenses article section#imageGallery .slider-for .slick-prev {
  left: -42px;
}
body.lenses article section#imageGallery .slider-for .slick-next {
  right: -42px;
}
body.lenses article section#imageGallery .slider-for .slick-dots {
  bottom: -22px;
}
body.lenses article section#imageGallery .slider-nav figure {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
  opacity: 0.5;
}
body.lenses article section#imageGallery .slider-nav figure.slick-current,
body.lenses article section#imageGallery .slider-nav figure:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
body.lenses article section#imageGallery .pager {
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}
body.lenses article section#imageGallery .pager .bx-wrapper .bx-pager {
  bottom: 0;
}
body.lenses article section#imageGallery .pager .bx-wrapper .bx-prev {
  left: -45px;
}
body.lenses article section#imageGallery .pager .bx-wrapper .bx-prev:after {
  text-indent: 0 !important;
  line-height: 1;
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  font-size: 30px;
}
body.lenses article section#imageGallery .pager .bx-wrapper .bx-next {
  right: -45px;
}
body.lenses article section#imageGallery .pager .bx-wrapper .bx-next:after {
  text-indent: 0 !important;
  line-height: 1;
  content: "�??";
  display: block;
  width: 30px;
  height: 30px;
  font-size: 30px;
}
body.lenses article section#imageGallery .slick {
  position: relative;
}
body.lenses article section#imageGallery .slick .slider {
  margin-left: auto;
  margin-right: auto;
  max-width: 900px;
}
body.lenses article section#imageGallery .slick .slider figure {
  padding: 8px;
}
body.lenses article section#imageGallery .slick .slider figure img {
  margin-left: auto;
  margin-right: auto;
  display: block;
  max-width: 100%;
}
body.lenses article section#imageGallery .slick .slider-for figure img {
  max-height: 580px;
}
body.lenses article section#imageGallery .slick .slider-for figure figcaption {
  font-size: 1.2rem;
  color: white;
  padding-top: 10px;
  line-height: 20px;
}
body.lenses article section#imageGallery .slick .slider-nav figure {
  max-height: 600px;
  overflow: hidden;
  max-height: 114px;
  outline: none;
}
body.lenses article section#imageGallery .controls {
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -112.5px;
}
body.lenses article section#imageGallery .controls a {
  position: absolute;
  display: block;
  width: 27px;
  height: 44px;
  transition-timing-function: linear;
  transition-duration: .15s;
  opacity: .5;
  color: #fff;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 27px 44px;
  display: block;
  text-align: left;
  text-indent: -9999px;
}
body.lenses article section#imageGallery .controls a.prev {
  left: -80px;
  transition-property: left, opacity;
  background-image: url(../img/lenses/arrow_right_white.png);
}
body.lenses article section#imageGallery .controls a.next {
  right: -80px;
  transition-property: right, opacity;
  background-image: url(../img/lenses/arrow_left_white.png);
}
body.lenses article section#imageGallery form {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 900px;
  width: 100%;
  margin-top: 18px;
}
body.lenses article section#imageGallery form .lead {
  display: inline-block;
  font-size: 1.3rem;
  vertical-align: middle;
}
body.lenses article section#imageGallery form select {
  margin-left: 8px;
  margin-right: 8px;
  vertical-align: middle;
}
body.lenses article section#imageGallery form select option {
  font-size: 1.2rem;
  font-family: "Noto Sans SC", sans-serif
;
}
@media screen and (max-width: 480px) {
  body.lenses article section#imageGallery form {
    text-align: center;
    margin-top: 40px;
  }
  body.lenses article section#imageGallery form .lead {
    font-size: 1.2em;
  }
  body.lenses article section#imageGallery form select option {
    font-size: 1.2em;
    margin-bottom: 6px;
  }
}
body.lenses article section#information {
  font-size: 1.4rem;
  line-height: 1.3;
}
body.lenses article section#information h3 {
  font-weight: bold;
  font-size: 1.9rem;
  margin-bottom: 35px;
}
body.lenses article section#information h3 small {
  font-size: .8em;
}
body.lenses article section#information table {
  width: 100%;
  margin-bottom: 20px;
}
body.lenses article section#information table th {
  font-weight: bold;
  width: 35%;
  padding: 0 14px 22px 0;
  vertical-align: text-top;
}
body.lenses article section#information table td {
  vertical-align: text-top;
  padding: 0 14px 22px 0;
}
body.lenses article section#information small {
  color: #868686;
  font-size: .8em;
}
body.lenses article section#information .note small {
  color: #757575;
}
body.lenses article section#information .right .figure1 {
  position: relative;
  margin-bottom: 55px;
}
body.lenses article section#information .right .figure1 a.button {
  position: absolute !important;
  right: 0;
  top: -8px;
  z-index: 1;
  display: inline-block;
  line-height: normal;
  position: relative;
  padding: 8px 14px;
  cursor: pointer;
  text-align: center;
  color: #333;
  border: 1px solid #333;
  background-color: transparent;
}
body.lenses article section#information .right figure img {
  display: block;
  width: 100%;
}
body.lenses article section#information .modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  display: none;
  overflow-y: scroll;
  width: 100%;
  height: 100%;
}
body.lenses article section#information .modal a.close {
  font-size: 2.5rem;
  font-weight: 100;
  line-height: normal;
  position: absolute;
  z-index: 2000;
  top: 2%;
  right: 2%;
  cursor: pointer;
  color: #000;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
body.lenses article section.FloatingSystem {
  /* = Responsive (-768)
  -------------------------------------------------------------*/
}
body.lenses article section.FloatingSystem .block {
  padding-top: 15px;
  padding-bottom: 15px;
}
body.lenses article section.FloatingSystem .block:after {
  content: "";
}
body.lenses article section.FloatingSystem .block .left {
  width: 46%;
  display: block;
}
.feature_body a {
  display: inline-block;
  padding: 4px 5px 2px;
  box-sizing: border-box;
  background: #005bac;
  color: #ffffff;
  margin: 5px 0;
  line-height: 1.4;
  font-size: 1.4rem;
}
body.lenses article section.FloatingSystem .block .right {
  width: 46%;
  display: block;
}
body.lenses article section.FloatingSystem .block.block30-70 .left {
  width: 28%;
}
body.lenses article section.FloatingSystem .block.block30-70 .right {
  width: 68%;
}
body.lenses article section.FloatingSystem .block.block20-80 .left {
  width: 18%;
}
body.lenses article section.FloatingSystem .block.block20-80 .right {
  width: 78%;
}
body.lenses article section.FloatingSystem .block.block70-30 .left {
  width: 68%;
}
body.lenses article section.FloatingSystem .block.block70-30 .right {
  width: 28%;
}
body.lenses article section.FloatingSystem .block.block80-20 .left {
  width: 78%;
}
body.lenses article section.FloatingSystem .block.block80-20 .right {
  width: 18%;
}
body.lenses article section.FloatingSystem .block .feature_header {
  font-weight: bold;
  font-size: 2.2rem;
  line-height: 1.4;
  margin-bottom: 20px;
  margin-top: -4px;
}
body.lenses article section.FloatingSystem .block .feature_body {
  font-size: 1.6rem;
  line-height: 1.7;
  padding-top: 15px;
  padding-bottom: 15px;
}
body.lenses article section.FloatingSystem .block .feature_body small {
  font-size: 1.2rem;
  line-height: 1.5;
}
body.lenses article section.FloatingSystem .block .feature_body a.detail {
  font-size: 1.4rem;
}
body.lenses article section.FloatingSystem .block figure img {
  display: block;
  max-width: 100%;
}
body.lenses article section.FloatingSystem .block figure figcaption {
  margin-top: 8px;
  font-size: 1.2rem;
  line-height: 1.3;
}
body.lenses article section.FloatingSystem .block figure figcaption.right {
  width: 100% !important;
  text-align: right;
}
body.lenses article section.FloatingSystem.lenses .item {
  text-align: center;
}
body.lenses article section.FloatingSystem.lenses .item .feature_header {
  margin-bottom: 12px;
}
body.lenses article section.FloatingSystem.lenses .item .model {
  font-weight: bold;
  font-size: 1.4rem;
}
body.lenses article section.FloatingSystem.lenses figure {
  margin-top: 30px;
  margin-bottom: 42px;
  padding: 0 16%;
}
body.lenses article section.FloatingSystem.lenses a.btn {
  display: block;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #757575;
  width: 120px;
  font-size: 1.3rem;
  padding: 10px;
}
body.lenses article section.FloatingSystem.lenses a.btn:hover {
  color: white !important;
  background-color: #2a6cd6;
  border-color: #2a6cd6;
}
body.lenses article section.FloatingSystem.bg_left {
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 47%;
  padding-top: 8%;
  padding-bottom: 8%;
}
body.lenses article section.FloatingSystem.bg_left .block figure.left {
  display: none;
}
body.lenses article section.FloatingSystem.bg_right {
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 47%;
  padding-top: 8%;
  padding-bottom: 8%;
}
body.lenses article section.FloatingSystem.bg_right .block .left {
  float: none;
}
body.lenses article section.FloatingSystem.bg_right .block figure.right {
  display: none;
}
body.lenses article section ul.list {
  /* = Responsive (-768)
  -------------------------------------------------------------*/
}
body.lenses article section ul.list li {
  float: left;
  border-bottom: 1px solid #757575;
  width: 46%;
}
body.lenses article section ul.list li a {
  position: relative;
  display: block;
  padding: 30px 0;
  font-size: 1.6rem;
  line-height: 1.3;
  padding-right: 40px;
}

body.lenses article section ul.list li a:hover {
  background-color: #f5f5f5;
}
body.lenses article section ul.list li a:hover:after {
  color: #2a6cd6;
}
body.lenses article section#additionalFeatures {
  padding-bottom: 50px;
}
@media screen and (max-width: 768px) {
  body.lenses article section#additionalFeatures ul.list li a {
    height: auto !important;
  }
}
body.lenses article section#reviews {
  padding-bottom: 50px;
}
body.lenses article section#reviews .block ul.list li a:after {
  content: '\e801';
}
body.lenses article section#accessories .column .col figure div.frame img {
  display: block;
  height: auto;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
body.lenses article section#accessories .column .col figure figcaption {
  padding-top: 8px;
  text-align: left;
  font-size: 1.3rem;
  line-height: 1.5;
}
body.lenses article section nav#maker {
  margin-bottom: 30px;
  /* = Responsive (-768)
  -------------------------------------------------------------*/
}
body.lenses article section nav#maker ul li {
  display: inline-block;
}
body.lenses article section nav#maker ul li:last-child a {
  border-right: 1px solid #000;
}
body.lenses article section nav#maker ul li a {
  display: block;
  text-align: center;
  width: 115px;
  padding: 10px;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  color: #000;
  font-size: 1.5rem;
}
body.lenses article section nav#maker ul li a.active {
  cursor: default;
  color: white !important;
  background-color: #000;
}
body.lenses article section nav#maker ul li a:hover {
  color: white !important;
  background-color: #000;
}
body.lenses article section nav#color {
  position: absolute;
  right: 0;
  top: 12px;
  z-index: 1;
  text-align: right;
  /* = Responsive (-768)
  -------------------------------------------------------------*/
}
body.lenses article section nav#color ul li {
  display: inline-block;
  margin-right: 12px;
}
body.lenses article section nav#color ul li:last-child a {
  margin-right: 0;
}
body.lenses article section nav#color ul li a {
  display: block;
  text-align: center;
  width: 60px;
  padding: 0 6px 5px;
  color: #000;
  font-size: 1.5rem;
  border-bottom: 2px solid white;
}
body.lenses article section nav#color ul li a.active {
  cursor: default;
  border-bottom: 2px solid #000;
}
body.lenses article section nav#color ul li a.active:hover {
  color: #000 !important;
}
body.lenses article section nav#color ul li a:hover {
  color: #2a6cd6 !important;
}
body.lenses article section#exteriorDesign div.navi {
  position: relative;
}
body.lenses article section#exteriorDesign .slick {
  position: relative;
}
body.lenses article section#exteriorDesign .slick .slider {
  margin-left: auto;
  margin-right: auto;
  max-width: 600px;
}
body.lenses article section#exteriorDesign .slick .slider figure {
  padding: 8px;
}
body.lenses article section#exteriorDesign .slick .slider figure img {
  display: block;
  width: 100%;
}
body.lenses article section#exteriorDesign .slick .slider .slick-dots {
  bottom: -12px;
}
body.lenses article section#exteriorDesign .slick .slick-prev {
  left: -34px;
}
body.lenses article section#exteriorDesign .slick .slick-next {
  right: -34px;
}
body.lenses article section#exteriorDesign .slick .slick-arrow {
  width: 34px;
  height: 34px;
  margin-top: -17px;
}
body.lenses article section#exteriorDesign .slick .slick-arrow:before {
  color: #000;
  font-size: 34px;
}
body.lenses article section#exteriorDesign_large {
  max-height: 800px;
  overflow: hidden;
  /* = Responsive (~768)
  -------------------------------------------------------------*/
}
body.lenses article section#exteriorDesign_large h1 {
  margin-bottom: 30px;
}
body.lenses article section#exteriorDesign_large .maker:after {
  content: "";
}
body.lenses article section#exteriorDesign_large .maker nav {
  float: left;
  width: 48%;
}
body.lenses article section#exteriorDesign_large .maker nav ul li {
  cursor: pointer;
  outline: none;
  padding: 35px 0;
  font-size: 1.5rem;
  border-bottom: 1px solid #757575;
  background-position: right center;
  background-repeat: no-repeat;
  -moz-background-size: auto 50px;
  -o-background-size: auto 50px;
  -webkit-background-size: auto 50px;
  background-size: auto 50px;
}
body.lenses article section#exteriorDesign_large .maker nav ul li:hover {
  color: #2a6cd6;
}
body.lenses article section#exteriorDesign_large .maker .figure {
  float: right;
  width: 48%;
}
body.lenses article section#exteriorDesign_large .maker .figure figure img {
  display: block;
  width: 100%;
}
body.lenses article section#exteriorDesign_large.ex360 #container {
  width: 55%;
  position: relative;
  text-align: center;
}
body.lenses article section#exteriorDesign_large.ex360 #indiator {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1;
  margin-top: -12px;
  text-align: center;
  font-family: 'Source Sans Pro', sans-serif;
  letter-spacing: .05em;
  letter-spacing: .1em;
  font-size: 1.4rem;
  color: #757575;
}
body.lenses article section#exteriorDesign_large.ex360 #spritespin {
  margin-left: auto;
  margin-right: auto;
}
body.lenses article section#exteriorDesign_large.ex360 #slider-ui.ui-widget-content {
  margin-left: auto;
  margin-right: auto;
  border: 0 none;
  background-image: none !important;
  background-color: #000 !important;
  height: 2px;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
body.lenses article section#exteriorDesign_large.ex360 #slider-ui.ui-widget-content a {
  background-image: none;
  width: 26px;
  height: 26px;
  background-image: none !important;
  background-color: #d4cbc4 !important;
  border: 1px solid #000;
  -moz-border-radius: 13px;
  -webkit-border-radius: 13px;
  border-radius: 13px;
  margin-top: -9px;
  outline: none !important;
}
body.lenses article section#exteriorDesign_large.ex360 p.note {
  margin-top: 32px;
  color: #757575;
  font-size: 1.4rem;
  text-align: center;
}
body.discontinued article div#main {
  /* = Responsive (-768)
  -------------------------------------------------------------*/
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.discontinued article div#main h1#pageTitle {
  margin-bottom: 15px;
}
body.discontinued article div#main p.maincopy {
  font-size: 1.4rem;
  line-height: 1.6;
  max-width: 740px;
}
body.discontinued article div#main p.maincopy a {
  text-decoration: underline;
}
body.discontinued article div#main section {
  padding-top: 50px;
}
body.discontinued article div#main section h2 {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 6px;
  padding: 3px 0 3px 8px;
  border-left: 4px solid #757575;
}
body.discontinued article div#main section table {
  width: 100%;
  max-width: 740px;
  border-left: 1px solid #757575;
  border-top: 1px solid #757575;
}
body.discontinued article div#main section table caption {
  font-size: 1.3rem;
  line-height: 1.3;
  padding-bottom: 6px;
}
body.discontinued article div#main section table thead tr {
  background-color: #e5e5e5 !important;
}
body.discontinued article div#main section table tr:nth-child(even) {
  background-color: #f5f5f5;
}
body.discontinued article div#main section table tr:nth-child(odd) {
  background-color: #fff;
}
body.discontinued article div#main section table th,
body.discontinued article div#main section table td {
  padding: 7px 5px 5px 8px;
  font-size: 1.4rem;
  line-height: 1.4;
  vertical-align: top;
  border-right: 1px solid #757575;
  border-bottom: 1px solid #757575;
}
body.discontinued article div#main section table th {
  font-weight: bold;
}
body.discontinued article div#main section table td:first-child,
body.discontinued article div#main section table td:last-child {
  width: 130px;
}
body.discontinued article div#main section table td div.txtcap {
  display: inline-block;
  font-size: 80%;
}
body.discontinued article div#main section#old h2 {
  margin-bottom: 20px;
}
body.discontinued article div#main section#museum h2 {
  margin-bottom: 20px;
}
body.discontinued article div#main section#museum ul {
  margin-top: 18px;
}
body.discontinued article div#main section#museum ul li {
  font-size: 1.3rem;
  line-height: 1.4;
  margin-bottom: 8px;
}
body.discontinued article div#main section#museum ul li a {
  color: #2a6cd6;
}
body.discontinued article div#main section#museum ul li a:before {
  content: '>';
  display: inline-block;
  margin-right: 2px;
}
body.discontinued article div#main section#museum ul li a:hover {
  text-decoration: underline;
}
body.interview table.interview {
  width: 100%;
  overflow: hidden;
  font-size: 90%;
  font-size: 1.4rem;
  line-height: 2;
}
body.interview table.interview th {
  display: block;
  min-width: 60px;
  max-width: 100px;
}
body.interview .block.frame {
  border: 1px solid #ccc;
  padding: 0 15px;
}
body.interview .block.frame p.feature_body {
  font-weight: bold;
}
body.interview .block.frame p.feature_body a {
  color: #2a6cd6;
}
body.interview .block.text {
  padding-top: 15px;
  padding-bottom: 15px;
}
body.interview .block.text p {
  margin-bottom: 0 !important;
}
body.interview .block.book .left.image {
  padding-top: 15px;
  padding-bottom: 15px;
  width: 22%;
}
body.interview .block.book .left.text {
  width: 78%;
  padding-left: 15px;
  font-weight: bold;
}
body.interview .block.person {
  font-weight: bold;
}
body.interview .block.person .feature_body {
  padding-top: 0;
  padding-bottom: 10px;
}
body.interview .block.person figure figcaption {
  line-height: 1.5;
}
body.interview .block.person figure figcaption .position {
  font-size: 1.3rem;
}
body.interview .block.person figure figcaption .name {
  font-size: 1.5rem;
}
body.special article {
  padding-top: 0;
}
body.special article div#main {
  padding-bottom: 100px;
}
body.special article div#main div.header {
  margin-bottom: 40px;
  line-height: 1.4;
}
body.special article div#main div.header h1 {
  font-weight: bold;
  font-size: 2.8rem;
  margin-bottom: 8px;
}
body.special-home article section#gallery {
  background-color: #f5f5e9;
}
body.special-home article section#gallery.movie {
  background-color: #fafafa;
}
body.special-home article section#lensblog {
  background-color: #fcfbf5;
}
body.special-home article section#recommend {
  background-color: #e9ece1;
}
body.column-home article ul#articles {
  margin-top: 50px;
  /* = Responsive (-768)
  -------------------------------------------------------------*/
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.column-home article ul#articles:after {
  content: "";
}
body.column-home article ul#articles li {
  float: left;
  width: 49%;
  margin-bottom: 2%;
  background-color: white;
  padding: 15px;
}
body.column-home article ul#articles li:after {
  content: "";
}
body.column-home article ul#articles li:nth-child(2n) {
  float: right;
}
body.column-home article ul#articles li figure {
  float: left;
  width: 34%;
}
body.column-home article ul#articles li figure img {
  width: 100%;
  display: block;
}
body.column-home article ul#articles li .text {
  float: left;
  width: 66%;
  padding-top: 7px;
  padding-left: 15px;
}
body.column-home article ul#articles li .text .number {
  font-weight: bold;
  font-size: 1.4rem;
  margin-bottom: 8px;
}
body.column-home article ul#articles li .text .title {
  font-weight: bold;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 12px;
}
body.column-home article ul#articles li .text .author {
  font-size: 1.2rem;
  color: #757575;
}
body.video #main .inner.col {
  float: none !important;
}
/* = #トップページ
---------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  body.home article section#news ul {
    font-size: 1.5em;
    line-height: 1.4;
    margin-bottom: 42px;
  }
  body.home article section#news ul li {
    margin-bottom: 20px;
  }
  body.home article section#news ul li div.meta {
    width: 200px;
  }
  body.home article section#news ul li div.meta:after {
    content: "";
  }
  body.home article section#news ul li div.meta div {
    float: none;
  }
  body.home article section#news ul li div.meta div.cat {
    margin-top: 2px;
  }
  body.home article section#news ul li div.meta div.cat span {
    display: inline-block;
    padding: 1px 8px;
  }
}
@media screen and (max-width: 480px) {
  body.home article section#news ul {
    display: block;
    font-size: 1.5em;
    line-height: 1.4;
    margin-bottom: 42px;
  }
  body.home article section#news ul li {
    display: block;
    margin-bottom: 35px;
  }
  body.home article section#news ul li div {
    display: block;
  }
  body.home article section#news ul li div.meta {
    width: 100%;
    margin-bottom: 6px;
  }
  body.home article section#news ul li div.meta:after {
    content: "";
  }
  body.home article section#news ul li div.meta div {
    display: block;
  }
  body.home article section#news ul li div.meta div.date {
    font-weight: bold;
  }
}
/* = #製哝情報
---------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  body.product article div.header {
    margin-bottom: 40px;
  }
  body.product article div.header h1 {
    margin-bottom: 40px;
  }
  body.product article div.header #refine {
    position: static;
    margin-left: auto;
    margin-right: auto;
  }
}
/* Mobile Styles - 480px and below */
@media screen and (max-width: 480px) {
  body.product article div.header #refine {
    width: 100%;
  }
  body.product article div.header #refine .block {
    margin-bottom: 20px;
    padding-bottom: 5px;
    float: none !important;
    width: 100% !important;
  }
  /* = #製哝情報 - HOME
---------------------------------------------------------------------*/
  /* = #製哝情報 > レンズ詳�?
---------------------------------------------------------------------*/
  @media screen and (max-width: 768px) {
    body.lenses .box .title,
    body.lenses .box .txt {
      float: none;
      width: 100%;
      padding-right: 0;
    }
    body.lenses .box figure {
      float: none;
      width: 100%;
      padding-right: 0;
      margin-bottom: 20px;
    }
  }
  @media screen and (max-width: 768px) {
    body.lenses #vc.box .block1 figure.left {
      float: left !important;
      width: 50%;
      margin-bottom: 0;
    }
    body.lenses #vc.box .block1 .txt {
      float: right !important;
      padding-left: 20px;
      width: 50%;
    }
    body.lenses #vc.box .block2 figure.image {
      width: 100%;
      margin-left: auto;
      margin-right: auto;
    }
  }
  body.lenses #vc.box .txt {
    font-size: 1.3rem;
  }
  body.lenses #vc.box .block1 figure.left {
    float: none !important;
    width: 100%;
    margin-bottom: 20px;
  }
  body.lenses #vc.box .block1 .txt {
    float: none !important;
    padding-left: 0px;
    width: 100%;
  }
  body.lenses #vc.box .block2 figure.image {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  body.lenses article section#imageGallery #bx-pager1 {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  body.lenses article section#imageGallery .slider-nav {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  body.lenses article section#information .left {
    margin-bottom: 55px;
  }
}
@media screen and (max-width: 768px) {
  body.lenses article section.FloatingSystem .block .left,
  body.lenses article section.FloatingSystem .block .right {
    float: none !important;
    width: 100% !important;
  }
  .image-row .item.image {
    width: 100%;
  }
  body.lenses article section.FloatingSystem .block .left figure.left,
  body.lenses article section.FloatingSystem .block .left figure.right {
    width: 100%;
  }
  body.lenses article section.FloatingSystem .block .right figure.left,
  body.lenses article section.FloatingSystem .block .right figure.right {
    width: 100%;
  }
  body.lenses article section.FloatingSystem .block .feature_header {
    font-size: 2rem;
    margin-bottom: 14px;
  }
  .FloatingSystem .feature_body {
    font-size: 1.6rem;
  }
  body.lenses article section.FloatingSystem .block figure {
    margin-bottom: 22px;
  }
  body.lenses article section.FloatingSystem .block figure figcaption {
    font-size: 1.1rem;
    text-align: center !important;
  }
  body.lenses article section.FloatingSystem.bg_left {
    background-image: none !important;
  }
  body.lenses article section.FloatingSystem.bg_left .inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.lenses article section.FloatingSystem.bg_left .block .right {
    float: none;
    padding: 0 20px;
  }
  body.lenses article section.FloatingSystem.bg_left .block figure.left {
    display: block;
  }
  body.lenses article section.FloatingSystem.bg_right {
    background-image: none !important;
  }
  body.lenses article section.FloatingSystem.bg_right .inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.lenses article section.FloatingSystem.bg_right .block .left {
    float: none;
    padding: 0 20px;
  }
  body.lenses article section.FloatingSystem.bg_right .block figure.right {
    display: block;
  }
}
/* = #生産終了レンズ・交杛マウント一覧表
---------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  body.discontinued article div#main section h2 {
    font-size: 1.6rem;
  }
  body.discontinued article div#main section table td:first-child {
    width: 60px;
  }
  body.discontinued article div#main section table td:last-child {
    width: 75px;
  }
}
@media screen and (max-width: 768px) {
  body.column-home article ul#articles li {
    width: 100%;
    margin-bottom: 20px;
    float: none;
  }
  body.column-home article ul#articles li:nth-child(2n) {
    float: none;
  }
  body.column-home article ul#articles li figure {
    width: 30%;
  }
  body.column-home article ul#articles li .text {
    width: 70%;
    padding-top: 12px;
  }
}
@media screen and (max-width: 480px) {
  body.column-home article ul#articles li figure {
    width: 40%;
  }
  body.column-home article ul#articles li .text {
    width: 60%;
    padding-top: 3px;
    padding-left: 10px;
  }
}
ul#plist li {
  display: table;
  background-color: white;
  width: 100%;
  margin-bottom: 50px;
  padding: 20px;
  padding-bottom: 10px;
  min-height: 150px;
}
ul#plist li div.face {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  min-width: 280px;
  padding-left: 130px;
  padding-right: 20px;
}
ul#plist li div.face figure {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1;
  margin-top: -55px;
  width: 110px;
  height: 110px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
}
ul#plist li div.face figure img {
  display: block;
  width: 100%;
}
ul#plist li div.face .name {
  font-weight: bold;
  font-size: 1.6em;
  line-height: 1.3;
  margin-bottom: 3px;
}
ul#plist li div.face .ruby {
  font-size: 1.2em;
}
ul#plist li div.profile {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.3em;
  line-height: 1.6;
}
ul#plist li div.profile p {
  margin-bottom: 10px;
}
ul#plist li div.profile ul.links li {
  padding: 0;
  margin-bottom: 10px;
  min-height: inherit;
}
ul#plist li div.profile div.toPhotographers {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
}
ul#plist li div.profile div.toPhotographers a {
  text-align: right;
  color: #2a6cd6;
  font-size: 1.3rem;
}
@media screen and (max-width: 480px) {
  ul#plist li {
    display: block;
    width: 100%;
    margin-bottom: 50px;
    padding: 20px;
    padding-bottom: 10px;
  }
  ul#plist li div.face {
    display: block;
    min-width: none;
    width: 100%;
    padding: 0;
    text-align: center;
    margin-bottom: 25px;
  }
  ul#plist li div.face figure {
    position: static;
    width: 180px;
    height: auto;
    margin: 0 auto 20px;
  }
  ul#plist li div.profile {
    display: block;
  }
}
body.photographers article {
  padding-top: 50px;
  background-color: #fafafa;
}
body.photographers article div#main {
  padding-bottom: 50px;
}
body.photographers article h1#pageTitle span.note {
  display: inline-block;
  padding-left: 5px;
  font-weight: normal;
  font-size: 1.3rem;
}
body.repair article div#main {
  padding-bottom: 100px;
}
body.repair article div#main h1#pageTitle {
  margin-bottom: 70px;
}
body.repair article div#main .wrapper {
  display: table;
  width: 100%;
}
body.repair article div#main nav#list {
  display: table-cell;
  width: 20%;
  min-width: 170px;
}
body.repair article div#main nav#list ul li {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 28px;
}
body.repair article div#main nav#list ul li a {
  color: #ccc;
}
body.repair article div#main nav#list ul li a.active {
  color: #000;
}
body.repair article div#main div.cont {
  display: table-cell;
  color: #757575;
}
body.repair article div#main div.cont div.fix {
  margin-bottom: 44px;
}
body.repair article div#main div.cont h2 {
  color: #000;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 20px;
}
body.repair article div#main div.cont p {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 14px;
}
body.repair article div#main div.cont p.mainlead {
  margin-bottom: 40px;
}
body.repair article div#main div.cont p.note {
  font-size: 1.2em;
  line-height: 1.4;
}
body.repair article div#main div.cont ul.links li {
  margin-bottom: 10px;
  font-size: 1.4rem;
  line-height: 1.3;
}
body.repair article div#main div.cont ul.links li:before {
  content: '\e801';
  display: inline-block;
  padding-right: 5px;
  font-size: 1.2rem;
}
body.repair article div#main div.cont ul.links li a {
  color: #2a6cd6;
}
body.repair article div#main div.cont ul.links li a:hover {
  color: #757575;
}
body.repair-home article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.repair-home article div#main div.cont ol li {
  margin-bottom: 40px;
  font-size: 1.4rem;
}
body.repair-home article div#main div.cont ol li h2 {
  font-weight: bold;
  color: #000;
  margin-bottom: 18px;
}
body.repair-home article div#main div.cont ol li h2 span.num {
  display: inline-block;
  width: 30px;
}
body.repair-home article div#main div.cont ol li h3 {
  color: #000;
  margin-bottom: 6px;
}
body.repair-home article div#main div.cont ol li .text {
  padding-left: 30px;
  line-height: 1.7;
}
body.repair-home article div#main div.cont ol li .text a.map {
  color: #2a6cd6;
  text-decoration: underline;
}
body.repair-home article div#main div.cont ol li .text a.map:hover {
  text-decoration: none;
}
body.repair-home article div#main div.cont ol li .text ul.links {
  margin-top: 20px;
}
body.repair-home article div#main div.cont ol li .text ol li,
body.repair-home article div#main div.cont ol li .text ul li {
  margin-bottom: 6px;
}
body.repair-home article div#main div.cont ol li figure {
  text-align: right;
}
body.repair-home article div#main div.cont ol li figure figcaption {
  max-width: 650px;
  font-size: 1.3rem;
}
body.repair-home article div#main div.cont ol li figure figcaption a {
  color: #2a6cd6;
}
body.repair-price article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.repair-price article div#main div.cont ol {
  padding-left: 30px;
}
body.repair-price article div#main div.cont ol li {
  list-style: decimal outside;
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.7;
}
body.repair-price article div#main div.cont ol li ul.links {
  margin-top: 20px;
}
body.repair-price article div#main div.cont ol li ul.links li {
  list-style: none !important;
}
body.repair-price article div#main div.cont div.item {
  margin-top: 50px;
}
body.repair-price article div#main div.cont table.gr {
  width: 100%;
  border-left: 1px solid #999;
  border-top: 1px solid #999;
}
body.repair-price article div#main div.cont table.gr caption {
  position: relative;
  margin-bottom: 10px;
}
body.repair-price article div#main div.cont table.gr caption h2 {
  font-weight: bold;
  font-size: 1.6rem;
  border-left: 4px solid #757575;
  padding-left: 8px;
  color: #000;
}
body.repair-price article div#main div.cont table.gr caption .unit {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  text-align: right;
  font-size: 1.2rem;
}
body.repair-price article div#main div.cont table.gr tr th,
body.repair-price article div#main div.cont table.gr tr td {
  text-align: center;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 5px 3px 3px;
}
body.lenses article section ul.list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style: none;
  font-size: 1.6rem;
}
body.lenses article section ul.list li {
  float: none;
  width: auto;
  flex: 0 1 calc(46%);
  margin-bottom: 20px;
  border-bottom: 1px solid #757575;
}
body.lenses article section nav#maker {
  text-align: center;
}
@media screen and (max-width: 768px) {
  body.lenses article section nav#color {
    text-align: center;
    position: static;
    text-align: center;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  body.lenses article section#exteriorDesign_large .slider-for .slick-dots {
    bottom: -15px;
  }
  body.lenses article section#exteriorDesign_large .maker nav {
    float: none;
    display: none;
  }
  body.lenses article section#exteriorDesign_large .maker .figure {
    float: none;
    width: 100%;
  }
  body.lenses article section#exteriorDesign_large.ex360 #container {
    width: 100%;
  }
  body.lenses article section#exteriorDesign_large.ex360 p.note {
    font-size: 1.3rem;
  }
}
/* = #生産終了レンズ・交杛マウント一覧表
---------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  body.discontinued article div#main section h2 {
    font-size: 1.6rem;
  }
  body.discontinued article div#main section table td:first-child {
    width: 60px;
  }
  body.discontinued article div#main section table td:last-child {
    width: 75px;
  }
}
@media screen and (max-width: 768px) {
  body.column-home article ul#articles li {
    width: 100%;
    margin-bottom: 20px;
    float: none;
  }
  body.column-home article ul#articles li:nth-child(2n) {
    float: none;
  }
  body.column-home article ul#articles li figure {
    width: 30%;
  }
  body.column-home article ul#articles li .text {
    width: 70%;
    padding-top: 12px;
  }
}
@media screen and (max-width: 480px) {
  body.column-home article ul#articles li figure {
    width: 40%;
  }
  body.column-home article ul#articles li .text {
    width: 60%;
    padding-top: 3px;
    padding-left: 10px;
  }
}
ul#plist li {
  display: table;
  background-color: white;
  width: 100%;
  margin-bottom: 50px;
  padding: 20px;
  padding-bottom: 10px;
  min-height: 150px;
}
ul#plist li div.face {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  min-width: 280px;
  padding-left: 130px;
  padding-right: 20px;
}
ul#plist li div.face figure {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1;
  margin-top: -55px;
  width: 110px;
  height: 110px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
}
ul#plist li div.face figure img {
  display: block;
  width: 100%;
}
ul#plist li div.face .name {
  font-weight: bold;
  font-size: 1.6em;
  line-height: 1.3;
  margin-bottom: 3px;
}
ul#plist li div.face .ruby {
  font-size: 1.2em;
}
ul#plist li div.profile {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.3em;
  line-height: 1.6;
}
ul#plist li div.profile p {
  margin-bottom: 10px;
}
ul#plist li div.profile ul.links li {
  padding: 0;
  margin-bottom: 10px;
  min-height: inherit;
}
ul#plist li div.profile div.toPhotographers {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
}
ul#plist li div.profile div.toPhotographers a {
  text-align: right;
  color: #2a6cd6;
  font-size: 1.3rem;
}
@media screen and (max-width: 480px) {
  ul#plist li {
    display: block;
    width: 100%;
    margin-bottom: 50px;
    padding: 20px;
    padding-bottom: 10px;
  }
  ul#plist li div.face {
    display: block;
    min-width: none;
    width: 100%;
    padding: 0;
    text-align: center;
    margin-bottom: 25px;
  }
  ul#plist li div.face figure {
    position: static;
    width: 180px;
    height: auto;
    margin: 0 auto 20px;
  }
  ul#plist li div.profile {
    display: block;
  }
}
body.photographers article {
  padding-top: 50px;
  background-color: #fafafa;
}
body.photographers article div#main {
  padding-bottom: 50px;
}
body.photographers article h1#pageTitle span.note {
  display: inline-block;
  padding-left: 5px;
  font-weight: normal;
  font-size: 1.3rem;
}
body.repair article div#main {
  padding-bottom: 100px;
}
body.repair article div#main h1#pageTitle {
  margin-bottom: 70px;
}
body.repair article div#main .wrapper {
  display: table;
  width: 100%;
}
body.repair article div#main nav#list {
  display: table-cell;
  width: 20%;
  min-width: 170px;
}
body.repair article div#main nav#list ul li {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 28px;
}
body.repair article div#main nav#list ul li a {
  color: #ccc;
}
body.repair article div#main nav#list ul li a.active {
  color: #000;
}
body.repair article div#main div.cont {
  display: table-cell;
  color: #757575;
}
body.repair article div#main div.cont div.fix {
  margin-bottom: 44px;
}
body.repair article div#main div.cont h2 {
  color: #000;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 20px;
}
body.repair article div#main div.cont p {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 14px;
}
body.repair article div#main div.cont p.mainlead {
  margin-bottom: 40px;
}
body.repair article div#main div.cont p.note {
  font-size: 1.2em;
  line-height: 1.4;
}
body.repair article div#main div.cont ul.links li {
  margin-bottom: 10px;
  font-size: 1.4rem;
  line-height: 1.3;
}
body.repair article div#main div.cont ul.links li:before {
  content: '\e801';
  display: inline-block;
  padding-right: 5px;
  font-size: 1.2rem;
}
body.repair article div#main div.cont ul.links li a {
  color: #2a6cd6;
}
body.repair article div#main div.cont ul.links li a:hover {
  color: #757575;
}
body.repair-home article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.repair-home article div#main div.cont ol li {
  margin-bottom: 40px;
  font-size: 1.4rem;
}
body.repair-home article div#main div.cont ol li h2 {
  font-weight: bold;
  color: #000;
  margin-bottom: 18px;
}
body.repair-home article div#main div.cont ol li h2 span.num {
  display: inline-block;
  width: 30px;
}
body.repair-home article div#main div.cont ol li h3 {
  color: #000;
  margin-bottom: 6px;
}
body.repair-home article div#main div.cont ol li .text {
  padding-left: 30px;
  line-height: 1.7;
}
body.repair-home article div#main div.cont ol li .text a.map {
  color: #2a6cd6;
  text-decoration: underline;
}
body.repair-home article div#main div.cont ol li .text a.map:hover {
  text-decoration: none;
}
body.repair-home article div#main div.cont ol li .text ul.links {
  margin-top: 20px;
}
body.repair-home article div#main div.cont ol li .text ol li,
body.repair-home article div#main div.cont ol li .text ul li {
  margin-bottom: 6px;
}
body.repair-home article div#main div.cont ol li figure {
  text-align: right;
}
body.repair-home article div#main div.cont ol li figure figcaption {
  max-width: 650px;
  font-size: 1.3rem;
}
body.repair-home article div#main div.cont ol li figure figcaption a {
  color: #2a6cd6;
}
body.repair-price article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.repair-price article div#main div.cont ol {
  padding-left: 30px;
}
body.repair-price article div#main div.cont ol li {
  list-style: decimal outside;
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.7;
}
body.repair-price article div#main div.cont ol li ul.links {
  margin-top: 20px;
}
body.repair-price article div#main div.cont ol li ul.links li {
  list-style: none !important;
}
body.repair-price article div#main div.cont div.item {
  margin-top: 50px;
}
body.repair-price article div#main div.cont table.gr {
  width: 100%;
  border-left: 1px solid #999;
  border-top: 1px solid #999;
}
body.repair-price article div#main div.cont table.gr caption {
  position: relative;
  margin-bottom: 10px;
}
body.repair-price article div#main div.cont table.gr caption h2 {
  font-weight: bold;
  font-size: 1.6rem;
  border-left: 4px solid #757575;
  padding-left: 8px;
  color: #000;
}
body.repair-price article div#main div.cont table.gr caption .unit {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  text-align: right;
  font-size: 1.2rem;
}
body.repair-price article div#main div.cont table.gr tr th,
body.repair-price article div#main div.cont table.gr tr td {
  text-align: center;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 5px 3px 3px;
}
body.repair-price article div#main div.cont table.gr tr th {
  background-color: #f1f1f1;
  font-weight: bold;
  font-size: 1.2rem;
}
body.repair-price article div#main div.cont table.gr tr th span {
  font-weight: normal;
  font-size: 1rem;
}
body.repair-price article div#main div.cont table.gr tr td {
  font-size: 1.2rem;
  line-height: 1.3;
}
body.repair-price article div#main div.cont .note {
  margin-top: 5px;
  font-size: 1.1rem;
  line-height: 1.4;
}
body.repair-before article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.repair-before article div#main div.cont section {
  padding-top: 0;
  padding-bottom: 55px;
}
body.repair-before article div#main div.cont section h2 {
  font-weight: bold;
  font-size: 1.7rem;
  border-bottom: 1px solid #757575;
  padding-bottom: 8px;
  margin-bottom: 24px;
  color: #000;
}
body.repair-before article div#main div.cont section p,
body.repair-before article div#main div.cont section a {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 12px;
}
body.repair-before article div#main div.cont section p span.line,
body.repair-before article div#main div.cont section a span.line {
  text-decoration: underline;
}
body.repair-before article div#main div.cont section p.copy {
  margin-bottom: 30px;
}
body.repair-before article div#main div.cont section ul.level1 li {
  margin-bottom: 35px;
}
body.repair-before article div#main div.cont section ul.level1 li .lead {
  font-weight: bold;
  font-size: 1.5rem;
  border-left: 4px solid #757575;
  padding: 2px 8px;
  padding-left: 8px;
  color: #000;
  margin-bottom: 10px;
}
body.repair-before article div#main div.cont section ul.level1 li .body a.level2 {
  display: inline-block;
  margin-left: 16px;
}
body.repair-before article div#main div.cont section#step2 h3 {
  display: inline-block;
  color: #000;
  font-weight: bold;
  font-size: 1.5rem;
  border-bottom: 2px solid #757575;
  padding-bottom: 3px;
  margin-bottom: 12px;
}
body.repair-before article div#main div.cont section#step2 p.attention {
  color: #000;
  font-weight: bold;
}
body.repair-before article div#main div.cont section#step5 div.how .title {
  font-weight: bold;
  text-align: center;
  font-size: 1.5rem;
  color: #000;
  margin-bottom: 15px;
}
body.repair-before article div#main div.cont section#step5 div.how ol li {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 70%;
  padding: 30px 5%;
  border: 1px solid #d9d9d9;
  background-color: #fcfafb;
  margin-bottom: 60px;
}
body.repair-before article div#main div.cont section#step5 div.how ol li:after {
  position: absolute;
  left: 50%;
  bottom: -50px;
  z-index: 1;
  display: inline-block;
  width: 40px;
  height: 40px;
  font-size: 40px;
}
body.repair-before article div#main div.cont section#step5 div.how ol li:last-child:after {
  display: none;
}
body.repair-before article div#main div.cont section#step5 div.how ol li a {
  text-decoration: underline;
}
body.repair-before article div#main div.cont section#step5 div.how ol li .title-st {
  font-weight: bold;
  font-size: 1.5rem;
  color: #000;
  margin-bottom: 24px;
}
body.repair-before article div#main div.cont section#step5 div.how ol li ul {
  font-size: 1.4rem;
  margin-bottom: 20px;
}
body.repair-before article div#main div.cont section#step5 div.how ol li ul li {
  list-style: disc outside;
  margin-bottom: 10px;
  border: 0 none;
  background-color: transparent;
  padding: 0;
}
body.repair-before article div#main div.cont section#step5 div.how ol li ul li:last-child {
  margin-bottom: 0;
}
body.repair-before article div#main div.cont section#step5 div.how ol li ul li:after {
  display: none;
}
body.repair-survey article div#main div.cont h2 {
  color: #000;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  margin-bottom: 20px;
}
body.repair-survey article div#main div.cont p {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 14px;
}
body.repair-survey article div#main div.cont ul:after {
  content: "";
}
body.repair-survey article div#main div.cont ul li {
  float: left;
}
body.repair-survey article div#main div.cont ul li:first-child {
  margin-right: 15px;
}
body.repair-survey article div#main div.cont ul li a.btn {
  margin-top: 20px;
  display: inline-block;
  font-size: 1.6em;
  padding: 15px 22px;
  background-color: #2a6cd6;
  color: white;
}
body.repair-survey article div#main div.cont ul li a.btn:hover {
  background-color: #000;
  color: white !important;
}
body.page-template-page-news article {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.page-template-page-news article div#main {
  padding-bottom: 100px;
}
body.page-template-page-news article div#main h1#pageTitle {
  margin-bottom: 70px;
}
body.page-template-page-news article div#main .wrapper {
  display: table;
  width: 100%;
}
body.page-template-page-news article div#main nav#list {
  display: table-cell;
  width: 16%;
  min-width: 110px;
}
body.page-template-page-news article div#main nav#list ul li {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 28px;
}
body.page-template-page-news article div#main nav#list ul li a {
  color: #ccc;
}
body.page-template-page-news article div#main nav#list ul li a.active {
  color: #000;
}
body.page-template-page-news article div#main div.cont {
  display: table-cell;
}
body.page-template-page-news article div#main div.cont div.fix {
  margin-bottom: 44px;
}
body.page-template-page-news article div#main div.cont .month {
  font-weight: bold;
  font-size: 1.4rem;
  margin-bottom: 15px;
}
body.page-template-page-news article div#main div.cont ol li {
  margin-bottom: 40px;
}
body.page-template-page-news article div#main div.cont ol li ul {
  border-top: 1px solid #757575;
}
body.page-template-page-news article div#main div.cont ol li ul li {
  border-bottom: 1px solid #757575;
  display: table;
  width: 100%;
  font-size: 1.3rem;
  line-height: 1.5;
  margin-bottom: 0;
}
body.page-template-page-news article div#main div.cont ol li ul li div {
  display: table-cell;
}
body.page-template-page-news article div#main div.cont ol li ul li div.date {
  width: 120px;
}
body.page-template-page-news article div#main div.cont ol li ul li a {
  display: block;
  padding: 12px 0 10px;
  color: #2a6cd6;
}
body.support article div#main {
  padding-bottom: 100px;
}
body.support article div#main h1#pageTitle {
  margin-bottom: 70px;
}
body.support article div#main .wrapper {
  display: table;
  width: 100%;
}
body.support article div#main nav#list {
  display: table-cell;
  width: 16%;
  min-width: 110px;
}
body.support article div#main nav#list ul li {
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1.5;
  margin-bottom: 28px;
}
body.support article div#main div.cont {
  display: table-cell;
}
body.support article div#main div.cont div.fix {
  margin-bottom: 44px;
}
body.support article div#main div.cont div.flex .item {
  padding-top: 44px;
}
body.support article div#main div.cont div.flex .item:first-child {
  padding-top: 0;
}
body.support article div#main div.cont h2,
body.support article div#main div.cont h3 {
  font-weight: bold;
  font-size: 1.4rem;
  margin-bottom: 15px;
}
body.support article div#main div.cont ul {
  border-top: 1px solid #757575;
}
body.support article div#main div.cont ul li {
  border-bottom: 1px solid #757575;
  display: table;
  width: 100%;
  font-size: 1.3rem;
  line-height: 1.5;
}
body.support article div#main div.cont ul li div {
  display: table-cell;
}
body.support article div#main div.cont ul li div.date {
  width: 120px;
}
body.support article div#main div.cont ul li a {
  display: block;
  padding: 12px 0 10px;
  color: #2a6cd6;
}
body.support article div#main div.cont ul li a span {
  font-size: 85%;
  color: #000;
}
body.support article div#main div.cont div.moreBlock ul {
  border-top: 0 none;
}
body.support article div#main div.cont a.moreBtn {
  margin-top: 30px;
}
body.support article section#support {
  background-color: #f5f5f5;
}
body.support article section#download {
  background-color: #efefef;
}
body.catalogue_download article .note p {
  font-size: 1.4rem;
  line-height: 1.6;
}
body.catalogue_download article .note p a {
  color: #2a6cd6;
  text-decoration: underline;
}
body.catalogue_download article .note p a:hover {
  text-decoration: none;
}
body.catalogue_download article .note p small {
  display: block;
  padding-top: 10px;
  font-size: 1.2rem;
  color: #757575;
}
body.single .aligncenter {
  display: block;
  margin: 0 auto;
}
body.single .alignright {
  float: right;
}
body.single .alignleft {
  float: left;
}
body.single img[class*="wp-image-"],
body.single img[class*="attachment-"] {
  height: auto;
  max-width: 100%;
}
body.single article {
  padding-top: 50px;
  background-color: #fafafa;
}
body.single article header#pageHeader {
  margin-bottom: 20px;
  line-height: 1.4;
}
body.single article header#pageHeader h1#pageTitle {
  margin-bottom: 8px;
}
body.single article header#pageHeader .subtitle {
  color: #757575;
  font-size: 1.3rem;
}
body.single article header#pageHeader .subtitle span {
  color: #000;
}
body.single article div.body {
  font-size: 1.5rem;
}
body.single article div.body figure#mainimage {
  margin-bottom: 50px;
}
body.single article div.body figure#mainimage figcaption {
  padding-top: 15px;
  text-align: right;
  font-size: 1.4rem;
}
body.single article div.body figure#mainimage figcaption a {
  display: inline-block;
  color: #2a6cd6;
}
.videoBtn {
  width: 107px;
  height: 69px;
  background: url(../../assets/img/plugin/videoBtn.png) no-repeat center center / 100% 100%;
  right: 7px;
  bottom: 7px;
  position: absolute;
  transform: scale(0.6);
  -webkit-transform: scale(0.6);
  z-index: 999;
}
.videoItem a:hover .videoBtn {
  transform: scale(0.7);
  -webkit-transform: scale(0.7);
  transition: 0.3s all;
}
.video_name {
  font-size: 1.4rem;
  line-height: 2rem;
}
.column.videoItem .col a figure {
  margin-bottom: 15px;
  position: relative;
  width: 100%;
  padding-top: 66.6666666667%;
  height: 0;
  position: relative;
}
.column.article .col a figure {
  margin-bottom: 15px;
  position: relative;
  width: 100%;
  padding-top: 66.6666666667%;
  height: 0;
  position: relative;
}
body.single article div.body figure#mainimage figcaption a:after {
  display: inline-block;
  content: '\e700';
}
body.single article div.body .text p {
  line-height: 1.7;
  margin-bottom: 20px;
}
body.single-column article {
  padding-top: 50px;
}
body.single-column article div#main .inner:after {
  content: "";
}
body.single-column article div#main .inner nav.right {
  font-size: 1.3rem;
}
body.single-column article div#main .inner nav.right a {
  color: #2a6cd6;
}
body.single-column article div#main .inner .title {
  float: left;
  width: 70%;
  padding-right: 30px;
}
body.single-column article div#main .inner aside {
  float: right;
  width: 30%;
  position: relative;
}
body.single-column article div#main .inner aside .text {
  padding-right: 85px;
}
body.single-column article div#main .inner aside .text .lead {
  color: #757575;
  font-size: 1.2rem;
  margin-bottom: 3px;
}
body.single-column article div#main .inner aside .text .name {
  font-weight: bold;
  font-size: 1.7rem;
  line-height: 1.2;
  margin-bottom: 5px;
}
body.single-column article div#main .inner aside .text .name span.ruby {
  display: inline-block;
  font-size: 85%;
  color: #757575;
}
body.single-column article div#main .inner aside .text a {
  display: inline-block;
  font-size: 1.3rem;
  color: #2a6cd6;
}
body.single-column article div#main .inner aside figure {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}
body.single-column article div#main .inner aside figure img {
  width: 70px;
  display: block;
}
body.single-column article div.body .block {
  margin-bottom: 30px;
}
body.single-column article div.body .text:after {
  content: "";
}
body.single-column article div.body .text .alignleft img,
body.single-column article div.body .text .alignright img {
  display: inline-block;
  width: 100%;
}
body.single-column article div.body .text .module.module0 {
  width: 0%;
  display: none;
}
body.single-column article div.body .text .module.module10 {
  width: 10%;
}
body.single-column article div.body .text .module.module20 {
  width: 20%;
}
body.single-column article div.body .text .module.module30 {
  width: 30%;
}
body.single-column article div.body .text .module.module40 {
  width: 40%;
}
body.single-column article div.body .text .module.module50 {
  width: 50%;
}
body.single-column article div.body .text .module.module60 {
  width: 60%;
}
body.single-column article div.body .text .module.module70 {
  width: 70%;
}
body.single-column article div.body .text .module.module80 {
  width: 80%;
}
body.single-column article div.body .text .module.module90 {
  width: 90%;
}
body.single-column article div.body .text .module.module100 {
  width: 100%;
}
body.single-column article div.body .text .alignleft {
  margin: 0 20px 20px 0;
  max-width: 100%;
}
body.single-column article div.body .text .alignleft img {
  display: inline-block;
  width: 100%;
}
body.single-column article div.body .text .alignright {
  margin: 0 0 20px 20px;
  text-align: right;
}
body.single-column article div.body .text img.alignleft {
  margin: 0 20px 20px 0;
}
body.single-column article div.body .text img.alignright {
  margin: 0 0 20px 20px;
}
body.single-column article div.body .text .wp-caption-text {
  word-break: break-all;
  word-wrap: break-word;
  font-size: 1.1rem;
  line-height: 1.4;
  padding-top: 5px;
  margin: 0;
  text-align: left;
}
body.single-column article div.body .text hr {
  clear: both;
  margin: 30px 0;
  border: 0 none;
  display: block;
}
body.single-column article div.body .text hr:after {
  content: "";
}
body.single-gallery article .inner .text {
  padding-bottom: 50px;
}
body.single-gallery article .inner .text:after {
  content: "";
}
body.single-gallery article .inner .text .main {
  float: left;
  width: 66.666%;
  padding-right: 15px;
}
body.single-gallery article .inner .text aside {
  float: right;
  width: 33.333%;
}
body.single-gallery article .inner .text aside .wrapper {
  background-color: white;
  padding: 25px 40px;
}
body.single-gallery article .inner .text aside .wrapper .lead {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 25px;
}
body.single-gallery article .inner .text aside .wrapper div.face {
  display: table;
  width: 100%;
  margin-bottom: 25px;
}
body.single-gallery article .inner .text aside .wrapper div.face figure {
  display: table-cell;
  width: 110px;
  height: auto;
  width: 110px;
  height: 110px;
  overflow: hidden;
}
body.single-gallery article .inner .text aside .wrapper div.face figure img {
  display: block;
  width: 100%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
body.single-gallery article .inner .text aside .wrapper div.face .tx {
  display: table-cell;
  padding-left: 20px;
  vertical-align: middle;
}
body.single-gallery article .inner .text aside .wrapper div.face .tx .name {
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.3;
  margin-bottom: 3px;
}
body.single-gallery article .inner .text aside .wrapper div.face .tx .ruby {
  font-size: 1.2rem;
}
body.single-gallery article .inner .text aside .wrapper .profile {
  font-size: 1.3rem;
}
body.single-gallery article .inner .text aside .wrapper .profile p {
  line-height: 1.7;
}
body.single-gallery article .inner .text aside .wrapper .profile ul.links li {
  line-height: 1.5;
  margin-bottom: 10px;
  word-break: break-all;
}
body.single-gallery article .inner .text aside .wrapper .link {
  margin-top: 30px;
  text-align: right;
  font-size: 1.3rem;
}
body.single-gallery article section#gallery {
  background-color: white;
}
body.single-gallery article section#gallery .column {
  margin-left: -8px;
  margin-right: -8px;
}
body.single-gallery article section#gallery .column .col {
  width: 16.66667%;
  padding-left: 8px;
  padding-right: 8px;
}
body.single-gallery article section#gallery .column .col figure img {
  display: block;
  width: 100%;
  height: auto;
}
body.single-gallery article section#gallery .column .col figure figcaption {
  position: relative;
  background-color: #fafafa;
  color: #757575;
  font-size: 1.2rem;
  padding: 13px;
}
body.single-gallery article section#gallery .column .col figure figcaption:after {
  position: absolute;
  right: 13px;
  top: 13px;
  z-index: 1;
  display: block;
  width: 12px;
  height: 12px;
  background: transparent url("../img/common/icon_expand.png") 0 0 no-repeat;
  -moz-background-size: 12px 12px;
  -o-background-size: 12px 12px;
  -webkit-background-size: 12px 12px;
  background-size: 12px 12px;
  content: '';
}
body.single-gallery .box {
  /* = Responsive (-480)
  -------------------------------------------------------------*/
}
body.single-gallery .box .photoBlock figure img {
  display: block;
  width: 100%;
}
body.single-gallery .box .photoBlock figure figcaption {
  display: none;
}
body.single-gallery .box .infoBlock {
  padding: 30px 16px;
  font-size: 1.4rem;
  line-height: 1.3;
}
body.single-gallery .box .infoBlock ul li {
  padding-bottom: 20px;
  margin-bottom: 24px;
  border-bottom: 1px solid #757575;
}
body.single-gallery .box .infoBlock ul li.description {
  line-height: 1.6;
}
body.single-gallery .box .infoBlock .lensLink {
  text-align: right;
}
body.single-gallery .box.horizontal {
  max-width: 500px;
}
body.single-gallery .box.horizontal .photoBlock figure {
  margin-bottom: 0px;
}
body.single-gallery .box.vertical {
  display: table;
  width: 100%;
}
body.single-gallery .box.vertical:after {
  content: "";
}
body.single-gallery .box.vertical .photoBlock {
  display: table-cell;
  vertical-align: top;
  width: 334px;
}
body.single-gallery .box.vertical .photoBlock figure figcaption {
  display: none;
  padding: 5px;
  font-size: 1.2rem;
  text-align: center;
  background-color: #eee;
}
body.single-gallery .box.vertical .infoBlock {
  display: table-cell;
  vertical-align: top;
}
@media screen and (max-width: 480px) {
  body.repair article div#main {
    padding-bottom: 60px;
  }
  body.repair article div#main .wrapper {
    display: block;
  }
  body.repair article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.repair article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.repair article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.repair article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.repair article div#main div.cont {
    display: block;
    width: 100%;
  }
  body.repair article div#main div.cont ol li ul li {
    display: table;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  body.repair-home article div#main {
    padding-bottom: 60px;
  }
  body.repair-home article div#main .wrapper {
    display: block;
  }
  body.repair-home article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.repair-home article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.repair-home article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.repair-home article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.repair-home article div#main div.cont {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  body.repair-price article div#main {
    padding-bottom: 60px;
  }
  body.repair-price article div#main .wrapper {
    display: block;
  }
  body.repair-price article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.repair-price article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.repair-price article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.repair-price article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.repair-price article div#main div.cont {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  body.repair-before article div#main {
    padding-bottom: 60px;
  }
  body.repair-before article div#main .wrapper {
    display: block;
  }
  body.repair-before article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.repair-before article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.repair-before article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.repair-before article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.repair-before article div#main div.cont {
    display: block;
    width: 100%;
  }
  body.page-template-page-news article div#main {
    padding-bottom: 60px;
  }
  body.page-template-page-news article div#main .wrapper {
    display: block;
  }
  body.page-template-page-news article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.page-template-page-news article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.page-template-page-news article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.page-template-page-news article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.page-template-page-news article div#main div.cont {
    display: block;
    width: 100%;
  }
  body.page-template-page-news article div#main div.cont ol li ul li {
    display: table;
    width: 100%;
  }
  body.page-template-page-news article div#main div.cont ol li ul li a {
    display: block;
    font-size: 1.3rem;
  }
  body.support article div#main {
    padding-bottom: 60px;
  }
  body.support article div#main .wrapper {
    display: block;
  }
  body.support article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.support article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.support article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 0px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.support article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.support article div#main div.cont {
    display: block;
    width: 100%;
  }
  body.support article div#main div.cont h2,
  body.support article div#main div.cont h3 {
    font-size: 1.4rem;
  }
  body.support article div#main div.cont ul li {
    border-bottom: 1px solid #757575;
    display: table;
    width: 100%;
    font-size: 1.3rem;
  }
  body.support article div#main div.cont ul li div {
    display: table-cell;
  }
  body.support article div#main div.cont ul li div.date {
    width: 120px;
  }
  body.support article div#main div.cont ul li a {
    display: block;
    padding: 12px 0;
    color: #2a6cd6;
  }
  body.support article div#main div.cont ul li a span {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  body.single-column article div#main .inner .title {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  body.single-column article div#main .inner aside {
    float: none;
    width: 270px;
    margin-top: 30px;
  }
  body.single-column article div#main .inner aside .text {
    padding-right: 0;
    padding-left: 85px;
  }
  body.single-column article div#main .inner aside .text .name {
    font-size: 1.6rem;
  }
  body.single-column article div#main .inner aside figure {
    right: auto;
    left: 0;
  }
  body.single-column article div.body .text .alignleft,
  body.single-column article div.body .text .alignright {
    text-align: left;
    float: none !important;
  }
  body.single-column article div.body .text .alignleft img,
  body.single-column article div.body .text .alignright img {
    display: inline-block;
  }
  body.single-column article div.body .text .alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text .alignright {
    margin: 0 0 20px 0px;
  }
  body.single-column article div.body .text img.alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text img.alignright {
    margin: 0 0 20px 0px;
  }
}
@media screen and (max-width: 480px) {
  body.single-column article div#main .inner nav.right {
    margin-top: 20px;
    float: none;
    font-size: 1.2rem;
  }
  body.single-column article div#main .inner nav.right a {
    color: #2a6cd6;
  }
  body.single-column article div#main .inner aside {
    width: 100%;
  }
  body.single-column article div.body .text .module {
    width: 100% !important;
  }
  body.single-column article div.body .text p {
    margin-bottom: 30px;
  }
  body.single-column article div.body .text p img {
    width: 100%;
    float: none !important;
    margin: 0 0 25px 0 !important;
  }
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 192dpi) {
  body.single-gallery article section#gallery .column .col figure figcaption:after {
    background-image: url("../img/common/icon_expand@2x.png");
    -webkit-background-size: 12px 12px;
    -moz-background-size: 12px 12px;
    -o-background-size: 12px 12px;
    background-size: 12px 12px;
  }
}
@media screen and (max-width: 1000px) {
  body.single-gallery article section#gallery .column .col {
    width: 20%;
  }
}
@media screen and (max-width: 768px) {
  body.single-gallery article .inner .text .main {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  body.single-gallery article .inner .text aside {
    margin-top: 45px;
    float: none;
    width: 100%;
  }
  body.single-gallery article .inner .text aside .wrapper {
    padding: 25px 25px;
  }
  body.single-gallery article .inner .text aside .wrapper .lead {
    font-size: 1.5rem;
  }
  body.single-gallery article .inner .text aside .wrapper div.face .tx .name {
    font-size: 1.4rem;
  }
  body.single-gallery article section#gallery .column .col {
    float: left !important;
    width: 25% !important;
  }
}
@media screen and (max-width: 480px) {
  body.single-gallery article section#gallery .column .col {
    float: left !important;
    width: 50% !important;
  }
}
@media screen and (max-width: 480px) {
  body.single-gallery .box .infoBlock {
    font-size: 1.3rem;
    padding-bottom: 30px;
  }
  body.single-gallery .box .infoBlock ul li {
    padding-bottom: 16px;
    margin-bottom: 18px;
  }
  body.single-gallery .box .infoBlock .lensLink {
    text-align: center;
  }
  body.single-gallery .box.vertical {
    display: block;
  }
  body.single-gallery .box.vertical .photoBlock {
    display: block;
    width: 100%;
  }
  body.single-gallery .box.vertical .photoBlock figure {
    margin-bottom: 20px;
  }
  body.single-gallery .box.vertical .infoBlock {
    padding-top: 10px;
    display: block;
  }
  @media screen and (max-width: 480px) {
    body.repair article div#main,
    body.repair-home article div#main,
    body.repair-price article div#main,
    body.repair-before article div#main,
    body.page-template-page-news article div#main,
    body.support article div#main {
      padding-bottom: 60px;
    }
    body.repair article div#main .wrapper,
    body.repair-home article div#main .wrapper,
    body.repair-price article div#main .wrapper,
    body.repair-before article div#main .wrapper,
    body.page-template-page-news article div#main .wrapper,
    body.support article div#main .wrapper {
      display: block;
    }
    body.repair article div#main nav#list,
    body.repair-home article div#main nav#list,
    body.repair-price article div#main nav#list,
    body.repair-before article div#main nav#list,
    body.page-template-page-news article div#main nav#list,
    body.support article div#main nav#list {
      display: block;
      width: 100%;
    }
    body.repair article div#main nav#list ul,
    body.repair-home article div#main nav#list ul,
    body.repair-price article div#main nav#list ul,
    body.repair-before article div#main nav#list ul,
    body.page-template-page-news article div#main nav#list ul,
    body.support article div#main nav#list ul {
      margin-bottom: 40px;
    }
    body.repair article div#main nav#list ul li,
    body.repair-home article div#main nav#list ul li,
    body.repair-price article div#main nav#list ul li,
    body.repair-before article div#main nav#list ul li,
    body.page-template-page-news article div#main nav#list ul li {
      display: inline-block;
      font-size: 1.4rem;
      margin-bottom: 10px;
      margin-right: 12px;
      padding-right: 13px;
      border-right: 1px solid #000;
    }
    body.support article div#main nav#list ul li {
      display: inline-block;
      font-size: 1.4rem;
      margin-bottom: 0;
      margin-right: 12px;
      padding-right: 13px;
      border-right: 1px solid #000;
    }
    body.repair article div#main nav#list ul li:last-child,
    body.repair-home article div#main nav#list ul li:last-child,
    body.repair-price article div#main nav#list ul li:last-child,
    body.repair-before article div#main nav#list ul li:last-child,
    body.page-template-page-news article div#main nav#list ul li:last-child,
    body.support article div#main nav#list ul li:last-child {
      margin-right: 0;
      padding-right: 0;
      border-right: 0 none;
    }
    body.repair article div#main div.cont,
    body.repair-home article div#main div.cont,
    body.repair-price article div#main div.cont,
    body.repair-before article div#main div.cont,
    body.page-template-page-news article div#main div.cont,
    body.support article div#main div.cont {
      display: block;
      width: 100%;
    }
    body.single-column article div#main .inner nav.right {
      margin-top: 20px;
      float: none;
      font-size: 1.2rem;
    }
    body.single-column article div#main .inner aside {
      width: 100%;
    }
    body.single-column article div.body .text .module {
      width: 100% !important;
    }
    body.single-column article div.body .text p {
      margin-bottom: 30px;
    }
    body.single-column article div.body .text p img {
      width: 100%;
      float: none !important;
      margin: 0 0 25px 0 !important;
    }
    body.single-gallery article section#gallery .column .col {
      width: 50% !important;
    }
    body.single-gallery .box .infoBlock {
      font-size: 1.3rem;
      padding-bottom: 30px;
    }
    body.single-gallery .box .infoBlock ul li {
      padding-bottom: 16px;
      margin-bottom: 18px;
    }
    body.single-gallery .box .infoBlock .lensLink {
      text-align: center;
    }
    body.single-gallery .box.vertical {
      display: block;
    }
    body.single-gallery .box.vertical .photoBlock {
      display: block;
      width: 100%;
    }
    body.single-gallery .box.vertical .photoBlock figure {
      margin-bottom: 20px;
    }
    body.single-gallery .box.vertical .infoBlock {
      padding-top: 10px;
      display: block;
    }
    header#siteHeader {
      display: block;
      height: auto;
      border-top: 0 none;
    }
    header#siteHeader #naviBtn {
      display: block;
      position: fixed;
      right: 12px;
      top: 22px;
      z-index: 999999;
    }
    header#siteHeader nav#utilNavi,
    header#siteHeader nav#siteNavi {
      display: none !important;
    }
    header#siteHeader nav#siteNaviSP {
      position: fixed;
      z-index: 10002;
      left: 0;
      top: 0;
      display: block;
      width: 100%;
      height: 100%;
      padding: 0;
      background-color: white;
    }
  }
}
@media screen and (max-width: 768px) {
  body.single-column article div#main .inner .title {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  body.single-column article div#main .inner aside {
    float: none;
    width: 270px;
    margin-top: 30px;
  }
  body.single-column article div#main .inner aside .text {
    padding-right: 0;
    padding-left: 85px;
  }
  body.single-column article div#main .inner aside .text .name {
    font-size: 1.6rem;
  }
  body.single-column article div#main .inner aside figure {
    right: auto;
    left: 0;
  }
  body.single-column article div.body .text .alignleft,
  body.single-column article div.body .text .alignright {
    text-align: left;
    float: none !important;
  }
  body.single-column article div.body .text .alignleft img,
  body.single-column article div.body .text .alignright img {
    display: inline-block;
  }
  body.single-column article div.body .text .alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text .alignright {
    margin: 0 0 20px 0px;
  }
  body.single-column article div.body .text img.alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text img.alignright {
    margin: 0 0 20px 0px;
  }
}
@media screen and (max-width: 480px) {
  body.single-column article div#main .inner nav.right {
    margin-top: 20px;
    float: none;
    font-size: 1.2rem;
  }
  body.single-column article div#main .inner nav.right a {
    color: #2a6cd6;
  }
  body.single-column article div#main .inner aside {
    width: 100%;
  }
  body.single-column article div.body .text .module {
    width: 100% !important;
  }
  body.single-column article div.body .text p {
    margin-bottom: 30px;
  }
  body.single-column article div.body .text p img {
    width: 100%;
    float: none !important;
    margin: 0 0 25px 0 !important;
  }
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 192dpi) {
  body.single-gallery article section#gallery .column .col figure figcaption:after {
    background-image: url("../img/common/icon_expand@2x.png");
    -webkit-background-size: 12px 12px;
    -moz-background-size: 12px 12px;
    -o-background-size: 12px 12px;
    background-size: 12px 12px;
  }
}
@media screen and (max-width: 1000px) {
  body.single-gallery article section#gallery .column .col {
    width: 20%;
  }
}
@media screen and (max-width: 768px) {
  body.single-gallery article .inner .text .main {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  body.single-gallery article .inner .text aside {
    margin-top: 45px;
    float: none;
    width: 100%;
  }
  body.single-gallery article .inner .text aside .wrapper {
    padding: 25px 25px;
  }
  body.single-gallery article .inner .text aside .wrapper .lead {
    font-size: 1.5rem;
  }
  body.single-gallery article .inner .text aside .wrapper div.face .tx .name {
    font-size: 1.4rem;
  }
  body.single-gallery article section#gallery .column .col {
    float: left !important;
    width: 25% !important;
  }
}
@media screen and (max-width: 480px) {
  body.single-gallery article section#gallery .column .col {
    float: left !important;
    width: 50% !important;
  }
}
@media screen and (max-width: 480px) {
  body.single-gallery .box .infoBlock {
    font-size: 1.3rem;
    padding-bottom: 30px;
  }
  body.single-gallery .box .infoBlock ul li {
    padding-bottom: 16px;
    margin-bottom: 18px;
  }
  body.single-gallery .box .infoBlock .lensLink {
    text-align: center;
  }
  body.single-gallery .box.vertical {
    display: block;
  }
  body.single-gallery .box.vertical .photoBlock {
    display: block;
    width: 100%;
  }
  body.single-gallery .box.vertical .photoBlock figure {
    margin-bottom: 20px;
  }
  body.single-gallery .box.vertical .infoBlock {
    padding-top: 10px;
    display: block;
  }
  @media screen and (max-width: 768px) {
    .mod-spacer-large {
      margin-top: 17.0666666667vw;
    }
    .pure-u-md-1,
    .pure-u-md-1-1,
    .pure-u-md-24-24,
    .pure-u-md-5-5 {
      width: 100%;
    }
    body.single-column article div#main .inner .title {
      float: none;
      width: 100%;
      padding-right: 0;
    }
    body.single-column article div#main .inner aside {
      float: none;
      width: 270px;
      margin-top: 30px;
    }
    body.single-column article div#main .inner aside .text {
      padding-right: 0;
      padding-left: 85px;
    }
    body.single-gallery article .inner .text .main {
      float: none;
      width: 100%;
      padding-right: 0;
    }
    body.single-gallery article .inner .text aside {
      margin-top: 45px;
      float: none;
      width: 100%;
    }
    body.single-gallery article .inner .text aside .wrapper {
      padding: 25px 25px;
    }
    .container .content .Billboard .subttl .model_info_wrap .model_info_2 {
      font-size: .65rem;
    }
    .container .content .Technicalinformation .block .right {
      float: none;
      width: 100%;
    }
    .container .content .QuickLinks ul li {
      float: none;
      width: 100%;
      margin-right: 0;
      margin-bottom: 5%;
    }
    body.lenses article section #subGallery.slick .slider-for figure figcaption {
      font-size: 1.6rem;
    }
    body.lenses article section #subGallery.slick .slider-for figure figcaption span.num {
      font-size: 2rem;
    }
  }
}
header#siteHeaderSP h1 {
  margin-left: auto;
  margin-right: auto;
  width: 105px;
  height: 25px;
}
header#siteHeaderSP h1 a {
  display: block;
  display: block;
  text-align: left;
  text-indent: -9999px;
  width: 105px;
  height: 25px;
  background: transparent url("../img/common/logo_main_sp.png") center center no-repeat;
  -moz-background-size: 105px 25px;
  -o-background-size: 105px 25px;
  -webkit-background-size: 105px 25px;
  background-size: 105px 25px;
}
header#siteHeaderSP h1 a {
  background-image: url("../img/common/logo_main_sp@2x.png");
  background-size: 105px 25px;
}
@media screen and (min-width: 769px) {
  header#siteHeaderSP {
    display: none;
  }
}
header#siteHeader {
  width: 100%;
  height: 95px;
  border-top: 25px solid #f5f5f5;
  background: #fafafa;
}
header#siteHeader .inner {
  position: relative;
}
header#siteHeader .inner div.main-nav {
  position: relative;
  height: 70px;
  padding-top: 24px;
}
header#siteHeader .inner div.main-nav h1#mainLogo {
  position: relative;
  width: 130px;
  height: 35px;
  margin: 0;
}
header#siteHeader .inner div.main-nav h1#mainLogo a {
  display: block;
  display: block;
  text-align: left;
  text-indent: -9999px;
  width: 130px;
  height: 35px;
  background: transparent url("/assets/img/common/logo_main.png") center center no-repeat;
  -moz-background-size: 130px 35px;
  -o-background-size: 130px 35px;
  -webkit-background-size: 130px 35px;
  background-size: 130px 35px;
}
header#siteHeader .inner div.main-nav h1#mainLogo a {
  background-image: url("/assets/img/common/logo_main@2x.png");
  background-size: 130px 35px;
}
header#siteHeader .inner div.main-nav h1#mainLogo a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
  opacity: 0.6;
  -webkit-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -moz-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -ms-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  -o-transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
  transition: 0.5s cubic-bezier(0.17, 0.67, 0.57, 0.95);
}
header#siteHeader nav#utilNavi {
  position: absolute;
  right: 20px;
  top: -25px;
  z-index: 1;
  width: 100%;
  height: 25px;
}
header#siteHeader nav#utilNavi ul {
  text-align: right;
}
header#siteHeader nav#utilNavi ul li {
  display: inline-block;
  margin-left: 12px;
  font-size: 1.1em;
  height: 25px;
  line-height: 25px;
}
header#siteHeader nav#utilNavi ul li a {
  color: #424242;
}
header#siteHeader nav#utilNavi ul li.lang {
  border-bottom: 1px solid;
}
header#siteHeader nav#utilNavi ul li.lang a {
  display: block;
  padding: 0 4px;
}
#accessories {
  background: #f5f5f5;
  padding: 50px 0;
  margin-top:0;
}
#accessories h2,
#additionalFeatures h2 {
  font-size: 2.2rem;
  display: block;
  text-align: center;
  margin-bottom: 30px;
}
.product header#siteHeader nav#siteNavi li.product a,
.special header#siteHeader nav#siteNavi li.special a,
.support header#siteHeader nav#siteNavi li.support a {
  color: #2a6cd6;
}
header#siteHeader #naviBtn {
  display: none;
}
header#siteHeader nav#siteNaviSP {
  display: none;
}
header#siteHeader nav#siteNavi {
  position: absolute;
  right: 0;
  top: 23px;
  z-index: 3;
  height: 24px;
  display: block !important;
  width: auto;
}
header#siteHeader nav#siteNavi ul {
  text-align: right;
}
header#siteHeader nav#siteNavi ul li {
  font-size: 1.6rem;
  height: 24px;
  line-height: 24px;
  display: inline-block;
  margin-right: 20px;
}
header#siteHeader nav#siteNavi ul li:last-child {
  margin-right: 0;
}
header#siteHeader nav#siteNavi ul li a {
  position: relative;
  display: inline-block;
}
header#siteHeader nav#siteNavi ul li a:hover {
  color: #2a6cd6
}
.sns_ {
  position: absolute;
  right: 0;
  bottom: 16px;
  z-index: 9999;
}
.weibo a,
.bili a {
  width: 40px;
  height: 30px;
  display: block;
  background-image: url(/images/sns.png);
  background-repeat: no-repeat;
}
.xhs_black a {
  width: 40px;
  height: 30px;
  display: block;
  background-image: url(/images/xhs_black.png);
  background-repeat: no-repeat;
}
.wechatsns span {
  width: 40px;
  height: 30px;
}
.xhs_black {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.wechat {
  background-position: -136px 0;
  width: 40px;
  height: 30px;
  display: block;
  float: left;
  background-image: url(/images/sns.png);
  background-repeat: no-repeat;
}
.weibo a {
  background-position: -176px 0;
}
.bili a {
  background-position: -215px 0;
}
.weibo {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.bili {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.weibo a,
.bili a {
  display: block;
  width: 40px;
  height: 30px;
  position: relative;
}
.wechat img {
  display: none;
  width: 135px;
  height: 135px;
  right: 88px;
  bottom: 24px;
  position: absolute;
  z-index: 9999;
}
.wechatsns span {
  display: none;
  width: 135px;
  height: 135px;
  left: 0px;
  bottom: 20px;
  position: absolute;
  z-index: 999;
}
.wechatsns a {
  position: relative;
}
body article div#main div.links a.wechatsns:hover span {
  display: block;
}
.wechat a:hover {
  background-position: -136px -30px;
}
.weibo a:hover {
  background-position: -176px -30px;
}
.bili a:hover {
  background-position: -215px -30px;
}
.col5 a,
.col6 a {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
p sup {
  font-size: 0.75em;
  margin-right: 0.2em;
  vertical-align: super;
}
.mod-auto {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 20px 0 20px;
  box-sizing: border-box;
}
/* 删除以下針夝定义�?
.mod-auto { margin-right: auto; margin-left: auto; padding-right: 20px; padding-left: 20px; width: 100%; }
.mod-auto { margin-right: auto; margin-left: auto; padding: 0 20px 80px 20px; max-width: 1200px; width: 100%; }
*/
.pure-g {
  text-rendering: optimizespeed;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}
.space-u-32-child {
  padding-top: 32px;
  padding-left: 32px;
}
.pure-u-10-24,
.pure-u-5-12 {
  width: 41.6667%;
}
.space-u-32-child {
  padding-top: 32px;
  padding-left: 32px;
}
.pure-u-14-24,
.pure-u-7-12 {
  width: 58.3333%;
}
.mod-head04 {
  font-size: 2rem;
  color: #000;
  font-weight: 400;
  line-height: 1.4;
}
.mod-spacer-24_16_p {
  padding-top: 24px;
}
.height-auto {
  height: auto;
}
.width-u-100 {
  width: 100%;
}
.recentcomments a {
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
}
.spimg {
  display: none !important;
}
.product_detail .image .number__01 {
  background: url(assets/img/product/lens/b061/number/number_1_pc.png) no-repeat center center !important;
  background-size: contain !important;
  left: 375px;
  top: -35px;
}
.product_detail .image .number__01 span {
  width: 223px;
  height: 88px;
}
.product_detail .image .number__02 {
  left: 480px;
  bottom: 15px;
}
.product_detail .image .number__03 {
  right: 260px;
  bottom: 190px;
}
.product_detail .image .number__04 {
  right: 220px;
  top: 35px;
}
.sns_ {
  position: absolute;
  right: 0;
  bottom: 16px;
  z-index: 9999;
}
.weibo a,
.bili a {
  width: 40px;
  height: 30px;
  display: block;
  background-image: url(/images/sns.png);
  background-repeat: no-repeat;
}
.xhs_black a {
  width: 40px;
  height: 30px;
  display: block;
  background-image: url(/images/xhs_black.png);
  background-repeat: no-repeat;
}
.wechatsns span {
  width: 40px;
  height: 30px;
}
.xhs_black {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.wechat {
  background-position: -136px 0;
  width: 40px;
  height: 30px;
  display: block;
  float: left;
  background-image: url(/images/sns.png);
  background-repeat: no-repeat;
}
.weibo a {
  background-position: -176px 0;
}
.bili a {
  background-position: -215px 0;
}
.weibo {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.bili {
  width: 40px;
  height: 30px;
  display: block;
  float: left;
}
.weibo a,
.bili a {
  display: block;
  width: 40px;
  height: 30px;
  position: relative;
}
.wechat img {
  display: none;
  width: 135px;
  height: 135px;
  right: 88px;
  bottom: 24px;
  position: absolute;
  z-index: 9999;
}
.wechatsns span {
  display: none;
  width: 135px;
  height: 135px;
  left: 0px;
  bottom: 20px;
  position: absolute;
  z-index: 999;
}
.wechatsns a {
  position: relative;
}
body article div#main div.links a.wechatsns:hover span {
  display: block;
}
.wechat a:hover {
  background-position: -136px -30px;
}
.weibo a:hover {
  background-position: -176px -30px;
}
.bili a:hover {
  background-position: -215px -30px;
}
.col5 a,
.col6 a {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
p sup {
  font-size: 0.75em;
  margin-right: 0.2em;
  vertical-align: super;
}
.mod-auto {
  margin-right: auto;
  margin-left: auto;
  padding: 0 20px 80px 20px;
  max-width: 1200px;
  width: 100%;
}
.pure-g {
  text-rendering: optimizespeed;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
}
.space-u-32-child {
  padding-top: 32px;
  padding-left: 32px;
}
.pure-u-10-24,
.pure-u-5-12 {
  width: 41.6667%;
}
.space-u-32-child {
  padding-top: 32px;
  padding-left: 32px;
}
.pure-u-14-24,
.pure-u-7-12 {
  width: 58.3333%;
}
.mod-head04 {
  font-size: 1.7rem;
  color: #000;
  font-weight: 500;
  line-height: 1.4;
  font-family: "Noto Sans JP", sans-serif;
}
.consumer-detail-main {
  font-size: 50px;
  font-weight: 500;
  line-height: 1;
}
.mod-spacer-16_8 {
  margin-top: 16px;
  letter-spacing: 0.1em;
}
.mod-head05 {
  font-size: 2.4rem;
  font-weight: 800;
  line-height: 1.4;
}
.mod-spacer-24_16_p {
  padding-top: 24px;
}
.height-auto {
  height: auto;
}
.width-u-100 {
  width: 100%;
}
.recentcomments a {
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
}
.spimg {
  display: none !important;
}
.product_detail .image .number__01 {
  background: url(assets/img/product/lens/b061/number/number_1_pc.png) no-repeat center center !important;
  background-size: contain !important;
  left: 375px;
  top: -35px;
}
.product_detail .image .number__01 span {
  width: 223px;
  height: 88px;
}
.product_detail .image .number__02 {
  left: 480px;
  bottom: 15px;
}
.product_detail .image .number__03 {
  right: 260px;
  bottom: 190px;
}
.product_detail .image .number__04 {
  right: 220px;
  top: 35px;
}
.feature_header-custom {
  padding: 0 !important;
}
.flex-Box {
  display: flex;
  justify-content: space-between;
}
.flex-Box .flex-Box-left,
.flex-Box .flex-Box-right {
  width: 46%;
}
.flex-Box .flex-Box-left .FloatingSystem_body,
.flex-Box .flex-Box-right .FloatingSystem_body {
  padding: 0 !important;
}
li.slide .inner {
  position: relative;
}
a.sns {
  position: absolute;
  display: block;
  top: 82%;
  left: 19%;
  width: 17%;
  height: 17%;
  text-indent: -9999em;
}
a.emount {
  position: absolute;
  display: block;
  top: 82%;
  left: 19%;
  width: 17%;
  height: 17%;
  text-indent: -9999em;
}
.spr {
  font-size: 0.75em;
  margin-right: 0.2em;
  vertical-align: super;
}
body.lenses article section nav#maker.maker_custom ul li .tabInner {
  padding-top: 17px !important;
  align-items: center;
}
body.lenses article section#photoGallery .inner .mountType ul li .tabInner {
  padding: 15px 0 !important;
  align-items: center;
}
body.lenses article section.section_list h2 {
  margin-bottom: 24px;
  font-size: 1.6rem;
}
.section_list ul li {
  font-size: 1.6rem;
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}
/*POPUP*/
body.lenses .box figure.image.image__vertical {
  text-align: center;
}
body.lenses .box figure.image.image__vertical img {
  max-width: 314px;
  margin: 0 auto 5px;
}
body.lenses .box figure.image.image__vertical figcaption {
  text-align: center;
}
/*外観デザインボタ�?/
body.lenses article section#exteriorDesign div.navi {
  width: 100%;
  max-width: 870px;
  margin: 0 auto;
}
body.lenses article section nav#maker.maker_custom ul {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
body.lenses article section nav#maker.maker_custom ul li {
  background: #efefef;
  color: #000;
  width: calc((100% - 2px) / 2);
  height: 106px;
  position: relative;
  cursor: pointer;
  transition: opacity .3s ease;
}
body.lenses article section nav#maker.maker_custom ul li p {
  color: #000;
}
body.lenses article section nav#maker.maker_custom ul li:hover {
  opacity: .6;
}
body.lenses article section nav#maker.maker_custom ul li .tabInner {
  width: 100%;
  height: 100%;
  padding: 22px 0 15px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
}
body.lenses article section nav#maker.maker_custom ul li .tabInner>div {
  margin-bottom: 5px;
}
body.lenses article section nav#maker.maker_custom ul li a {
  height: 100%;
}
body.lenses article section nav#maker.maker_custom ul li.new .tabInner::before {
  content: "NEW";
  border: #005cab 1px solid;
  width: 57px;
  height: 27px;
  margin: 3px 15px 0 0;
  color: #005bab;
  font-size: 14px;
  text-align: center;
  line-height: 27px;
  display: inline-block;
}
/* 坈并所�?max-width: 768px 的哝应弝样弝 */
body.lenses article section nav#maker.maker_custom ul li::after {
  content: "";
  border-left: #000 1px solid;
  border-bottom: #000 1px solid;
  width: 12px;
  height: 12px;
  transform: rotate(-135deg);
  position: absolute;
  right: 20px;
  top: calc((100% - 17px) / 2);
}
body.lenses article section nav#maker.maker_custom ul li.selected {
  background: #005cab !important;
  pointer-events: none;
}
body.lenses article section nav#maker.maker_custom ul li.selected p {
  color: #fff;
}
body.lenses article section nav#maker.maker_custom ul li.selected::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 14px 0 14px;
  border-color: #005bab transparent transparent transparent;
  position: absolute;
  bottom: -11px;
  left: calc((100% - 28px) / 2);
}
body.lenses article section nav#maker.maker_custom ul li.selected::after {
  border-left: #fff 1px solid;
  border-bottom: #fff 1px solid;
  transform: rotate(-45deg);
  right: 17px;
}
body.lenses article section nav#maker.maker_custom ul li.selected.new .tabInner::before {
  border: #fff 1px solid;
  color: #fff;
}
/* 修夝ul.list列表项坌宽坌高样�?
以下是修夝坎的`<ul class="list">`相关样弝，确保列表项宽度和高度一致：
```css
/* 修夝剝的样弝 */
#additionalFeatures ul.list li {
  padding: 30px 0 0 0;
  height: 150px;
  line-height: 1.6;
}
/* �?#additionalFeatures 里的列表标题添加样弝 */
#additionalFeatures ul.list li span {
  position: relative;
  display: block;
  font-size: 1.6rem;
  line-height: 1.6;
  padding-right: 40px;
}
.menuTab {
  /* 保留外框杝边 */
  padding: 0;
  max-width: 1160px;
  /* 添加最大宽度陝�?*/
  margin: 0 auto;
  /* 水平居中显示 */
  position: relative;
  z-index: 100;
  /* transition: all 0.3s ease; */
}

/* 当 menuTab 固定定位时的样式 */
.menuTab.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  background-color: #fff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1000;
}
/* 保留原有PC端样�?*/
.menuTab ul {
  border: 1px solid #eaeaea;
  display: flex;
  justify-content: flex-start;
  /* PC端水平居�?*/
  list-style: none;
  padding: 0;
  margin: 0;
}
.menuTab li {
  width: 200px;
  /* PC端固定宽�?*/
  line-height: 42px;
  font-size: 1.8rem;
  text-align: center;
  position: relative;
  cursor: pointer;
}
.menuTab li::after {
  content: "";
  position: absolute;
  right: 0;
  top: 25px;
  width: 1px;
  height: 15px;
  background-color: #eaeaea;
}
/* 新增：隝藝最坎一个li的分隔线 */
.menuTab li:last-child::after {
  display: none;
}
/* 新增：选中状思样�?*/
.menuTab li.active {
  color: #005bab;
}
.menuTab a,
.menuTab span {
  display: block;
  width: 100%;
  padding: 10px 12px;
  text-decoration: none;
  color: inherit;
}
.menuTab a:hover,
.menuTab span:hover {
  color: #005bab;
}
/* 新增：内容区域样�?*/
.mContBody {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0 0 0;
}
.mContItem {
  height: 0;
  overflow: hidden;
  /* 默认隝藝所有内容项 */
}
.mContItem.active {
  height: auto;
  overflow: inherit;
  /* 显示当剝激活的内容�?*/
}
.mod-spacer-small {
  margin-top: 48px;
}
.mod-auto {
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
}
.opacity a,
.opacity button,
a.opacity,
button.opacity {
  transition: all .3s ease;
  opacity: 1;
}
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}
button,
select {
  text-transform: none;
}
[type=reset],
[type=submit],
button,
html [type=button] {
  -webkit-appearance: button;
}
button {
  overflow: visible;
}
button,
input,
optgroup,
select,
textarea {
  font: inherit;
}
.mod-head050 {
  height: 2.2rem;
  font-size:1.4rem;
  color: #757575;
  font-weight: normal;
  margin-top: 1.4rem;
}
.mod-head050 span {
  display: block;
  float: left;
  margin-right: 1.3rem;
  line-height: 1.8;
  padding:0 1.1rem;
  border: 1px solid #ccc;
}
.mod-head053 {
  height: 2.2rem;
  font-size:1.4rem;
  color: #757575;
  font-weight: normal;
  margin-top:2rem;
}
.mod-head053 span {
  display: block;
  float: left;
  margin-right: 1.3rem;
  line-height: 1.8;
  padding:0 1.1rem;
  border: 1px solid #ccc;
}
.mod-head051 {
  font-size: 2rem;
  line-height: 1.4;
  padding-top: 2.4rem;
}
.consumer-toggle02 ._plus_icon {
  display: none;
  height: 16px;
}
.consumer-toggle02Block._consumer-detail-spec {
  padding: 32px 0;
}
.mod-tbl02 {
  border-collapse: separate;
  border-spacing: 0;
  border-top: 1px solid #eaeaea;
  border-left: 1px solid #eaeaea;
  width: 100%;
}
.mod-tbl02 td,
.mod-tbl02 th {
  word-break: break-word;
}
.mod-tbl02 th {
  background-color: #f5f5f5;
}
.mod-button._border {
  background: 0 0;
  color: #000;
  border-color: #000;
  background-color: #fff;
}
.mod-button._140 {
  max-width: 140px;
}
.opacity a,
.opacity button,
a.opacity,
button.opacity {
  transition: all .3s ease;
  opacity: 1;
}
.consumer-toggle02 ._plus_icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 2px;
  background-color: #005bac;
}
.consumer-toggle02.is-active ._plus_icon:after {
  height: 0;
}
.consumer-toggle02 ._plus_icon:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 2px;
  height: 100%;
  background-color: #005bac;
  transition: height .4s;
}
.width-u-25 {
  width: 25%;
}
.mod-tbl02 td {
  background-color: #fff;
}
.mod-tbl02 td,
.mod-tbl02 th {
  padding: 10px 20px;
  border-bottom: 1px solid #eaeaea;
  border-right: 1px solid #eaeaea;
  vertical-align: middle;
  font-size: 1.6rem;
  font-weight: 400;
  word-break: break-all;
  text-align: left;
  line-height: 1.6;
}
.fs_14 {
  font-size: 1.4rem;
  line-height: 2;
}
.color_gray {
  color: #505050;
}
.consumer-toggle02 {
  position: relative;
  width: 100%;
  text-align: center;
}
.opacity a,
.opacity button,
a.opacity,
button.opacity {
  transition: all .3s ease;
  opacity: 1;
}
.mod-auto {
  width: 100%;
  max-width: 1200px;
  /* 与项目其他容器保挝一�?*/
  margin: 0 auto;
  /* 简写居中样�?*/
  padding: 38px 20px 0 20px;
  /* 基础内边�?*/
  box-sizing: border-box;
  /* 确保 padding 丝影哝总宽�?*/
}
.mod-spacer-16_8_p {
  padding-top: 16px;
}
.space-u-32 {
  margin-left: 0;
  padding-bottom: 30px;
}
.space-u-32-child {
  padding-top: 32px;
  padding-left: 32px;
}
.pure-u-1-2,
.pure-u-12-24 {
  width: 46%;
  padding: 0 2%;
}
.height-auto {
  height: auto;
}
.width-u-100 {
  width: 100%;
}
img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom;
  max-width: 100%;
}
.mod-button._border:hover {
  color: #fff;
  background-color: #005bac;
  border-color: #005bac;
  opacity: 1 !important;
}
.mod-button {
  position: relative;
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 12px 8px;
  text-align: center;
  line-height: 1.5;
  border: 1px solid #005bac;
  background-color: #005bac;
  color: #fff;
  border-radius: 10px;
  font-size: 1.6rem;
  font-weight: 500;
  cursor: pointer;
  transition: .3s;
}
.mr0 {
  margin-right: 0 !important;
}
.width-u-50 {
  width: 50%;
}
.mod-auto-center {
  margin-left: auto;
  margin-right: auto;
}
.bclo-idx-item-list {
  width: 100%;
  padding: 0 0 64px 0;
  background: #f5f5f5;
  border: none;
}
.bclo-idx-item-title {
  position: static;
  transform: translateY(0);
  height: auto;
  width: 100%;
  margin-right: 0;
  border-right: none;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  padding-bottom: 32px;
  margin-bottom: 64px;
  background: #fff;
}
.bclo-idx-item-lg {
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 64px;
  padding-left: 1.2em;
  text-indent: -1.2em;
}
.bclo-idx-item-lg:before {
  background-color: #505050;
  content: "";
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.bclo-idx-item a {
  font-weight: normal;
  text-decoration: underline;
}
@media screen and (max-width: 480px) {
  .fancybox-nav span {
    width: 24px;
    height: 40px;
    margin-top: -18px;
  }
  .fancybox-next span {
    right: -16px;
  }
  /* = 修睆相关页面（repair�?*/
  body.repair article div#main,
  body.repair-home article div#main,
  body.repair-price article div#main,
  body.repair-before article div#main,
  body.page-template-page-news article div#main,
  body.support article div#main {
    padding-bottom: 60px;
  }
  body.repair article div#main .wrapper,
  body.repair-home article div#main .wrapper,
  body.repair-price article div#main .wrapper,
  body.repair-before article div#main .wrapper,
  body.page-template-page-news article div#main .wrapper,
  body.support article div#main .wrapper {
    display: block;
  }
  body.repair article div#main nav#list,
  body.repair-home article div#main nav#list,
  body.repair-price article div#main nav#list,
  body.repair-before article div#main nav#list,
  body.page-template-page-news article div#main nav#list,
  body.support article div#main nav#list {
    display: block;
    width: 100%;
  }
  body.repair article div#main nav#list ul,
  body.repair-home article div#main nav#list ul,
  body.repair-price article div#main nav#list ul,
  body.repair-before article div#main nav#list ul,
  body.page-template-page-news article div#main nav#list ul,
  body.support article div#main nav#list ul {
    margin-bottom: 40px;
  }
  body.repair article div#main nav#list ul li,
  body.repair-home article div#main nav#list ul li,
  body.repair-price article div#main nav#list ul li,
  body.repair-before article div#main nav#list ul li,
  body.page-template-page-news article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.support article div#main nav#list ul li {
    display: inline-block;
    font-size: 1.4rem;
    margin-bottom: 0;
    margin-right: 12px;
    padding-right: 13px;
    border-right: 1px solid #000;
  }
  body.repair article div#main nav#list ul li:last-child,
  body.repair-home article div#main nav#list ul li:last-child,
  body.repair-price article div#main nav#list ul li:last-child,
  body.repair-before article div#main nav#list ul li:last-child,
  body.page-template-page-news article div#main nav#list ul li:last-child,
  body.support article div#main nav#list ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0 none;
  }
  body.repair article div#main div.cont,
  body.repair-home article div#main div.cont,
  body.repair-price article div#main div.cont,
  body.repair-before article div#main div.cont,
  body.page-template-page-news article div#main div.cont,
  body.support article div#main div.cont {
    display: block;
    width: 100%;
  }
  /* = 坕列布局（single-column�?*/
  body.single-column article div#main .inner nav.right {
    margin-top: 20px;
    float: none;
    font-size: 1.2rem;
  }
  body.single-column article div#main .inner aside {
    width: 100%;
  }
  body.single-column article div.body .text .module {
    width: 100% !important;
  }
  body.single-column article div.body .text p {
    margin-bottom: 30px;
  }
  body.single-column article div.body .text p img {
    width: 100%;
    float: none !important;
    margin: 0 0 25px 0 !important;
  }
  /* = 画廊页面（single-gallery�?*/
  body.single-gallery article section#gallery .column .col {
    width: 50% !important;
  }
  body.single-gallery .box .infoBlock {
    font-size: 1.3rem;
    padding-bottom: 30px;
  }
  body.single-gallery .box .infoBlock ul li {
    padding-bottom: 16px;
    margin-bottom: 18px;
  }
  body.single-gallery .box .infoBlock .lensLink {
    text-align: center;
  }
  body.single-gallery .box.vertical {
    display: block;
  }
  body.single-gallery .box.vertical .photoBlock {
    display: block;
    width: 100%;
  }
  body.single-gallery .box.vertical .photoBlock figure {
    margin-bottom: 20px;
  }
  body.single-gallery .box.vertical .infoBlock {
    padding-top: 10px;
    display: block;
  }
  /* = 头部导航（header#siteHeader�?*/
  header#siteHeader {
    display: block;
    height: auto;
    border-top: 0 none;
  }
  header#siteHeader #naviBtn {
    display: block;
    position: fixed;
    right: 12px;
    top: 22px;
    z-index: 999999;
  }
  header#siteHeader nav#utilNavi,
  header#siteHeader nav#siteNavi {
    display: none !important;
  }
  header#siteHeader nav#siteNaviSP {
    position: fixed;
    z-index: 10002;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    background-color: white;
  }
}
@media screen and (max-width: 768px) {
  .menuTab.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    padding:0 5.4rem 0 0;
    /* overflow-x: auto;
    overflow-y: hidden; */
  }
  .menuTab.fixed ul {
    border-left: none;
    border-right: none;
    border-top: none;
    border-bottom: none;

    display: block;
    white-space: nowrap;
  }
  .menuTab.fixed ul li {
    line-height: 4.4rem;
    width: auto;
    float: left;
    display: block;
    border-bottom: none;
    border-right: 1px solid #eaeaea;
  }
  .menuTab.fixed ul li:last-child {
    border-right: none;
  }
  .bclo-idx-item-title {
    font-size: 2.2rem;
    padding-bottom: 8.5333333333vw;
    margin-bottom: 8.5333333333vw;
    font-weight: bold;
  }
  .bclo-idx-item-lg {
    margin: 0 8.5333333333vw;
  }
  .bclo-idx-item-list {
    margin-bottom: 8vw;
    padding: 0 0 8.5333333333vw 0;
  }
  body section h1 {
    font-weight: normal;
    line-height: 1.2;
    font-size: 3rem;
    font-family: "Noto Sans JP", sans-serif;
  }
  body.lenses article section ul.list {
    display: block;
  }
  body.lenses article section ul.list li {
    float: none;
    flex: 0 0 100%;
    /* 强制坠满整行宽度 */
    width: 100%;
    margin-right: 0;
    /* 移除坳侧间距 */
  }
  body.lenses article section nav#maker {
    text-align: center;
  }
  body.lenses article section nav#color {
    text-align: center;
    position: static;
    text-align: center;
    margin-bottom: 40px;
  }
  body.lenses article section#exteriorDesign_large .slider-for .slick-dots {
    bottom: -15px;
  }
  body.lenses article section#exteriorDesign_large .maker nav {
    float: none;
    display: none;
  }
  body.lenses article section#exteriorDesign_large .maker .figure {
    float: none;
    width: 100%;
  }
  body.lenses article section#exteriorDesign_large.ex360 #container {
    width: 100%;
  }
  body.lenses article section#exteriorDesign_large.ex360 p.note {
    font-size: 1.3rem;
  }
  .flex-Box {
    display: block;
  }
  .flex-Box .flex-Box-left,
  .flex-Box .flex-Box-right {
    width: 100%;
  }
  body section {
    padding: 10px 0;
    margin: 0;
  }
  body section#lensblog {
    background-color: #fcfbf5;
  }
  body section#lensblog .column3 .col {
    width: 100%;
  }
  body section#lensblog .column3 .col.col1 {
    padding: 20px 24px;
    height: auto !important;
    margin-bottom: 0 !important;
  }
  body section#lensblog .column3 .col.col1 h2 {
    font-size: 1.8rem;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  body section#lensblog .column3 .col.col1 .date {
    font-size: 1.2rem;
  }
  body section#lensblog .column3 .col.col1 .description {
    font-size: 1.3rem;
    line-height: 1.7;
  }
  body section#lensblog .column3 .col.col-double {
    width: 100%;
    min-height: initial;
    min-height: auto;
    height: auto !important;
    float: none;
    margin-bottom: 0;
  }
  header#siteHeader nav#siteNavi ul li {
    font-size: 1.2rem;
  }
  header#siteHeader {
    display: block;
  }
  header#siteHeader nav#siteNaviSP {
    display: none;
  }
  header#siteHeader nav#siteNavi {
    position: absolute;
    right: 0;
    top: 23px;
    z-index: 3;
    height: 24px;
    display: block !important;
  }
  header#siteHeader nav#siteNavi ul li {
    height: 24px;
    line-height: 24px;
    display: inline-block;
  }
  header#siteHeader nav#siteNavi ul li:last-child {
    margin-right: 0;
  }
  header#siteHeader nav#siteNavi ul li a {
    position: relative;
    display: inline-block;
  }
  header#siteHeader {
    display: block;
    height: auto;
    border-top: 0 none;
  }
  header#siteHeader #naviBtn {
    display: block;
    position: fixed;
    right: 12px;
    top: 22px;
    z-index: 999999;
  }
  header#siteHeader #naviBtn .menu-trigger,
  header#siteHeader #naviBtn .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  header#siteHeader #naviBtn .menu-trigger {
    display: block;
    position: relative;
    width: 36px;
    height: 24px;
  }
  header#siteHeader #naviBtn .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  header#siteHeader #naviBtn .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  header#siteHeader #naviBtn .menu-trigger.active div {
    display: none;
  }
  header#siteHeader #naviBtn .menu-trigger.active span {
    background-color: #757575;
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(1) {
    transform: translateY(11px) rotate(-135deg);
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  header#siteHeader #naviBtn .menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-10px) rotate(-45deg);
  }
  header#siteHeader nav#utilNavi {
    display: none !important;
  }
  header#siteHeader nav#siteNavi {
    display: none !important;
  }
  header#siteHeader nav#siteNaviSP {
    position: fixed;
    z-index: 10002;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    background-color: white;
  }
  header#siteHeader nav#siteNaviSP ul {
    width: 100%;
    text-align: center;
    padding-top: 75px;
  }
  header#siteHeader nav#siteNaviSP ul li {
    padding-right: 20px;
    width: 100%;
    margin-bottom: 20px;
  }
  header#siteHeader nav#siteNaviSP ul li:last-child {
    margin-bottom: 0;
  }
  header#siteHeader nav#siteNaviSP ul li a {
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: .1em;
    display: block;
    vertical-align: middle;
    text-align: right;
    width: 100%;
    height: 100%;
    color: #000;
  }
  .mod-spacer-large {
    margin-top: 17.0666666667vw;
  }
  .pure-u-md-1,
  .pure-u-md-1-1,
  .pure-u-md-24-24,
  .pure-u-md-5-5 {
    width: 100%;
  }
  .mod-spacer-large {
    margin-top: 17.0666666667vw;
  }
  .pure-u-md-1,
  .pure-u-md-1-1,
  .pure-u-md-24-24,
  .pure-u-md-5-5 {
    width: 100%;
  }
  a.sns {
    position: absolute;
    display: block;
    top: 88%;
    left: 10%;
    width: 38%;
    height: 13%;
    text-indent: -9999em;
  }
  a.emount {
    position: absolute;
    display: block;
    top: 88%;
    left: 51%;
    width: 39%;
    height: 12%;
    text-indent: -9999em;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner {
    padding: 3vw 0 !important;
  }
  body.lenses article section#photoGallery .inner .mountType ul li .tabInner {
    padding: 3vw 0 !important;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner {
    padding-right: 4.666vw;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner::before {
    width: 10.4vw;
    height: 4.533vw;
    margin: 1.5vw 1.6vw 0 0;
    font-size: 2.4vw;
    line-height: 4.533vw;
  }
  body.lenses article section#photoGallery .inner .photographerList ul li {
    display: flex;
    align-items: flex-start;
    height: auto;
    padding-right: 10vw !important;
  }
  body.lenses article section#photoGallery .inner .photographerList ul li span:before {
    top: -.6vw;
  }
  body.lenses .box figure.image.image__vertical img {
    max-width: 70%;
  }
  body.lenses article section nav#maker.maker_custom ul li {
    flex-direction: column;
    width: 100%;
    height: 14vw;
    margin-top: 0.533vw;
  }
  body.lenses article section nav#maker.maker_custom ul li:first-child {
    margin: 0
  }
  .item_middle img {
    margin: 0 auto;
    width: 100%;
  }
  body.lenses article section nav#maker.maker_custom ul li:hover {
    opacity: 1;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner {
    padding: 4vw 0;
    display: flex;
    flex-flow: row wrap;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner .img.e-mount {
    width: 26.266vw;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner .img.x-mount {
    width: 31.826vw;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner .img img {
    width: 100%;
  }
  body.lenses article section nav#maker.maker_custom ul li .tabInner>div {
    margin-bottom: 0;
  }
  /* = 坕列布局调整（single-column�?*/
  body.single-column article div#main .inner .title {
    float: none;
    width: 100%;
    padding-right: 0;
  }
  body.single-column article div#main .inner aside {
    float: none;
    width: 270px;
    margin-top: 30px;
  }
  body.single-column article div#main .inner aside .text {
    padding-right: 0;
    padding-left: 85px;
  }
  body.single-column article div#main .inner aside .text .name {
    font-size: 1.6rem;
  }
  body.single-column article div#main .inner aside figure {
    right: auto;
    left: 0;
  }
  body.single-column article div.body .text .alignleft,
  body.single-column article div.body .text .alignright {
    text-align: left;
    float: none !important;
  }
  body.single-column article div.body .text .alignleft img,
  body.single-column article div.body .text .alignright img {
    display: inline-block;
  }
  body.single-column article div.body .text .alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text .alignright {
    margin: 0 0 20px 0px;
  }
  body.single-column article div.body .text img.alignleft {
    margin: 0 0px 20px 0;
  }
  body.single-column article div.body .text img.alignright {
    margin: 0 0 20px 0px;
  }
  /* = 产哝详情页图片与编坷（product_detail�?*/
  .spimg {
    display: block !important;
  }
  .pcimg {
    display: none !important;
  }
  .mod-txt {
    font-size: 1.8rem;
  }
  .product_detail .image .number__01 {
    background: url(assets/img/product/lens/b061/number/number_1_sp.png) no-repeat center center !important;
    background-size: contain !important;
    left: 33vw;
    top: -10vw;
  }
  .product_detail .image .number__01 span {
    width: 24.93vw;
    height: 11.6vw;
  }
  .product_detail .image .number__02 span,
  .product_detail .image .number__03 span,
  .product_detail .image .number__04 span {
    width: 9.6vw !important;
    height: 9.6vw !important;
  }
  .product_detail .image .number__02 {
    left: 42vw;
    bottom: -4vw;
  }
  .product_detail .image .number__03 {
    right: 11vw;
    bottom: 17vw;
  }
  .product_detail .image .number__04 {
    right: 7vw;
    top: -3vw;
  }
  body.lenses article section.FloatingSystem .block .feature_body.mb_sp10 {
    margin-bottom: 10px;
  }
  /* = 弹性布局调整（flex-Box�?*/
  .flex-Box {
    display: block;
  }
  .flex-Box .flex-Box-left,
  .flex-Box .flex-Box-right {
    width: 100%;
  }
  /* = 镜头产哝页样弝（lenses�?*/
  body.lenses article section nav#maker.maker_custom ul li .tabInner {
    padding: 3vw 0 !important;
  }
  body.lenses article section#photoGallery .inner .mountType ul li .tabInner {
    padding: 3vw 0 !important;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner {
    padding-right: 4.666vw;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner::before {
    width: 10.4vw;
    height: 4.533vw;
    margin: 1.5vw 1.6vw 0 0;
    font-size: 2.4vw;
    line-height: 4.533vw;
  }
  body.lenses article section#photoGallery .inner .photographerList ul li {
    display: flex;
    align-items: flex-start;
    height: auto;
    padding-right: 10vw !important;
  }
  body.lenses article section#photoGallery .inner .photographerList ul li span:before {
    top: -.6vw;
  }
  body.lenses .box figure.image.image__vertical img {
    max-width: 70%;
  }
  /* = 通用间距与容器（mod-spacer / pure-u�?*/
  .mod-spacer-large {
    margin-top: 17.0666666667vw;
  }
  .width-md-100 {
    width: 100%;
  }
  .pure-u-1-2,
  .pure-u-12-24 {
    padding: 6% 0;
  }
  .pure-u-md-1,
  .pure-u-md-1-1,
  .pure-u-md-24-24,
  .pure-u-md-5-5 {
    width: 100%;
  }
  .flex-Box {
    display: block;
  }
  .flex-Box .flex-Box-left,
  .flex-Box .flex-Box-right {
    width: 100%;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner {
    padding-right: 4.666vw;
  }
  body.lenses article section nav#maker.maker_custom ul li.new .tabInner::before {
    width: 10.4vw;
    height: 4.533vw;
    margin: 1.5vw 1.6vw 0 0;
    font-size: 2.4vw;
    line-height: 4.533vw;
  }
  body.lenses article section nav#maker.maker_custom ul li::after {
    width: 2.1vw;
    height: 2.1vw;
    right: 3vw;
    top: calc((100% - 2.1vw) / 2);
  }
  body.lenses article section nav#maker.maker_custom ul li.selected::before {
    content: none;
  }
  body.lenses article section nav#maker.maker_custom ul li.selected::after {
    right: 2.6vw;
  }
  #additionalFeatures ul.list li {
    padding: 30px 0 20px 0;
    height: auto;
    line-height: 1.5;
  }
  .menuTab {
    padding: 0 20px;
  }
  .menuTab ul {
    flex-direction: column;
    /* 改为纵坑排列 */
  }
  .menuTab li {
    width: 100%;
    line-height: 2.4rem;
    /* 适当增加行高，杝均点击区�?*/
    border-bottom: 1px solid #eaeaea;
    /* 添加分隔线，增强视觉层次 */
    font-size: 1.5rem;
  }
.consumer-toggle02 {
  position: relative;
  width: 100%;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  cursor: default;
}
  /* 移除移动端列表项坳侧分隔线（原横坑布局用） */
  .menuTab li::after {
    display: none;
  }
  /* 修夝最坎一项底边距 */
  .menuTab li:last-child {
    border-bottom: none;
  }
}
/* Responsive Design - Tablet and Desktop */
@media screen and (max-width: 1024px) {
  /* Table Layout Adaptation */
  .mod-tbl02 tbody:nth-child(1),
  .mod-tbl02 tbody:nth-child(2),
  .mod-tbl02 td:nth-child(1),
  .mod-tbl02 td:nth-child(2),
  .mod-tbl02 th:nth-child(1),
  .mod-tbl02 th:nth-child(2),
  .mod-tbl02 thead:nth-child(1),
  .mod-tbl02 thead:nth-child(2),
  .mod-tbl02 tr:nth-child(1),
  .mod-tbl02 tr:nth-child(2) {
    width: 100%;
  }
  .mod-tbl02 tbody,
  .mod-tbl02 td,
  .mod-tbl02 th,
  .mod-tbl02 thead,
  .mod-tbl02 tr {
    display: block;
    width: 100%;
  }
  /* Container Padding Adjustment */
  .mod-auto {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 20px 0 20px;
    box-sizing: border-box;
  }
}

