html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline
}

html {
    line-height: 1
}

ol,ul {
    list-style: none
}

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
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline
}

html {
    line-height: 1
}

ol,ul {
    list-style: none
}

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 {
    content: "";
    content: none
}

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: "YuGothic", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.en {
    font-family: 'Source Sans Pro', sans-serif;
    letter-spacing: .05em
}

.serif {
    font-family: 'EB Garamond', serif;
    letter-spacing: .05em
}

.mincho {
    font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "PT Serif", serif
}

*:after {
    display: block;
    clear: both
}

a {
    color: #000
}

strong {
    font-weight: bold
}

.underline {
    text-decoration: underline
}

.left {
    float: left
}

.right {
    float: right
}

.mgt10 {
    margin-top: 10px !important
}

.mgt20 {
    margin-top: 20px !important
}

.mgt30 {
    margin-top: 30px !important
}

.mgt40 {
    margin-top: 40px !important
}

.mgt50 {
    margin-top: 50px !important
}

.mgt60 {
    margin-top: 60px !important
}

.mgt70 {
    margin-top: 70px !important
}

.mgt80 {
    margin-top: 80px !important
}

.mgt90 {
    margin-top: 90px !important
}

.mgt100 {
    margin-top: 100px !important
}

.mgb10 {
    margin-bottom: 10px !important
}

.mgb20 {
    margin-bottom: 20px !important
}

.mgb30 {
    margin-bottom: 30px !important
}

.mgb40 {
    margin-bottom: 40px !important
}

.mgb50 {
    margin-bottom: 50px !important
}

.mgb60 {
    margin-bottom: 60px !important
}

.mgb70 {
    margin-bottom: 70px !important
}

.mgb80 {
    margin-bottom: 80px !important
}

.mgb90 {
    margin-bottom: 90px !important
}

.mgb100 {
    margin-bottom: 100px !important
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
    margin: 0;
    padding: 0
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

*:before,*:after {
    -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
}

@font-face {
    font-family: 'tmrnp';
    src: url("../font/tmrnp.eot?wxafg5");
    src: url("../font/tmrnp.eot?wxafg5#iefix") format("embedded-opentype"),url("../font/tmrnp.ttf?wxafg5") format("truetype"),url("../font/tmrnp.woff?wxafg5") format("woff"),url("../font/tmrnp.svg?wxafg5#tmrnp") format("svg");
    font-weight: normal;
    font-style: normal
}

[class^="icon-"],[class*=" icon-"] {
    font-family: 'tmrnp' !important;
    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-info:before {
    content: "\e600"
}

.icon-wrench:before {
    content: "\e601"
}

.icon-youtube:before {
    content: "\e703"
}

.icon-instagram:before {
    content: "\e702"
}

.icon-twitter:before {
    content: "\e701"
}

.icon-facebook:before {
    content: "\e700"
}

.icon-arrow-l:before {
    content: "\e800"
}

.icon-arrow-r:before {
    content: "\e801"
}

.icon-check:before {
    content: "\e804"
}

.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
}

.bx-wrapper .bx-viewport {
    -webkit-transform: translatez(0);
    transform: translatez(0)
}

.bx-wrapper .bx-pager,.bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: -30px;
    width: 100%
}

.bx-wrapper .bx-loading {
    min-height: 50px;
   
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2000
}

.bx-wrapper .bx-pager {
    text-align: center;
    font-size: .85em;
    font-family: Arial;
    font-weight: bold;
    color: #666
}

.bx-wrapper .bx-pager .bx-pager-item {
    display: inline-block;
    *zoom:1;*display: inline
}

.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
    *zoom:1;*display: inline
}

.bx-wrapper .bx-pager.bx-default-pager a {
    background: #757575;
    text-indent: -9999px;
    display: block;
    width: 31px;
    height: 6px;
    margin: 0 3px;
    outline: 0
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,.bx-wrapper .bx-pager.bx-default-pager a.active {
    background: white
}

.bx-wrapper .bx-prev,.bx-wrapper .bx-next {
    color: white
}

.bx-wrapper .bx-prev {
    left: -60px
}

.bx-wrapper .bx-prev:after {
    text-indent: 0 !important;
    font-family: 'tmrnp';
    line-height: 1;
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    font-size: 50px
}

.bx-wrapper .bx-next {
    right: -60px
}

.bx-wrapper .bx-next:after {
    text-indent: 0 !important;
    font-family: 'tmrnp';
    line-height: 1;
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    font-size: 50px
}

.bx-wrapper .bx-controls-direction a {
    position: absolute;
    outline: 0;
    top: 50%;
    margin-top: -25px;
    width: 50px;
    height: 50px;
    text-indent: -9999px;
    z-index: 9999
}

.bx-wrapper .bx-controls-direction a.disabled {
    display: none
}

.bx-wrapper .bx-controls-auto {
    text-align: center
}

.bx-wrapper .bx-controls-auto .bx-start {
    display: block;
    text-indent: -9999px;
    width: 10px;
    height: 11px;
    outline: 0;
    background: url(../img/plugin/controls.png) -86px -11px no-repeat;
    margin: 0 3px
}

.bx-wrapper .bx-controls-auto .bx-start:hover,.bx-wrapper .bx-controls-auto .bx-start.active {
    background-position: -86px 0
}

.bx-wrapper .bx-controls-auto .bx-stop {
    display: block;
    text-indent: -9999px;
    width: 9px;
    height: 11px;
    outline: 0;
    background: url(../img/plugin/controls.png) -86px -44px no-repeat;
    margin: 0 3px
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,.bx-wrapper .bx-controls-auto .bx-stop.active {
    background-position: -86px -33px
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
    text-align: left;
    width: 80%
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
    right: 0;
    width: 35px
}

.bx-wrapper .bx-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    background: #666 \9;
    background: rgba(80,80,80,0.75);
    width: 100%
}

.bx-wrapper .bx-caption span {
    color: #fff;
    font-family: Arial;
    display: block;
    font-size: .85em;
    padding: 10px
}

.slick-slider {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-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);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block
}

.slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    content: "";
    display: table;
    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
}

.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
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-loading .slick-list {
    background: #fff url("../img/plugin/slick/ajax-loader.gif") center center no-repeat
}

@font-face {
    font-family: "slick";
    src: url("../font/slick.eot");
    src: url("../font/slick.eot?#iefix") format("embedded-opentype"),url("../font/slick.woff") format("woff"),url("../font/slick.ttf") format("truetype"),url("../font/slick.svg#slick") format("svg");
    font-weight: normal;
    font-style: normal
}

.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;
    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;
    border-radius: 50%;
    outline: none;
    font-size: 0;
    background-color: #393939;
    border: 1px solid #393939;
    color: transparent;
    cursor: pointer;
    -webkit-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 {
    padding: 0;
    margin: 0;
    border: 0;
    outline: none;
    vertical-align: top
}

.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-y: scroll !important ;
	overflow-x: hidden !important ;
}

.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("/migration/assets/img/plugin/fancybox/fancybox_sprite.png")
}

#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;
    background: transparent url("../img/plugin/fancybox/blank.gif");
    -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;
    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
}

@media screen and (max-width: 480px) {
    .fancybox-nav span {
        width:24px;
        height: 40px;
        margin-top: -18px
    }
}

.fancybox-prev span {
    left: -60px;
    background-position: left 0 !important
}

@media screen and (max-width: 480px) {
    .fancybox-prev span {
        left:-16px
    }
}

.fancybox-next span {
    right: -60px;
    background-position: right 0 !important
}

@media screen and (max-width: 480px) {
    .fancybox-next span {
        right:-16px
    }
}

.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-lock {
    overflow: hidden !important;
    width: auto
}

.fancybox-lock body {
    overflow: hidden !important
}

.fancybox-lock-test {
    overflow-y: hidden !important
}

.fancybox-overlay {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    display: none;
    z-index: 10010;
    background: rgba(242,242,242,0.9)
}

.fancybox-overlay-fixed {
    position: fixed;
    bottom: 0;
    right: 0
}

.fancybox-lock .fancybox-overlay {
    overflow: auto;
    overflow-y: scroll
}

.fancybox-title {
    visibility: hidden;
    letter-spacing: .1em;
    font-size: 1.4em;
    position: relative;
    text-shadow: none;
    z-index: 10050;
    color: white
}

.fancybox-title span {
    display: inline-block;
    margin-top: 8px;
    font-size: .8em;
    font-family: 'Source Sans Pro', sans-serif;
    letter-spacing: .05em
}

.fancybox-opened .fancybox-title {
    visibility: visible
}

.fancybox-title-float-wrap {
    position: absolute;
    bottom: -54px;
    right: 50%;
    z-index: 10050;
    text-align: center;
    height: 50px
}

.fancybox-title-float-wrap .child {
    display: inline-block;
    margin-right: -100%;
    padding: 2px 20px;
    background: transparent;
    color: #344457;
    font-size: 16px;
    line-height: 1.3;
    white-space: nowrap
}

.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: #000;
    background: rgba(0,0,0,0.8)
}

@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
    }
}

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-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: "YuGothic", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 62.5%
}

body {
    position: relative;
    width: auto;
    font-size: 1em;
    line-height: 1;
    color: #000;
    background-color: #fafafa
}

body .inner {
    max-width: 1200px;
    width: 100%;
    padding: 0 20px;
    margin-left: auto;
    margin-right: auto
}

*+html body {
    font-family: "YuGothic", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

*+html body .en {
    font-size: 100%;
    letter-spacing: 0
}

a {
    text-decoration: none;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.25s ease;
    transition: 0.25s ease
}

a:link,a:visited {
    color: #000
}

a:hover,a:active {
    color: #2a6cd6 !important
}

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_gray1 {
    background-color: #fafafa !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
}

footer#siteFooter {
    width: 100%;
    background-color: #fafafa
}

footer#siteFooter .inner {
    position: relative;
    padding-top: 0 !important;
    padding-bottom: 0 !important
}

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("/migration/jp/assets/img/common/btn_totop.png") right 0 no-repeat;
    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 (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) {
    footer#siteFooter .inner nav.top .right a.toTop:after {
        background-image:url("/migration/jp/assets/img/common/btn_totop@2x.png");
        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
    }
}

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-size: 105px 25px
}

header#siteHeader {
    width: 100%;
    height: 95px;
    border-top: 25px solid #f5f5f5
}

header#siteHeader .inner {
    position: relative
}

header#siteHeader .inner div.main {
    position: relative;
    height: 70px;
    padding-top: 15px
}

header#siteHeader .inner div.main h1#mainLogo {
    position: relative;
    width: 130px;
    height: 41px
}

header#siteHeader .inner div.main h1#mainLogo a {
    display: block;
    display: block;
    text-align: left;
    text-indent: -9999px;
    width: 155px;
    height: 41px;
    background: transparent url("/migration/jp/assets/img/common/logo_main.png") center/contain no-repeat;
    background-size: 154px 41px;
}

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);
    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 (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) {
    header#siteHeaderSP h1 a {
        
        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 (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) {
    header#siteHeader .inner div.main h1#mainLogo a {
        background-image:url("/migration/jp/assets/img/common/logo_main@2x.png");
    }
}

.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;
        -webkit-transition: all .4s;
        transition: all .4s;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        position: relative;
        width: 36px;
        height: 24px
    }

    header#siteHeader #naviBtn .menu-trigger span {
        display: inline-block;
        -webkit-transition: all .4s;
        transition: all .4s;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        width: 100%;
        height: 3px;
        background-color: #000;
        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) {
        -webkit-transform: translateY(11px) rotate(-135deg);
        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) {
        -webkit-transform: translateY(-10px) rotate(-45deg);
        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
}

#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;
    transition: 0.3s ease-in-out;
    display: block;
    width: 100%
}

.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;
    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("/jp/consumer/support/help/lensutility/assets/img/icon_play.png") center center no-repeat;
    background-size: 80px 80px;
    background-size: cover
}

.column.video .col a figure.photo:before {
    display: none
}

.column.video .col a:hover figure:before {
    -webkit-transform: scale(0.8, 0.8);
    transform: scale(0.8, 0.8)
}

.column.exif .col a figure {
    margin-bottom: 26px
}

.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;
    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;
    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 15px;
    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
}

.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;
    font-family: 'tmrnp';
    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 .meta .description {
    margin-bottom: 8px;
	line-height:1.6;
	width:90%;
}

.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%
}

.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%
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) {
    .column.video .col a figure:before {
        background-image:url("../img/common/icon_play@2x.png");
        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
    }
}


@media screen and (max-width: 768px) {
  .column.product .col a div.data {
    padding: 0 17% 0 5%;
    top: 10px ;
  }
  .column.product .col a figure.new:after {
    bottom: unset;
    top: 15px ;
    left: unset ;
    right: 10px ;
  }
  .column.product .col a .sub{
    left: 5% ;
  }
}

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 {
		position: relative;
		display: inline-block;
		font-size: 1.4rem;
		padding-left: 35px ;
	margin-right: 17px ;
}
body article div#main div.links a:last-child {
	margin-right: 0 ;
}
@media screen and (max-width: 480px) {
	body article div#main div.links a {
		display: block;
		font-size: 1.4rem;
		margin-right: 0 ;
		margin-bottom: 20px ;
	}
}
body article div#main div.links a.fb:before {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
				content: '' ;
    width: 27px;
    height: 26px;
				background-image:url(../img/common/sns_facebook.png) ;
				background-position: center center ;
				background-repeat: no-repeat ;
    margin-top: -6px;
}
body article div#main div.links a.twitter:before {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
				content: '' ;
    width: 27px;
    height: 26px;
				background-image:url(../img/common/sns_twitter.png) ;
				background-position: center center ;
				background-repeat: no-repeat ;
    margin-top: -6px;
}
body article div#main div.links a.insta:before {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
				content: '' ;
    width: 27px;
    height: 26px;
				background-image:url(../img/common/sns_instagram.png) ;
				background-position: center center ;
				background-repeat: no-repeat ;
    margin-top: -6px;
}
body article div#main div.links a.youtube:before {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
    display: block;
				content: '' ;
    width: 27px;
    height: 26px;
				background-image:url(../img/common/sns_youtube.png) ;
				background-position: center center ;
				background-repeat: no-repeat ;
    margin-top: -6px;
}

body section {
    padding-top: 94px;
    padding-bottom: 50px
}

body section h1 {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 80px
}

body section h1:after {
    content: ""
}

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;
    font-family: 'tmrnp';
    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"
}

@media screen and (max-width: 768px) {
    body section {
        padding-top:40px;
        padding-bottom: 40px
    }

    body section h1 {
        margin-bottom: 40px
    }

    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
    }
}

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-family: 'tmrnp';
    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#news ul li div.text a{
	cursor: pointer ;
}

body.home article section#gallery {
    background-color: #f5f5f5
}

body.product article div.header {
    position: relative
}

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;
    font-family: 'tmrnp';
    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;
    font-family: 'tmrnp';
    content: '';
    font-size: 12spx;
    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(/migration/jp/assets/img/lenses/f000/SP90_product-image_large.jpg) no-repeat right bottom #000;
    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
}

body.lenses .box:after {
    content: ""
}

body.lenses .box .header {
    margin-bottom: 25px
}

body.lenses .box .header .title,body.lenses .box .header .txt {
    float: none;
    width: 100%
}

body.lenses .box .body: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
}

body.lenses article section {
    padding-top: 50px;
    padding-bottom: 50px
}

body.lenses article section #subGallery {
    margin-left: -3px;
    margin-right: -3px;
    position: relative;
    margin-bottom: 5px;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

body.lenses article section #subGallery .slider-for .slick-arrow {
    width: 50px;
    height: 50px;
    margin-top: -25px
}

body.lenses article section #subGallery .slider-for .slick-arrow:before {
    font-size: 50px
}

body.lenses article section #subGallery .slider-for .slick-prev {
    left: -42px
}

body.lenses article section #subGallery .slider-for .slick-next {
    right: -42px
}

body.lenses article section #subGallery .slider-for .slick-dots {
    bottom: -22px
}

body.lenses article section #subGallery .slider-nav figure {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out
}

body.lenses article section #subGallery .slider-nav figure img {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
    opacity: 0.8
}

body.lenses article section #subGallery .slider-nav figure.slick-current img,body.lenses article section #subGallery .slider-nav figure:hover img {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1
}

body.lenses article section #subGallery.slick {
    position: relative
}

body.lenses article section #subGallery.slick .slider {
    margin-left: auto;
    margin-right: auto
}

body.lenses article section #subGallery.slick .slider figure {
    padding: 3px
}

body.lenses article section #subGallery.slick .slider figure img {
    margin-left: auto;
    margin-right: auto;
    display: block;
    max-width: 100%
}

body.lenses article section #subGallery.slick .slider-for figure {
    position: relative;
    margin-bottom: 0
}

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.lenses article section #subGallery.slick .slider-nav figure {
    max-height: 600px;
    overflow: hidden;
    max-height: 114px;
    outline: none
}

body.lenses article section #subGallery.slick .slider-nav figure figcaption {
    padding-top: 0;
    padding-bottom: 3px
}

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;
    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 #000
}

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;
    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;
    font-family: 'tmrnp';
    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;
    font-family: 'tmrnp';
    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
}

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;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
    -webkit-transition-duration: .15s;
    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;
    -webkit-transition-property: left, opacity;
    transition-property: left, opacity;
    background-image: url(../img/lenses/arrow_right_white.png)
}

body.lenses article section#imageGallery .controls a.next {
    right: -80px;
    -webkit-transition-property: right, opacity;
    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: "YuGothic", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

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;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body.lenses article section#information table td {
    vertical-align: text-top;
    padding: 0 14px 22px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
body.lenses article section#information table td img{
 max-width: 100% ;}

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;
    transition: 0.3s ease-in-out;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7
}

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,body.lenses article section.FloatingSystem .block .right {
    width: 45%
}

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: 1.8rem;
    line-height: 1.4;
    margin-bottom: 20px
}

body.lenses article section.FloatingSystem .block .feature_body {
    font-size: 1.4rem;
    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:after {
    content: ""
}

body.lenses article section ul.list li {
    float: left;
    border-bottom: 1px solid #757575;
    width: 48%;
    margin-right: 2%
}

body.lenses article section ul.list li:nth-child(2n) {
    margin-right: 0
}

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:after {
    position: absolute;
    right: 10px;
    top: 50%;
    z-index: 1;
    font-family: 'tmrnp';
    content: '\e805';
    display: block;
    font-size: 20px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    line-height: 1
}

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
}

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 {
    border: 1px solid #d6d6d6;
    padding: 50px 0
}

body.lenses article section#accessories .column .col figure div.frame img {
    display: block;
    max-height: 80px;
    width: auto;
    margin-left: auto;
    margin-right: auto
}

body.lenses article section#accessories .column .col figure figcaption {
    padding-top: 8px;
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.5
}

body.lenses article section nav#maker {
    margin-bottom: 30px
}

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: 70px;
    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
}

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
}

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;
    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;
    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;
    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 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
}

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: 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
    }
}

@media screen and (max-width: 768px) {
    body.lenses article section#additionalFeatures ul.list li a {
        height:auto !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
    }
}

@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
    }
}

@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
    }
}

@media screen and (max-width: 480px) {
    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
    }

    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: 1.6rem;
        margin-bottom: 24px
    }

    body.lenses article section.FloatingSystem .block .feature_body {
        font-size: 1.3rem;
        margin-bottom: 40px
    }

    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: 768px) {
    body.lenses article section ul.list li {
        float:none;
        width: 100%
    }
}

@media screen and (max-width: 768px) {
    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;
    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 ;*/
	color: #000000 ;
}

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 {
    font-family: 'tmrnp';
    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 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 div#main div.cont ol{
    padding-left: 30px
}

body.repair-price article div#main div.cont ol li {
    list-style: disc outside;
    margin-bottom: 20px;
    font-size: 1.4rem;
    line-height: 1.7
}

body.repair-price article div#main div.cont ul {
	padding-left: 10px
}
body.repair-price article div#main div.cont ul li {
	list-style:none outside;
	margin-bottom: 20px;
	font-size: 1.4rem;
	line-height: 1.7 ;
	padding-left: 1em ;
	text-indent: -1em ;
}

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 .gr h2.sub {
    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 {
    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 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;
    font-family: 'tmrnp';
    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 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 ;
	cursor: pointer ;
}
body.page-template-page-news article div#main div.cont ol li ul li span {
    display: block;
    padding: 12px 0 10px;
    line-height: 1.5;
}

body.support article div#main,
body.repair-price article div#main{
    padding-bottom: 100px
}

body.support article div#main h1#pageTitle,
body.repair-price article div#main h1#pageTitle {
    margin-bottom: 70px
}

body.support article div#main .wrapper ,
body.repair-price article div#main .wrapper {
    display: table;
    width: 100%
}

body.support article div#main nav#list,
body.repair-price article div#main nav#list {
    display: table-cell;
    width: 16%;
    min-width: 110px
}

body.support article div#main nav#list ul li ,
body.repair-price 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 a{
	cursor: pointer ;
}

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
}

body.single article div.body figure#mainimage figcaption a:after {
    font-family: 'tmrnp';
    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%;
    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;
    background-size: 12px 12px;
    content: ''
}

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: 680px ;
				margin-right: 15px ;
}

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%
    }
}

@media screen and (max-width: 480px) {
    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
    }
}

@media screen and (max-width: 480px) {
    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 (-webkit-min-device-pixel-ratio: 2), 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");
        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 ;
								width: 100% ;
								margin-right: 0;
   }

    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
    }
}

.mdl-list-item p {
    font-size: 1.4rem;
    line-height: 1.7;
    margin-bottom: 14px;
    color: #757575
}

.mdl-list-item div.item {
    margin-top: 50px
}

.mdl-list-item h2 {
    color: #000;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.4;
    margin-bottom: 20px
}

.mdl-list-item table.gr {
    color: #757575;
    width: 100%;
    border-left: 1px solid #999;
    border-top: 1px solid #999
}

.mdl-list-item table.gr caption {
    position: relative;
    margin-bottom: 10px
}

.mdl-list-item table.gr caption h2 {
    font-weight: bold;
    font-size: 1.6rem;
    border-left: 4px solid #757575;
    padding-left: 8px;
    color: #000
}

.mdl-list-item table.gr caption .unit {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    text-align: right;
    font-size: 1.2rem
}

.mdl-list-item table.gr tr th,.mdl-list-item table.gr tr td {
    text-align: center;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    padding: 5px 3px 3px
}

.mdl-list-item table.gr tr th {
    background-color: #f1f1f1;
    font-weight: bold;
    font-size: 1.2rem
}

.mdl-list-item table.gr tr th span {
    font-weight: normal;
    font-size: 1rem
}

.mdl-list-item table.gr tr td {
    font-size: 1.2rem;
    line-height: 1.3
}

.mdl-list-item .note {
    margin-top: 5px;
    font-size: 1.1rem;
    line-height: 1.4
}

/*  ä¿®ç†ã«ã¤ã„ã¦
--------------------------------------------------------------*/
body.repair-info article div#main div.cont section {
	padding-top: 0;
	padding-bottom: 0px
}

body.repair-info 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-info article div#main div.cont section p,
body.repair-info article div#main div.cont section a {
	font-size: 1.4rem;
	line-height: 1.7;
	margin-bottom: 12px ;
}

body.repair-info article div#main div.cont section a {
	text-decoration: underline ;
}

body.repair-info article div#main div.cont section ul.level1 li {
	margin-bottom: 35px
}

	body.repair-info 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-info article div#main div.cont section ul.level1 li .body{
		padding: 2px 8px;
		padding-left: 13px ;
		margin-bottom: 10px
	}

	body.repair-info article div#main div.cont section ul.level1 li .body a.level2 {
		display: inline-block;
		margin-left: 16px
	}

body.repair-info article div#main div.cont section#step3{}
body.repair-info article div#main div.cont section#step3 a{
	text-decoration: underline ;
}
body.repair-info article div#main div.cont section#step3 dl{
	position: relative;
	width: 100%;
	min-height: 90px;
	margin: 0 auto 18px auto;
	display: table;
}
body.repair-info article div#main div.cont section#step3 dl dt{
	width: 200px ;
	display: table-cell ;
	text-align: center ;
}
body.repair-info article div#main div.cont section#step3 dl dt a{
	display: block ;
	border: 2px solid #999 ;
	padding: 10px ;
	-webkit-box-sizing: border-box ;
	box-sizing: border-box ;
	border-radius:10px ;
	background:#F1F0F0 ;
	font-weight: bold ;
	font-size: 1.7rem ;
}

body.repair-info article div#main div.cont section#step3 dl dd{
	display: table-cell ;
	padding: 0 0 0 20px ;
	vertical-align: middle ;
}
body.repair-info article div#main div.cont section#step3 dl dd p{
	font-size: 1.1rem ;
}


body.repair-info article div#main div.cont section#step3 dl::before{
	position: absolute;
	content: '';
	display: block;
	top: 80px;
	left: 87px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border: 15px solid transparent;
	border-left: 12px solid #999;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
body.repair-info article div#main div.cont section#step3 dl::after{
	position: absolute;
	content: '';
	display: block;
	top: 70px;
	left: 92px;
	width: 8px;
	height: 14px;
	border-left: 16px solid #999;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

body.repair-info article div#main div.cont section#step3 dl:last-child::before,
body.repair-info article div#main div.cont section#step3 dl:last-child::after{
	display: none ;
}

body.repair-info article div#main div.cont section#step6{}
body.repair-info article div#main div.cont section#step6 dl{
	margin: 5px auto 20px auto ;
}
body.repair-info article div#main div.cont section#step6 dl dt{
	position: relative ;
	font-size: 1.7rem ;
	cursor: pointer ;
}

body.repair-info article div#main div.cont section#step6 dl dt::before{
	position: absolute ;
	content: '' ;
	display: block ;
	right: 5px;
	top: 3px ;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 10px;
	height: 10px;
	border: 7px solid transparent;
	border-left: 10px solid #999;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

body.repair-info article div#main div.cont section#step6 dl dd{
	display: none ;
	border: 1px solid #cccccc ;
	padding: 20px 20px 0 20px;
	-webkit-box-sizing: border-box ;
	box-sizing: border-box ;
	margin: 15px 10px 40px 15px ;
	font-size: 1.4rem ;
	line-height: 1.7 ;
}

body.repair-info article div#main div.cont section#step6 dl dd ol{
	margin: 0 0 0 17px ;
	padding: 0 ;
}
body.repair-info article div#main div.cont section#step6 dl dd ol li{
	list-style-position: outside ;
	list-style: decimal ;
	margin-bottom: 20px ;

}
body.repair-info article div#main div.cont section#step6 dl dd ol ul{
	margin: 0 0 0 17px ;
}

body.repair-info article div#main div.cont section#step6 dl dd ol ul li{
	list-style:disc ;
}

body.repair-info article div#main div.cont section#step7{}
body.repair-info article div#main div.cont section#step5 dl,body.repair-info article div#main div.cont section#step7 dl{
	margin: 5px auto 20px auto ;
}
body.repair-info article div#main div.cont section#step5 dl dt,body.repair-info article div#main div.cont section#step7 dl dt{
	font-size: 1.5rem ;
}

body.repair-info article div#main div.cont section#step5 dl dd,body.repair-info article div#main div.cont section#step7 dl dd{
	margin: 15px 0 40px 15px ;
	font-size: 1.4rem ;
	line-height: 1.7 ;
}

@media screen and (max-width: 720px) {
	body.repair-info article div#main div.cont section {
		padding-bottom: 20px
	}

	body.repair-info article div#main div.cont section#step3 dl{
		min-height: auto ;
		display:block ;
		padding-bottom: 30px ;
	}
	body.repair-info article div#main div.cont section#step3 dl dt{
		width: 100% ;
		display: block;
	}

	body.repair-info article div#main div.cont section#step3 dl dd{
		width: 100% ;
		display: block;
		padding: 0 0 0 0;
	}

	body.repair-info article div#main div.cont section#step3 dl::before{
		top: 90% ;
		left: 43%;
	}
	body.repair-info article div#main div.cont section#step3 dl::after{
		top: 86% ;
		left: 45%;
	}

	body.repair-info article div#main div.cont section#step6 dl dd{
		padding: 5px 5px 0 5px;
	}

}


/*  product : モーダル（20180106）
----------------------------------------------------*/
	.product_box{
		padding: 20px ;
		overflow: hidden ;
		-webkit-box-sizing: border-box ;
		box-sizing: border-box ;
	}

	.product_box .photoBlock{
		width: 34% ;
		float: right ;
		text-align: left ;
	}

		.product_box .photoBlock img{
			max-width: 100% ;
		}

	.product_box .infoBlock{
		width: 64% ;
		float: left ;
	}

		.product_box .infoBlock .name{
			font-size: 2rem ;
			font-weight:bold;
			margin-bottom: 15px ;
			line-height: 1.3
		}

		.product_box .infoBlock .note,
		.product_box .infoBlock .spec{
			font-size: 1.5rem ;
			margin-bottom: 15px ;
			line-height: 1.5 ;
		}

		.product_box .infoBlock .link{
			margin-bottom: 5px ;
		}
		.product_box .infoBlock .sub{
			font-size: 1.3rem ;
		}

@media screen and (max-width: 660px) {
	.product_box{
		padding: 10px ;
	}

	.product_box .photoBlock{
		width: 100% ;
		max-width: 350px ;
		margin: 0 auto 15px auto ;
		float: none ;
		text-align: center ;
	}

	.product_box .infoBlock{
		width: 100% ;
		float: none ;
	}
}




/*  リリースノート
----------------------------------------------*/
body.repair-price .releasenote{}
body.repair-price .releasenote table.gr{}
body.repair-price .releasenote table.gr th:nth-child(1){ width: 280px ;}
body.repair-price .releasenote table.gr th:nth-child(2){ width: 100px ;}
body.repair-price .releasenote table.gr th:nth-child(3){ width: 100px ;}
body.repair-price .releasenote table.gr th:nth-child(4){ width: 100px ; }
body.repair-price .releasenote table.gr th:nth-child(5){ width: 100px ;}
body.repair-price .releasenote table.gr th:nth-child(6){ }

body.repair-price .releasenote table.gr td a{ cursor: pointer ;}

/*  弊社でお預かりしアップデートする製品
----------------------------------------------*/
body.repair-price .azukari{}
body.repair-price .azukari table.gr{}
body.repair-price .azukari table.gr th:nth-child(1){ width: 100px ;}
body.repair-price .azukari table.gr th:nth-child(2){ }
body.repair-price .azukari table.gr th:nth-child(3){ width: 100px ;}
body.repair-price .azukari table.gr th:nth-child(4){ width: 200px ;}
body.repair-price .azukari table.gr th:nth-child(5){ width: 200px ;}

body.repair-price article div#main .azukari table.gr tr td{ text-align: left !important;}

/*  英語
----------------------------------------------*/
body.repair-price.english{}
body.repair-price.english .releasenote,
body.repair-price.english .azukari{}
body.repair-price.english .guide{}
body.repair-price.english .releasenote .item,
body.repair-price.english .azukari .item{}
body.repair-price.english .guide .item{}
body.repair-price.english div#main div.releasenote .item h2,
body.repair-price.english div#main div.azukari .item h2,
body.repair-price.english div#main div.guide .item h2{
	font-weight: bold;
	color: #000;
	margin-bottom: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}
body.repair-price.english div#main div.releasenote .item .body,
body.repair-price.english div#main div.azukari .item .body,
body.repair-price.english div#main div.guide .item .body{
	margin-bottom: 18px;
	font-size: 1.4rem;
	line-height: 1.6;
}
body.repair-price.english div#main div.releasenote .item table,
body.repair-price.english div#main div.azukari .item table{
	margin-bottom: 10px ;
}
/*body.repair-price.english div#main div.releasenote .item table th,
body.repair-price.english div#main div.azukari .item table th{
	background-color: #e5e5e5 ;
	padding: 7px 5px 5px 8px;
	font-size: 1.4rem;
	line-height: 1.4;
}
body.repair-price.english div#main div.releasenote .item table td,
body.repair-price.english div#main div.azukari .item table td{
	padding: 7px 5px 5px 8px;
	font-size: 1.4rem;
	line-height: 1.4;
}*/
body.repair-price.english div#main div.releasenote .item small,
body.repair-price.english div#main div.azukari .item small,
body.repair-price.english div#main div.guide .item small{
	font-size: 1.4rem;
}

@media screen and (max-width: 660px) {
	body.repair-price .table_wrap{
		width: 100% ;
		overflow-x: auto ;
		padding-bottom: 15px ;
	}
	body.repair-price article div#main div.cont .table_wrap table.gr{
		width: 975px ;
	}
}




/*  アクセサリーラインナップ
----------------------------------------------*/
body.accessories{}
body.accessories .accessoriesBlock{
	margin: 0 auto 50px auto ;
}
	body.accessories .accessoriesBlock h2{}
	body.accessories .accessoriesBlock .table{
		width: 100% ;
		overflow-x: auto ;
	}
	body.accessories .accessoriesBlock .table table{
		width: 1160px;
		border-left: 1px solid #999;
		border-top: 1px solid #999 ;
		margin-bottom: 15px ;
	}
	body.accessories .accessoriesBlock .table table caption {
		position: relative;
		margin-bottom: 10px
	}
	body.accessories .accessoriesBlock .table table caption h2 {
		font-weight: bold;
		font-size: 1.6rem;
		border-left: 4px solid #757575;
		padding-left: 8px;
		color: #000
	}
	body.accessories .accessoriesBlock .table table caption .unit {
		position: absolute;
		right: 0;
		bottom: 0;
		z-index: 1;
		text-align: right;
		font-size: 1.2rem
	}
	body.accessories .accessoriesBlock .table table tr th,
	body.accessories .accessoriesBlock .table table tr td {
		text-align: center;
		border-right: 1px solid #999;
		border-bottom: 1px solid #999;
		padding: 5px 3px 3px ;
		-webkit-box-sizing: border-box ;
		box-sizing: border-box ;
	}
	body.accessories .accessoriesBlock .table table tr th {
		background-color: #f1f1f1;
		font-weight: bold;
		font-size: 1.2rem ;
		padding: 5px 10px;
	}
	body.accessories .accessoriesBlock .table table tr td:nth-child(1){ width: 150px ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(1) img{ max-width: 150px ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(2){ width: 190px ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(3){ width: 70px ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(4){ width: 330px ; text-align: left ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(5){ width: 70px ;}
	body.accessories .accessoriesBlock .table table tr td:nth-child(6){ width: 330px ; text-align: left ;}
	body.accessories .accessoriesBlock .table table tr td {
		font-size: 1.2rem;
		line-height: 1.3
	}

@media screen and (max-width: 660px) {
}


	body.accessories .accessoriesBlock .table table tr td .new {
		border-radius:2px;
		border:solid 1px #2a6cd6;
		color:#2a6cd6;
		/*font-size:90%;*/
		padding:1px 3px;
		margin:0px auto 5px;
		width:15%;
		font-weight:bold;
	}


	body.accessories .accessoriesBlock .table table tr td p.ec {
		border-radius:8px;
		background-color:#999;
		font-size:80%;
		padding:5px;
		margin:10px auto 0;
		width:60%;
	}

	body.accessories .accessoriesBlock .table table tr td p.ec a:link, p.ec a:visited {
		color: #FFF;
	}

	body.accessories .accessoriesBlock .table table tr td p.noec {
		border-radius:8px;
		background-color:#CCC;
		font-size:80%;
		padding:5px;
		margin:10px auto 0;
		width:60%;
		color:#FFF;
	}




/*  アクセサリーラインナップ
----------------------------------------------*/
body.accessories{}
body.accessories .accessoriesBlock_sub{
	margin: 0 auto 50px auto ;
}
	body.accessories .accessoriesBlock_sub h2{}
	body.accessories .accessoriesBlock_sub .table{
		width: 100% ;
	}
	body.accessories .accessoriesBlock_sub .table table{
		/*width: 1160px;*/
		border-left: 1px solid #999;
		border-top: 1px solid #999 ;
		margin-bottom: 15px ;
	}
	body.accessories .accessoriesBlock_sub .table table caption {
		position: relative;
		margin-bottom: 10px
	}
	body.accessories .accessoriesBlock_sub .table table caption h2 {
		font-weight: bold;
		font-size: 1.6rem;
		border-left: 4px solid #757575;
		padding-left: 8px;
		color: #000
	}
	body.accessories .accessoriesBlock_sub .table table caption .unit {
		position: absolute;
		right: 0;
		bottom: 0;
		z-index: 1;
		text-align: right;
		font-size: 1.2rem
	}
	body.accessories .accessoriesBlock_sub .table table tr th,
	body.accessories .accessoriesBlock_sub .table table tr td {
		text-align: center;
		border-right: 1px solid #999;
		border-bottom: 1px solid #999;
		padding: 5px 3px 3px ;
		-webkit-box-sizing: border-box ;
		box-sizing: border-box ;
	}
	body.accessories .accessoriesBlock_sub .table table tr th {
		background-color: #f1f1f1;
		font-weight: bold;
		font-size: 1.2rem ;
		padding: 5px 10px;
	}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(1){ width: 180px ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(1) img{ max-width: 150px ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(2){ width: 240px ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(3){ width: 100px ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(4){ /*width: 330px ;*/ text-align: left ;}
	body.accessories .accessoriesBlock_sub .table table tr td {
		font-size: 1.2rem;
		line-height: 1.3
	}

#lens_hood table,
#lens_case table{
	width: 100% ;
}

@media screen and (max-width: 790px) {
	body.accessories .accessoriesBlock_sub .table table{ width: 100% ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(1){ width: 100px ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(1) img{ width: 50px; max-width: 100% ; min-width: 50px;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(2){ width: auto ;}
	body.accessories .accessoriesBlock_sub .table table tr td:nth-child(3){ width: auto ;}
}


	body.accessories .accessoriesBlock_sub .table table tr td .new {
		border-radius:2px;
		border:solid 1px #2a6cd6;
		color:#2a6cd6;
		/*font-size:90%;*/
		padding:1px 3px;
		margin:0px auto 5px;
		width:15%;
		font-weight:bold;
	}


	body.accessories .accessoriesBlock_sub .table table tr td p.ec {
		border-radius:8px;
		background-color:#999;
		font-size:80%;
		padding:5px;
		margin:10px auto 0;
		width:60%;
	}

	body.accessories .accessoriesBlock_sub .table table tr td p.ec a:link, p.ec a:visited {
		color: #FFF;
	}

	body.accessories .accessoriesBlock_sub .table table tr td p.noec {
		border-radius:8px;
		background-color:#CCC;
		font-size:80%;
		padding:5px;
		margin:10px auto 0;
		width:60%;
		color:#FFF;
	}

@media screen and (max-width: 790px) {
	body.accessories .accessoriesBlock_sub .table table tr td .new {
		width:50%;
	}
	body.accessories .accessoriesBlock_sub .table table tr td p.ec {
		width: 90% ;
	}
}





/*  Support
---------------------------------------------*/
body.support .mdl-pulldown {
	font-size: 1.8rem;
	margin: 0 auto 15px auto ;
	text-align: right ;
}
	body.support .mdl-pulldown .mdl-pulldown-lead {
			display: inline-block;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger {
  display: inline-block;
  position: relative;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-display {
  display: inline-block;
  cursor: pointer;
  padding-right: 14px;
  padding-bottom:30px;
  color: #004098;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-display:before,
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-display:after {
  position: absolute;
  right: 0;
  top: 7px;
  width: 7px;
  height: 1px;
  background-color: #004098;
  display: block;
  content: '';
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-display:before {
  -webkit-transform: translateX(5px) rotate(-40deg);
  transform: translateX(5px) rotate(-40deg);
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-display:after {
  -webkit-transform: translateX(0px) rotate(40deg);
  transform: translateX(0px) rotate(40deg);
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-menu {
  display: none;
  position: absolute;
  right: 0;
  top: 22px;
  z-index: 1;
  background-color: #C9C9C9;
  padding: 20px;
  min-width: 100 px;
  white-space: nowrap;
  cursor: default;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-menu li {
  font-size: 1.5rem;
  cursor: pointer;
  margin-bottom: 5px;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-menu li:last-child {
  margin-bottom: 0 !important;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger .mdl-pulldown-menu li a{
		padding: 5px 0 !important;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger.open-pulldown .mdl-pulldown-display {
  display: block;
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger.open-pulldown .mdl-pulldown-display:before {
  -webkit-transform: translateX(5px) rotate(40deg);
  transform: translateX(5px) rotate(40deg);
	}
	body.support .mdl-pulldown .mdl-pulldown-trigger.open-pulldown .mdl-pulldown-display:after {
  -webkit-transform: translateX(0px) rotate(-40deg);
  transform: translateX(0px) rotate(-40deg);
	}



/*  GDPR
-------------------------------------------------*/
header.ogpr{
	margin-top: 68px ;
}
.cookie-container{
	background:#000;
	color:#fff;
	width:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:11000;
	display:none ;
}
.cookie-container form#cookieoptinform{
	display:table;
	max-width:1200px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	max-width:1200px\9;
	margin:auto;
	background:#000;
	padding:1em 0 1.4em 0;
	table-layout:fixed ;
}
.cookie-container form#cookieoptinform i{
	height:37px ;
}
.cookie-container form#cookieoptinform .cookie-popup{
	display:table-row ;
}
.cookie-container form#cookieoptinform .cookie-popup .cookie-msg{
	width:89%;
	width:89%\9;
	padding-right:7px;
	min-height:30px;
	font-size:1.6em;
	line-height: 1.5 ;
	display:table-cell}
.cookie-container form#cookieoptinform .cookie-popup .cookie-msg p{
	margin:0}
.cookie-container form#cookieoptinform .cookie-popup .cookie-msg p a{
	color: #ffffff ;
	text-decoration: underline ;}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn{
	display:table-cell;
	vertical-align:middle;
	text-align:right;
	white-space:nowrap}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn .cookie-accept{
	font-size:1.6em;
	margin:0 ;
	display: block ;
	padding: 8px 15px ;
	color: #ffffff ;
	background-color: #004098 ;
	text-align: center ;
}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn .cookie-accept i{
	vertical-align:middle;
	margin-right:5px;
	padding-left:0}
:lang(zh-Hans) .cookie-msg p,:lang(zh-Hant) .cookie-msg p{
	font-size:1em}
:lang(zh-Hans) .cookie-msg strong,:lang(zh-Hant) .cookie-msg strong{
	font-size:1em}
@media screen and (min-width:767px) and (max-width:1249px){.cookie-container form#cookieoptinform{width:100%;padding:1em}
.cookie-container form#cookieoptinform .cookie-popup .cookie-msg{width:73%}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn{width:21%}
}
@media screen and (max-width:767px){
header.ogpr {
    margin-top: 0;
}	.cookie-container{
	position:relative;
}

	.cookie-container form#cookieoptinform .cookie-popup{display:block;padding:0 2em}
.cookie-container form#cookieoptinform .cookie-popup .cookie-msg{float:none;border-right:0;padding:5px 0;display:block;width:100%}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn{float:none;margin-top:0 !important;display:block}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn a.cookie-accept{display:block;margin:10px auto;float:none}
.cookie-container form#cookieoptinform .cookie-popup .accept-btn a.cookie-accept i{border:0}
}


/*  サポート情報
--------------------------------------*/
/*　カメラとの互換性
++++++++++++++++++++*/
.support .gokan_box{
  font-size: 1.3rem ;
  line-height: 1.5 ;
  background: #f3f3f3 ;
  padding: 0 10px ;
  -webkit-box-sizing: border-box ;
  box-sizing: border-box ;
}
.support .gokan_box dl{
  display: table ;
  margin: 0 auto 25px auto ;
  width:100% ;}
.support .gokan_box dl dt{
  text-align: center ;
  padding: 15px 0;
  -webkit-box-sizing: border-box ;
  box-sizing: border-box ;
  width: 200px ;
  display: table-cell ;
  vertical-align: middle ;
  font-weight:bold;
font-size: 1.5rem ;}
.support .gokan_box dl dd{
  padding: 5px 0 ;
  -webkit-box-sizing: border-box ;
  box-sizing: border-box ;
  display: table-cell ;
  vertical-align: middle ;
  line-height: 2.5 ;}
.support .gokan_box dl dd a{
  padding: 0 ;
  -webkit-box-sizing: border-box ;
  box-sizing: border-box ;
  color:#2a6cd6;}
.support .gokan_box dl dd a:last-child{
  border: none ;}

/*　カタログダウンロード
++++++++++++++++++++*/
body section#support .column3 .col a {
  display: block}
body section#support .column3 .col .lbl {
  padding: 30px 24px 10px ;
  position: relative
}

body section#support .column3 .col .lbl h2 {
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 30px
}

body section#support .column3 .col .lbl ul{
  font-size: 1.3rem;
  line-height: 1.6;
  color: #757575
}

body section#support .column3 .col .lbl ul li {
  margin-bottom: 10px ;
  position: relative ;
}

body section#support .column3 .col .lbl ul li a {
  color: #757575 ;
}

/*
body section#support .column3 .col .lbl:before {
  display: block;
  position: absolute;
  right: 24px;
  top: 50%;
  margin-top: -32px;
  font-family: 'tmrnp';
  width: 64px;
  height: 64px;
  font-size: 60px
}

body section#support .column3 .col.download .lbl:before {
  content: "\e602"
}

body section#support .column3 .col.repair .lbl:before {
  content: "\e601"
}

body section#support .column3 .col.qa .lbl:before {
  content: "\e603"
}

body section#support .column3 .col.contact .lbl:before {
  content: "\e604"
}
*/

/*　修理について：ボタン
++++++++++++++++++++*/
body.repair .btn_box{
  overflow: hidden ;
  margin: 40px auto 20px auto ;}
body.repair .btn_box a{
  width: 48% ;
	display: block ;
  text-align: center ;
  float: left ;
  margin-bottom: 15px ;
	border: 2px solid #999 ;
	padding: 20px 10px ;
	-webkit-box-sizing: border-box ;
	box-sizing: border-box ;
	border-radius:10px ;
	background:#F1F0F0 ;
	font-weight: bold ;
	font-size: 2rem ;
  color: #000 ;
}
body.repair .btn_box a:nth-child(2n){
  float: right ;
}

/*　修理について：改訂20200911
++++++++++++++++++++*/
body.repair-price article div#main div.cont dl dt{
	width: 100px ;
	display: table-cell ;
    font-size: 1.4rem ;
}
body.repair-price article div#main div.cont dl dd{
	display: table-cell ;
	padding: 0 0 20px 20px ;
    font-size: 1.4rem ;
    line-height: 150%;
}

/*　活用ガイド
++++++++++++++++++++*/
body.repair-price .guide{}
/*body.repair-price .guide table.gr{}
body.repair-price .guide table.gr th:nth-child(1){ width: 100px ;}
body.repair-price .guide table.gr th:nth-child(2){ }
body.repair-price .guide table.gr th:nth-child(3){ width: 100px ;}
body.repair-price .guide table.gr th:nth-child(4){ width: 200px ;}
body.repair-price .guidei table.gr th:nth-child(5){ width: 200px ;}

body.repair-price article div#main .guide table.gr tr td{ text-align: left !important;}*/

body.repair-price  .guide h3{
	font-size: 1.5rem;
	font-weight:bold;
	margin-bottom:30px;
}
body.repair-price  .guide h3 small {
    font-size: .8em;
	font-weight:normal;
}
body.repair-price article div#main .guide .mgl80{
	margin-left:80px;
}
body.repair-price article div#main .guide figure img {
    display: block;
    height:400px;
	margin-right:30px;
}

body.repair-price article div#main .guide figure figcaption {
    margin-top: 8px;
	margin-bottom:30px;
    font-size: 1.2rem;
    line-height: 1.3
}

@media screen and (max-width: 480px) {
 body.repair-price article div#main .guide .mgl80{
  margin-left:0px;
 }
 body.repair-price article div#main .guide figure img {
  height:auto;
 }

/*　レンズのお手入れについて
++++++++++++++++++++*/
body.repair-info article div#main .guide ul li{
    list-style-position: outside ;
    list-style: disc;
    margin-bottom: 20px ;
}
    }


/*  support/guide/maintenance.html
-------------------------------------------*/
body.guide_maintenance article div#main div.cont h2.sub{
 font-weight: bold;
 font-size: 1.6rem;
 border-left: 4px solid #757575;
 padding-left: 8px;
 color: #000;}
body.guide_maintenance article div#main div.cont p{
 font-size: 1.4rem ;
 margin-bottom: 15px ;
line-height: 1.6 ;}
body.guide_maintenance article div#main div.cont .center{
 text-align: center ;}
body.guide_maintenance article div#main div.cont .center img{
 margin: 0 auto ;}

body.guide_maintenance article div#main div.cont ul.mdl-accordion {
  border-top: 1px solid #EAEAEA;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li {
  border-bottom: 1px solid #EAEAEA;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li li {
  border-bottom: 0 none;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
  cursor: pointer;
  position: relative;
  font-size:2.7rem ;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title:before, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title:after {
  display: block;
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -3px;
  width: 12px;
  height: 2px;
  background-color: #000;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title:before {
  -moz-transform: translateX(8px) rotate(-42deg);
  -ms-transform: translateX(8px) rotate(-42deg);
  -webkit-transform: translateX(8px) rotate(-42deg);
  transform: translateX(8px) rotate(-42deg);}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title:after {
  -moz-transform: translateX(0px) rotate(42deg);
  -ms-transform: translateX(0px) rotate(42deg);
  -webkit-transform: translateX(0px) rotate(42deg);
  transform: translateX(0px) rotate(42deg);}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body {
  display: none;
  width: 90% ;
  margin: 0 auto ;
  padding-top: 20px;
  padding-bottom: 20px;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body p {
  margin-bottom: 20px;}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li.mdl-accordion_open .mdl-accordion-title:before {
  -moz-transform: translateX(8px) rotate(42deg);
  -ms-transform: translateX(8px) rotate(42deg);
  -webkit-transform: translateX(8px) rotate(42deg);
  transform: translateX(8px) rotate(42deg);}
body.guide_maintenance article div#main div.cont ul.mdl-accordion li.mdl-accordion_open .mdl-accordion-title:after {
  -moz-transform: translateX(0px) rotate(-42deg);
  -ms-transform: translateX(0px) rotate(-42deg);
  -webkit-transform: translateX(0px) rotate(-42deg);
  transform: translateX(0px) rotate(-42deg);}
@media screen and (max-width: 480px) {
  body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title {
    padding-top: 15px;
    padding-bottom: 12px;
    padding-left: 10px;
    padding-right: 35px;
    line-height: 1.3;
    font-size: 1.9rem;}
  body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-title.fz27 .small-sp {
    display: block;
    font-size: 75%;}
  body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body {
    display: none;
    padding-top: 20px;
    padding-bottom: 20px;}
  body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body p {
    margin-bottom: 20px;}
  body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate70, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate75, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate80, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate85, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate90, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate95, body.guide_maintenance article div#main div.cont ul.mdl-accordion li .mdl-accordion-body .g-rate100 {
    width: 100%;}
}

body.guide_maintenance #main ul.mdl-accordion li ul li,
body.guide_maintenance #main ul.mdl-accordion li ol li{
 font-size: 1.4rem;
 line-height: 1.7;
 margin-bottom: 12px;}
body.guide_maintenance #main ul.mdl-accordion li ul {
 margin: 0 0 0 17px ;
 padding: 0 ;}
body.guide_maintenance #main ul.mdl-accordion li ul li{
	list-style-position: outside ;
	list-style: disc ;
	margin-bottom: 20px ;}
body.guide_maintenance #main .float_none {
 clear: both;}
body.guide_maintenance #main figure.fleft {
 float: left;
 margin: 0 15px 15px 0;}
body.guide_maintenance #main img {
 margin-bottom: 30px;}
body.guide_maintenance #main .img1{
 width: 522px ;}
body.guide_maintenance #main .video{
 width: 522px ;
 margin-bottom:0;}
body.guide_maintenance #main .img1 img,
body.guide_maintenance #main .video img{
 width: 100% ;}
body.guide_maintenance #main .video .col a figure:before{
 top: 43% ;}
body.guide_maintenance article div#main div.cont table.gr {
 width: 100%;
 border-left: 1px solid #999;
 border-top: 1px solid #999 ;
 margin: 0 auto 25px auto ;}
body.guide_maintenance article div#main div.cont table.gr caption {
 position: relative;
 margin-bottom: 10px}
body.guide_maintenance article div#main div.cont table.gr tr th,
body.guide_maintenance article div#main div.cont table.gr tr td {
 border-right: 1px solid #999;
 border-bottom: 1px solid #999;
 padding: 10px ;}
body.guide_maintenance article div#main div.cont table.gr tr th {
 text-align: center;
 background-color: #f1f1f1;
 font-weight: bold;
 font-size: 1.4rem}
body.guide_maintenance article div#main div.cont table.gr tr td {
 font-size: 1.4rem;
 line-height: 1.6}

@media screen and (max-width: 480px) {
 body.guide_maintenance #main img {
  width: 100%;}
 body.guide_maintenance #main .img1,
 body.guide_maintenance #main .video{
  width: 100% ;}
 body.guide_maintenance article div#main div.cont table.gr ,
 body.guide_maintenance article div#main div.cont table.gr tr,
 body.guide_maintenance article div#main div.cont table.gr th,
 body.guide_maintenance article div#main div.cont table.gr td{
  display: block ;
  width: 100% ;}
}
