@charset "UTF-8";
@font-face {
    font-family: 'DIN Regular';
    src: url('/commonrw/fonts/DINWebPro.eot');
    src: url('/commonrw/fonts/DINWebPro.eot?#iefix') format('embedded-opentype'),
        url('/commonrw/fonts/DINWebPro.woff') format('woff'),
        url('/commonrw/fonts/DINCompPro.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    unicode-range: U+0000-017F,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303,U+0309,U+030F,U+0323,U+0384-03CE,U+0400-0513,U+1EA0-1EF9,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2039-203A,U+20AB-20AC;
}
@font-face {
    font-family: 'DIN Light';
    src: url('/commonrw/fonts/DINWebPro-Light.eot');
    src: url('/commonrw/fonts/DINWebPro-Light.eot?#iefix') format('embedded-opentype'),
        url('/commonrw/fonts/DINWebPro-Light.woff') format('woff'),
        url('/commonrw/fonts/DINCompPro-Light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    unicode-range: U+0000-017F,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303,U+0309,U+030F,U+0323,U+0384-03CE,U+0400-0513,U+1EA0-1EF9,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2039-203A,U+20AB-20AC;
}
@font-face {
    font-family: 'DIN Medium';
    src: url('/commonrw/fonts/DINCompPro-Medium.eot');
    src: url('/commonrw/fonts/DINCompPro-Medium.eot?#iefix') format('embedded-opentype'),
        url('/commonrw/fonts/DINWebPro-Medium.woff') format('woff'),
        url('/commonrw/fonts/DINCompPro-Medium.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    unicode-range: U+0000-017F,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303,U+0309,U+030F,U+0323,U+0384-03CE,U+0400-0513,U+1EA0-1EF9,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2039-203A,U+20AB-20AC;
}

/* === Reset === */
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-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
ul, ol {
    list-style:none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
/* clearfix  ------------------------------------------------ */
.clearfix:after {
    content: " ";
    display: block;
    height: 0;
    clear: both;
}

.clearfix {display: inline-table;}

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix {display: block;}
/* End hide from IE-mac */

/* clearfix */
.cf {
  zoom: 1;
}

.cf:before, .cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}
/******************** base html ********************/

html {
    font-size:16px;
    overflow-x: hidden;
}
body {
    line-height: 1;
    color:#4D4D4D;
    font-family:"DIN Light", Arial, Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
img {
    max-width:100%;
    width:auto;
    height:auto;
}
sup {
    position: relative;
    top: -0.7em;
    font-size: 65%;
    letter-spacing: normal;
    font-weight: normal;
}
a,
a:link {
    color:#666;
    text-decoration:none;
}
a:visited {
    color:#666;
    text-decoration:none;
}
a:hover,
a:active {
    color:#b7b7b7;
    text-decoration:none;
}
a:focus {
    outline:none;
    text-decoration:none;
}


a img:hover {
    filter: alpha(opacity=75);
    -moz-opacity:0.75;
    opacity:0.75;
}
#p3 .layoutframe .badge {
	margin-top: 0.2em;
}
#p3 .layoutframe .badge img {
	width: 31%;
	max-width: 320px;
}
.exceptionWrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
}
.exceptionWrap footer #page-footer {
    z-index: auto;
}
.exceptionWrap footer #page-footer .container {
    margin-bottom: 0 !important;
}
.exceptionWrap #page-header.hide .globalnav > a::after,
.exceptionWrap #page-header.hide:after {
    display: none;
}
.exceptionWrap .contens {
    max-width: 925px;
    margin: 0 auto;
    padding: 0 25px 0 26px;
}
.inContents {
    margin: 65px auto 56px;
    max-width: 976px;
    width: 100%;
}

@media screen and (max-width:960px) and (min-width:841px){
    html {
        font-size:14px;
    }
}
@media screen and (max-width:840px) and (min-width:641px){
    html {
        font-size:12px;
    }
	#p3 .layoutframe .badge img {
	width: 33.3%;
    max-width: none;
}
}
@media screen and (min-width:641px){
    .mobile-only {
        display:none;
    }
}

.sp-only {
    display: none;
}

.pc-only {
    display: block;
}
@media screen and (max-width:640px){
    html {
        font-size:12px;
    }
    .inContents {
    margin-bottom: 50px;
    }
    .exceptionWrap .contens {
        padding: 0 10px;
    }
}

/******************** btn style ********************/

.btn-style1 {
    display:inline-block;
}
.btn-style1 a {
    display:inline-block;
    background-color:#4D4D4D;
    color:#FFF;
    font-size:0;
    margin:0 17px;
}
.btn-style1 a:before,
.btn-style1 a:after {
    content:"";
    display:inline-block;
    vertical-align:middle;
    height:24px;
    width:17px;
    background-image:url(/content/introduction/images/img-btn-bg.svg);
    background-repeat:no-repeat;
}
.btn-style1 a:before {
    margin-left:-17px;
    background-position:0 0;
}
.btn-style1 a:after {
    margin-right:-17px;
    background-position:100% 0;
}
.btn-style1 a span {
    display:inline-block;
    padding:0.125rem 15px 0;
    vertical-align:middle;
    color:#FFF;
    font-size:1rem;
}

.btn-style2 {
    display:inline-block;
    background:url(../images/btn-style2-cap-r.png) no-repeat 100% 0;
    padding-right:22px;
    margin-left:22px;
    font-size:0;
}
.btn-style2:before {
    content:"";
    display:inline-block;
    vertical-align:middle;
    height:30px;
    width:22px;
    margin-left:-22px;
    background:url(../images/btn-style2-cap-l.png) no-repeat;
}
.btn-style2 a {
    display:inline-block;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    height:22px;
    padding-right:8px;
    padding-left:8px;
    min-width:97px;
    background-color:#FAED00;
    vertical-align:middle;
    text-align:center;
    color:#4d4d4d!important;
}
.btn-style2 a:before {
    content:"";
    display:inline-block;
    vertical-align:middle;
    height:22px;
}
.btn-style2 a span {
    display:inline-block;
    vertical-align:middle;
    font-size:13px;
}
.btn-style2 {
    display:inline-block;
    background:url(../images/btn-style2-cap-r.png) no-repeat 100% 0;
    padding-right:22px;
    margin-left:22px;
    font-size:0;
}
.btn-style2:before {
    content:"";
    display:inline-block;
    vertical-align:middle;
    height:30px;
    width:22px;
    margin-left:-22px;
    background:url(../images/btn-style2-cap-l.png) no-repeat;
}
.btn-style2 a {
    display:inline-block;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    height:22px;
    padding-right:8px;
    padding-left:8px;
    min-width:97px;
    background-color:#FAED00;
    vertical-align:middle;
    text-align:center;
    color:#4d4d4d!important;
}
.btn-style2 a:before {
    content:"";
    display:inline-block;
    vertical-align:middle;
    height:22px;
}
.btn-style2 a span {
    display:inline-block;
    vertical-align:middle;
    font-size:13px;
}

.btn-style2.pc2line {
    background:url(../images/btn-style2-2-cap-r.png) no-repeat 100% 0;
    padding-right:31px;
    margin-left:31px;
}
.btn-style2.pc2line:before {
    height:43px;
    width:31px;
    margin-left:-31px;
    background:url(../images/btn-style2-2-cap-l.png) no-repeat;
}
.btn-style2.pc2line a {
    height:35px;
}
.btn-style2.pc2line a:before {
    height:35px;
}
@media only screen and (max-width:640px) and (max-device-width:1280px) {

    .btn-style2 {
        background-image:url(../images/btn-style2-cap2-r-m.png)!important;
        -webkit-background-size:auto 26px!important;
        background-size:auto 26px!important;
        -webkit-box-sizing:border-box!important;
        box-sizing:border-box!important;
        height:26px!important;
        padding-right:21px!important;
        margin-left:21px!important;
    }
    .btn-style2:before {
        height:26px!important;
        width:21px!important;
        margin-left:-21px!important;
        background-image:url(../images/btn-style2-cap2-l-m.png)!important;
        -webkit-background-size:21px 26px!important;
        background-size:21px 26px!important;
    }
    .btn-style2 a {
        height:20px!important;
        min-width:87px!important;
    }
    .btn-style2 a:before {
        height:20px!important;
    }
    .btn-style2 a span {
        font-size:13px!important;
    }

    .btn-style2.mobile-2line {
        background-image:url(../images/btn-style2-2-cap2-r-m.png)!important;
        -webkit-background-size:auto 44px!important;
        background-size:auto 44px!important;
        -webkit-box-sizing:border-box!important;
        box-sizing:border-box!important;
        height:44px!important;
        padding-right:33px!important;
        margin-left:33px!important;
    }
    .btn-style2.mobile-2line:before {
        height:44px!important;
        width:33px!important;
        margin-left:-33px!important;
        background-image:url(../images/btn-style2-2-cap2-l-m.png)!important;
        -webkit-background-size:33px 44px!important;
        background-size:33px 44px!important;
    }
    .btn-style2.mobile-2line a {
        height:38px!important;
        min-width:87px!important;
    }
    .btn-style2.mobile-2line a:before {
        height:38px!important;
    }

    .btn-style3 {
        background-image:url(../images/btn-style2-cap2-r-m.png);
        -webkit-background-size:auto 26px;
        background-size:auto 26px;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        height:26px;
        padding-right:21px;
    }
    .btn-style3:before {
        height:26px;
    }
    .btn-style3 a,
    .btn-style3 > span.search-btn {
        height:20px;
        min-width:87px;
    }
    .btn-style3 > span.search-btn {
        padding-left:15px;
        padding-right:15px;
        min-width:0;
    }
    .btn-style3 a:before,
    .btn-style3 > span.search-btn:before {
        height:20px;
    }
    .btn-style3 a span {
        font-size:13px;
    }

}


/******************** notescookie ********************/

.notes-cookeis {
    background-color:#666;
    color:#fff;
}
.notes-cookeis .container {
    max-width:972px;
    margin:0 auto;
    padding:8px;
}
.notes-cookeis p {
    font-size:13px;
    line-height:1.4;
}
.notes-cookeis .btn-area {
    display:inline-block;
    margin-top:5px;
}
.notes-cookeis .btn-area a {
    display:inline-block;
    color:#4d4d4d;
    text-decoration:none;
}
.notes-cookeis .btn-area a.apply {
    background-color:#aaa;
    border-radius:3px;
    padding:3px 8px 0;
    font-size:13px;
    margin-right:10px;
}
.notes-cookeis .btn-area a.seemore {
    font-size:15px;
    color:#fff;
    text-decoration:none;
}

@media print {
    .notes-cookeis {
        display:none;
    }
}
@media screen and (max-width:600px) {

    /******************** notescookie ********************/

    .notes-cookeis {
    }
    .notes-cookeis .container {
    }
    .notes-cookeis p {
        font-size:11px;
        line-height:1.2;
    }
    .notes-cookeis .btn-area {
        margin-top:3px;
    }
    .notes-cookeis .btn-area a {
    }
    .notes-cookeis .btn-area a.apply {
        border-radius:3px;
        padding:3px 8px 0;
        font-size:11px;
        margin-right:10px;
    }
    .notes-cookeis .btn-area a.seemore {
        font-size:13px;
    }
}

/******************** header ********************/

header {
    background-color:#fff;
}
header > div {
    padding:16px 22px;
}
header img {
    vertical-align:middle;
}
@media screen and (max-width:1024px) and (min-width:769px) {
    header img {
        width:200px;
    }
}
@media screen and (max-width:768px) and (min-width:601px) {
    header img {
        width:180px;
    }
}
@media screen and (max-width:600px) {
    header > div {
        padding:1rem;
    }
    header img {
        width:160px;
    }
}

/******************** page ********************/

#page {
    position: relative;
    background-color: #fff;
    width: 100%;
    z-index:2;
}
body:not(.footer-nofix) #page:after {
    content:"";
    position:absolute;
    width:100%;
    height:15px;
    bottom:-15px;
    -webkit-background-size:100% 13px;
    background-size:100% 13px;
    z-index:3;
}
#page > .wrapper > section {
    position: relative;
}
#page > .wrapper > section a {
    color:#1D2087;
    text-decoration:underline;
}
#page > .wrapper > section a:hover {
    text-decoration:none;
}
@media only screen and (min-width:1212px){
    #page:after {
        background-size:contain;
    }
}

/******************** product-detail ********************/

#product-detail {
    padding-bottom:9.0625rem;
}
#product-detail .product-img-name {
    text-align:center;
    padding-top:5.625rem;
    margin-bottom:6.25rem;
}
#product-detail .product-img-name.short-margin {
    margin-bottom:3.25rem;
}
#product-detail .product-spec > dl:not(:first-child) {
    margin-top:2rem;
}
#product-detail .product-spec > dl > dt,
#product-detail .product-spec > dl > dd {
    font-size:1rem;
    line-height:1.75;
}
#product-detail .product-spec > dl > dt {
    font-family:"DIN Medium", Arial, Helvetica, sans-serif;
}
#product-detail .product-spec > dl > dd {
    font-family:"DIN Regular", Arial, Helvetica, sans-serif;
}
#product-detail .product-spec > dl > dd.indent {
    margin-left:1em;
    text-indent:-1em;
}
#product-detail .product-spec > dl > dd span.ib {
    display:inline-block;
}
#product-detail .product-spec .table-layout {
    display:table;
}
#product-detail .product-spec .table-layout > dl {
    display:table-row;
}
#product-detail .product-spec .table-layout > dl > dt,
#product-detail .product-spec .table-layout > dl  > dd {
    display:table-cell;
    vertical-align:top;
}
#product-detail .product-spec .table-layout > dl > dt {
    white-space:nowrap;
    text-align:right;
}
@media screen and (max-width:600px){
    #product-detail {
        padding-bottom:5rem;
    }
    #product-detail .product-img-name {
        margin-bottom:3.25rem;
    }

}
/******************** galleries ********************/

.product-gallery:after {
    content:"";
    display:table;
    height:0;
    clear:both;
}
.product-gallery > div {
    float:left;
    width:33.3333333%;
    overflow:hidden;
}
.product-gallery > div img {
    width:100%;
    display:block;
}
.csstransitions .product-gallery > div img {
    -webkit-transition:all 1s;
    transition:all 1s;
}
.product-gallery > div > a:hover > img {
    -ms-transform:scale(1.1,1.1);
    -webkit-transform:scale(1.1,1.1);
    transform:scale(1.1,1.1);
}
#product-galleries-wrapper {
    display:none;
    position:fixed;
    width:100%;
    height:100vh;
    top:0;
    left:0;
    z-index:10;
}
#product-galleries {
    position:relative;
    width:100%;
    height:100%;
}
#product-galleries .img-area {
    position:relative;
    width:100%;
    height:100%;
    background-color:rgba(255,255,255,0.85);
}
#product-galleries .img-area:before {
    content:"";
    display:inline-block;
    height:100%;
    vertical-align:middle;
}
#product-galleries img {
    width:100%;
    height:auto;
    position:absolute;
    max-width:none;
    vertical-align:middle;
}

/******************** footer ********************/

#contents-c70 .contens .notes {
    margin: 30px 0 0;
    padding-left: 1.7%;
}

#contents-c70 .notes ul li:before {
    content: '● ';
}

#contents-c70 .notes ul li.db-circle:before {
    content: '◎ ';
}

#contents-c70 .notes ul li.asta:before {
    content: '※ ';
}

#contents-c70 .notes ul li {
    text-indent: -1.7%;
}


.software strong {
    font-weight: bold;
}
.software {
    margin: 15px 0;
}
.software strong {
    font-size: 16px;
    margin-left: -1.7%;
    display: inline-block;
}
.software ul {
    margin: 5px 0;
}
.software p,
.software a {
    margin-left: -1.7%;
}

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




footer {
    position:fixed;
    width:100%;
    bottom:0;
}
footer .pageTop {
    max-width: 925px;
    margin: 0 auto;
    text-align: right;
}
footer .pageTop p {
    margin-bottom: 24px;
    line-height: 1 !important;
}
@media only screen and (min-width: 641px) and (max-width: 1023px) {
    .tablet-mobile footer .pageTop img {
        display: none;
    }
    .tablet-mobile footer .pageTop a {
        display: block;
        height: 16px;
        background: url(/commonrw/images/img_pagetop_pc.png) no-repeat;
        background-size: contain;
    }
    .tablet-mobile footer .pageTop {
        margin-right: 25px;
    }
}
body.footer-nofix footer {
    position:relative;
}
footer .footer-in {
    padding: 0 0 33px;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    max-width: 925px;
    margin: 0 auto;
}
footer .footer-in > div {
    max-width:1070px;
    margin-left:auto;
    margin-right:auto;
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    text-align: center;
    clear: left;
}
footer .newletter,
footer .prereg {
    text-align:center;
    margin-bottom:3.5rem;
}
footer .newletter.short-margin {
    margin-bottom:1.5rem;
}
footer .newletter  h2,
footer .prereg  h2 {
    font-size:1.75rem;
    line-height:1.5;
    margin-bottom:3.5rem;
}
footer .newletter  p,
footer .prereg  p {
    font-size:1.1875rem;
    line-height:1.75;
}
footer .newletter .btn-area,
footer .prereg  .btn-area {
    margin-top:1rem;
}
footer .support {
    text-align:center;
    margin-bottom:3.5rem;
}
footer .support section:not(:last-child) {
    margin-bottom:2rem;
}
footer .support  h2 {
    font-size:1.75rem;
    line-height:1.5;
    margin-bottom:1.5rem;
}
footer .support sup {
    font-size:40%;
    vertical-align:top;
}
footer .support  p {
    font-size:1.1875rem;
    line-height:1.75;
}
footer .support  .btn-area {
    margin-top:1rem;
}
/* link banner area */
.bnrListFullWidth{
    max-width: 925px;
    width: 100%;
    margin: 0 auto;
}
.bnrListFullWidth li{
    margin-bottom: 20px;
}
.bnrList {
    max-width: 925px;
	width: 100%;
    margin: 0 auto 37px;
}
.bnrList li {
    width: 48.5%;
    float: left;
}
.bnrList li + li {
    margin-left: 3%;
}
.bnrList li:nth-child(2n+1) {
    margin-left: 0;
}
.bnrList li:last-child {
	    margin-bottom: 5%;
}
@media only screen (min-width: 641px) and (max-width: 800px) {
    .tablet-mobile .pageTop {
        text-align: right !important;
        max-width: 35px !important;
    }
}
@media only screen and (max-width: 640px) {
    .bnrList li + li {
        margin-top: 0;
    }
}
.bnrList li img {
    width: 100%;
    height: auto;
}
.bnrListFullWidth li img {
    width: 100%;
    height: auto;
}
footer .footer-nav-copyright {
    font-family: sans-serif;
}
footer .footer-nav-copyright:after {
    content:"";
    display:table;
    height:0;
    clear:both;
}
footer .footer-nav-copyright  a {
    text-decoration:none;
    color:#4D4D4D;
}
footer .footer-nav-copyright nav {
}
footer .footer-nav-copyright nav ul:after {
    content:"";
    display:table;
    height:0;
    clear:both;
}
footer .footer-nav-copyright nav ul {
    vertical-align:middle;
}
footer .footer-nav-copyright nav li {
    display: inline-block;
    font-size: 12px;
    padding: 0 20px;
}
/* SNS */
footer .sns{
    width: 100%;
    padding-left: 8px;
    margin-bottom: 10px;
    margin-top: 24px;
}
footer .sns * {
    vertical-align: bottom;
}
footer .sns ul li{
    float:left;
    width: 80px;
}

footer .sns ul li.tw{
    width:90px;
}
footer ul li#sns_btn{
    overflow: hidden;
}

footer .sns ul li.fb{
    width:100px;
    z-index:20000;
}
.mL0 {
    margin-left: 0 !important;
}

@media screen and (min-width:1200px){
    footer .footer-nav-copyright:not(.long) nav {
    }
    footer .footer-nav-copyright:not(.long) .copyright {
    }
    footer .footer-nav-copyright.long {
        text-align:center;
    }
    footer .footer-nav-copyright.long nav {
        display:inline-block;
    }
    footer .footer-nav-copyright.long nav li {
        float:none;
        display:inline-block;
        margin:0 0.75em 1em 0.75em;
    }
    footer .footer-nav-copyright.long .copyright {
        margin-top:1.5em;
    }
}
@media screen and (max-width:1199px){
    footer .footer-nav-copyright {
        text-align:center;
    }
    footer .footer-nav-copyright nav li {
        font-size: 11px;
        padding: 2px 0;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        width: 48%;
        border-left: 1px solid #808080;
        display: inline-block;
    }
    footer .footer-nav-copyright li:nth-child(2n), footer .footer-nav-copyright li:nth-child(4n) {
        border-right: 1px solid #808080;
    }
    footer .footer-nav-copyright li:nth-child(2) ~ li {
        margin-top: 22px;
    }
    .bnrList {
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }
}
@media screen and (max-width:600px){
	#p3 .layoutframe .badge img {
    width: 63%;
}
    footer {
        max-width:100vw;
    }
    footer .footer-in {
        padding-top:3rem;
        padding-bottom: 4rem;
    }
    footer .newletter  h2,
    footer .prereg  h2 {
        margin-bottom:1.5rem;
    }
    footer .social li img {
        height:20px;
        width:20px;
    }
    footer .footer-nav-copyright {
        margin:0;
        padding: 0 10px;
    }
    footer .footer-nav-copyright nav li {
        margin: 0;
    }
    .bnrList {
        width: 100%;
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
    }
    .bnrList li {
        width: 100%;
        float: none;
    }
    .bnrList li + li {
        margin-left: 0;
        margin-top: 2%;
    }
    .bnrListFullWidth li {
        margin-bottom: 2%;
    }
	footer .sns,
    footer .pageTop {
        width: 100%;
        padding-left: 0;
    } 
    footer .pageTop p {
        width: 56px;
        float: right;
        margin-right: 10px;
    }
    .pc-only {
        display:none;
    }
    .sp-only{
        display:block;
    }
}
 /******************** page footer only for c50 top page ********************/

footer #page-footer {
    padding: 46px 0 10px;
    position:relative;
    text-align:center;
	font-size: 12px;
    font-weight: normal;
    font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    clear: both;
}
footer #page-footer a {
    text-decoration:none;
    color:#4d4d4d;
}
footer #page-footer a:visited {
    color:#666;
    text-decoration:none;
}
footer #page-footer a:hover,
footer #page-footer a:active {
    color:#b7b7b7;
    text-decoration:none;
}

footer #page-footer a img:hover {
    filter: alpha(opacity=75);
    -moz-opacity:0.75;
    opacity:0.75;
}
footer #page-footer .footer-nav{

}
footer #page-footer .footer-nav ul {
    font-size:0;
}
footer #page-footer .footer-nav ul li {
    display:inline-block;
    font-size:12px;
    padding:0 20px;
}

footer #page-footer .footer-nav ul li a{
    text-decoration:none;
}
footer #page-footer .footer-sub-nav ul {
    padding-top:15px;
    vertical-align:central;
}
footer #page-footer .footer-sub-nav ul li {
    font-size:13px;
    margin-top:35px;
}
footer #page-footer .footer-sub-nav ul li .social a {
    display:inline-block;
    padding:0 10px;
}
footer #page-footer .footer-sub-nav ul li .social img {
    height:19px;
}
footer #page-footer .copyright {
    font-size:13px;
    margin-top:25px;
    line-height: 2;
}
@media only screen and (max-width:976px) {

    /******************** page footer ********************/
    footer #page-footer:before {
        -webkit-background-size:100% 13px;
        background-size:100% 13px;
    }

}
@media only screen and (max-width:850px) {

    /******************** page footer ********************/

    footer #page-footer .footer-nav ul {
        padding:0 20px;
    }
    footer #page-footer .footer-nav ul li {
        padding:0;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        width:25%;
    }
}
@media only screen and (max-width:640px) and (max-device-width:1280px) {
 /******************** page footer ********************/

    footer #page-footer {
        padding: 0;
        position:relative;
        text-align:center;
    }
    footer #page-footer:before {
        height:7px;
        background-position:50% 0;
        -webkit-background-size:120% 7px;
        background-size:120% 7px;
    }
    footer #page-footer > .container {
        padding:0 10px;
    }
    footer #page-footer .footer-nav ul {
        padding:0;
    }
    footer #page-footer .footer-nav ul li {
        font-size:11px;
        padding:2px 0;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        width:48%;
        border-left:1px solid #808080;
    }
    footer #page-footer .footer-nav ul li:nth-child(2n),
    footer #page-footer .footer-nav ul li:nth-child(4n)  {
        border-right:1px solid #808080;
    }
    footer #page-footer .footer-nav ul li:nth-child(2) ~ li {
        margin-top:22px;
    }
    footer #page-footer .footer-sub-nav {
        display:none;
    }
    .fb_iframe_widget_lift {
    right:-234%;
    }
}
/*20180208追加*/

@media all and (max-width: 1366px) and (min-width: 1024px){
}

.category_banner .vgp_c50 {
    padding-left: 30px;
    margin: 50px 0 20px;
    box-sizing: border-box;
    width: 33%;
}

@media only screen and (min-width: 641px) and (max-width: 1023px) {
    .category_banner .vgp_c50 {
        margin-top: 30px;
    }
}

@media only screen and (max-width: 640px) {
    .category_banner .vgp_c50 {
        width: 100%;
        margin-top: 30px;
        margin-bottom: 0;
    }
    .category_banner .vgp_c50:last-of-type{
        margin-bottom: 30px;
    }
}

/* 20200617added */
.category_banner .vgpmark {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}








/* c70mk2 2020.08 */
/* 全体 共通*/
.inner-wrap {
    margin: 0 auto;
}

.more a {
    display: block;
    color: #dadada;
    position: relative;
    text-align: center;
    background-color: #3c3c3c;
}

.more a:after {
    content: '';
    border: 0px;
    border-top: solid 1px #C0C0C0;
    border-right: solid 1px #C0C0C0;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 8%;
}

.more a:hover {
    background-color: #999;
}

.section-2 {
    text-align: center;
    color: #fff;
    background-size: cover;
    background-position: center center;
}

.section-text-wrap {
    text-align: left;
}
.section-text-wrap h3 {
    letter-spacing: .1em;
}
.section-text-wrap h3 sup {
    font-size: 55%;
}
.section-text p {
    line-height: 2.2;
}


.heading {
    position: relative;
}
.heading span {
    position: absolute;
}



/* 全体 sp */
@media screen and (max-width: 767px) {
    .inner-wrap {
        width: 81.3%;
    }

    .pc_only {
        display: none;
    }

    .heading img {
        width: 154px;
    }
.heading span {
    top: 50%;
    left: 50%;
    font-family: DIN Regular, san-serif;
    font-size: 10vw;
    line-height: 0.9;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    .section-text-wrap {
        width: 100%;
    }

    .section-text-wrap h3 {
        font-size: 4.69vw;
        margin-bottom: 9.2%;
    }

    .section-text {
        display: block;
    }

    .section-text p {
        font-size: 4.38vw;
        padding-right: 0;
        margin-bottom: 12.5%;
    }

    .more a {
        font-size: 4.38vw;
        width: 70.2%;
        height: 21.9%;
        line-height: 2.5;
        margin: 0 auto;
    }

    .more a:after {
        width: 0.5em;
        height: 0.5em;
        top: calc(50% - 7px);
    }

    .section-2 {
        padding: 12.7% 0 14.1%;
    }
}

/* 全体 pc */
@media screen and (min-width: 768px) {
    .inner-wrap {
        width: 90%;
        max-width: 1200px;
    }

    .sp_only {
        display: none;
    }

    .heading img {
        width: 180px;
    }
    .heading span {
        top: 50%;
        left: 50%;
        font-family: DIN Regular, san-serif;
        font-size: 50px;
        line-height: 0.9;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }

    .section-text-wrap {
        width: 72.6%;
        margin: 0 auto;
    }

    .section-text-wrap h3 {
        font-size: 22px;
        margin-bottom: 24px;
    }

    .section-text {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .section-text p {
        font-size: 15px;
        padding-right: 5%;
    }

    .more a {
        line-height: 46px;
        font-size: 15px;
        width: 210px;
        height: 46px;
    }

    .more a:after {
        width: 7px;
        height: 7px;
        top: calc(50% - 5px);
    }

    .section-2 {
        padding: 80px 0 96px;
    }
}

/* kv 共通 */

.brand-content {
    display: flex;
    width: 100%;
    	-webkit-align-items: flex-end;
    	-ms-flex-align: end;
    	align-items: flex-end;
}
.brand-lead {
    font-size: 26px;
    padding-bottom: 5px;
}

.brand-lead {
    font-size: 22px;
    margin-bottom: 0;
}

.brand-name {
    margin-right: 10.5%;
}
  .kv-products {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url(../images/kv-products_pc.png) 50% 50% / cover no-repeat;
  }
.kv-line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.kv .section-content {
    color: #666;
}


.kv-line img {
    max-height: 100%;
}

/* kv sp */
@media screen and (max-width: 767px) {
    .kv-line {
        display: none;
    }

    .brand-content {
        display: block;
        position: absolute;
        bottom: 5%;
    }

    .lead-small {
        font-size: 3vw!important;
        margin: 1% 0 8%;
    }

    .brand-name .brand-logo {
        width: 60.8%;
    }

    .brand-info dt, .brand-info span {
        font-size: 4.06vw;
    }
    
    .brand-info dd {
        font-size: 4.06vw;
    }
}

/* kv pc */
@media screen and (min-width: 768px) {
    .kv-line {
        display: block;
    }

    .lead-small {
        font-size: 14px;
        margin: 4% 0 8%;
    }

    .brand-name .brand-logo {
        width: 180px;
    }

    .brand-info dt, .brand-info span {
        font-size: 12px;
    }
    
    .brand-info dd {
        font-size: 14px;
    }
}



@media screen and (max-width: 1199px) {
    #contents-c70 .section-hero .content .lead {
        font-size: 2.7vw;
    }

    .lead-small, .number dt {
        font-size: 1.2vw;
    }
}

@media screen and (min-width: 1200px) {
    #contents-c70 .section-hero .content .lead {
        font-size: 36px;
        line-height: 1.4;
    }

    .lead-small, .number dt {
        font-size: 14px;
    }
}


/* 追加*/
@media screen and (max-width: 1199px) {

    #contents-c70 .section-hero .content .lead {
        font-size: 2.7vw;
        font-size: 2.1vw;
        line-height: 1.4;
    }

    .brand-lead {
        font-size: 18px;
        line-height: 1.4;
    }

    .lead-small,
    .number dt {
        font-size: 1.2vw;
    }
}

@media screen and (min-width: 1200px) {
    #contents-c70 .section-hero .content .lead {
        font-size: 34px;
        line-height: 1.4;
    }

    .lead-small,
    .number {
        margin-top: .8em;
    }

    .lead-small,
    .number dt {
        font-size: 16px;
    }
}




/* about 共通 */

.section-about {
    background-color: #f0f0f0;
    padding: 60px 0;
}

.section-about p {
    font-size: 14px;
    line-height: 2.5;
}

.section-about .bnrArea {
    margin-right: auto;
    margin-left: auto;
}


/* about sp */
@media screen and (max-width: 767px) {
    .section-about p {
        margin: 0;
        font-size: 4.38vw;
    }
    .section-about .bnrArea {
        max-width: 925px;
        margin-top: 60px;
    }
}

/* about pc */
@media screen and (min-width: 768px) {
    .section-about p {
        margin: 0 13.7%;
    }
    .section-about .bnrArea {
        max-width: 925px;
        margin-top: 60px;
    }
}

/* campaign 共通 */

.section-campaign {
    background-color: #d8d8d8;
    position: relative;
}

.campaign-content {
    display: flex;
    	-webkit-justify-content: space-between;
    	-ms-flex-pack: justify;
    	justify-content: space-between;
}

.campaign-arrow-prev {
    content: '';
    width: 24px;
    height: 24px;
    border: 0px;
    border-bottom: solid 1px #4d4d4d;
    border-left: solid 1px #4d4d4d;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 2%;
}

.campaign-arrow-next {
    content: '';
    width: 24px;
    height: 24px;
    border: 0px;
    border-top: solid 1px #4d4d4d;
    border-right: solid 1px #4d4d4d;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 2%;
}

.campaign-text {
    padding-top: .5em;
}

.section-campaign h2 {
    color: #8d8d8d;
    font-weight: bold;
    font-family: 'DIN Regular';
}

.campaign-text p {
    margin: 7% 0 15%;
    line-height: 1.68;
}

#gallerySlider li {
    float: left;
}
.caroufredsel_wrapper>div {}

/* campaign sp */
@media screen and (max-width: 767px) {
    .section-campaign {
        padding: 17.7% 0 14.1%;
    }

    .campaign-content {
        display: block;
    }

    .caroufredsel_wrapper > div {
        height: auto!important;
        padding-top: 155.5%;
    }

    .section-campaign h2 {
        font-size: 7.5vw;
        margin-bottom: 20%;
        text-align: center;
    }

    .campaign-img {
        width: 85.8%;
        margin: 0 auto;
    }

    .campaign-img img {
        width: 100%;
    }

    .campaign-text {
        width: 100%;
    }

    .campaign-text p {
        font-size: 4.69vw;
    }
}

/* campaign pc */
@media screen and (min-width: 768px) {
    .section-campaign {
        padding: 112px 0 90px;
    }

    .campaign-content {
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .campaign-img {
        width: 57.3%;
        text-align: right;
    }
    
    .campaign-img img {
        width: 90%;
        max-width: 610px;
    }

    .campaign-text {
        width: 32.6%;
    }
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
    .campaign-text h2 {
        font-size: 2.7vw;
    }

    .campaign-text p {
        font-size: 1.65vw;
    }
}

@media screen and (min-width: 1200px) {
    .campaign-text h2 {
        font-size: 32px;
    }
    
    .campaign-text p {
        font-size: 20px;
    }
}

/* design 共通 */

.section-design {
    background-image: url(../images/design-bg);
}

/* design sp */
@media screen and (max-width: 767px) {
    .design-img {
        width: 100%;
        margin: 13.1% 0;
    }
    
}

/* design pc */
@media screen and (min-width: 768px) {
    .design-img {
        width: 72.6%;
        margin: 72px auto 62px;
    }    
}

/* sound 共通 */
.section-sound {
    position: relative;
}
.section-sound .inner-wrap {
    position: relative;
    z-index: 99;
}
.section-sound .sound-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.section-sound .sound-bg .bx-wrapper {
    width: 100%;
    height: 100%;
}
.section-sound .sound-bg .bx-viewport,
.section-sound .sound-bg ul,
.section-sound .sound-bg ul li {
    width: 100%;
    height: 100%;
}

.section-sound .sound-bg ul li {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100% !important;
}

.sound-img {
    width: 80.3%;
    margin: 182px auto 108px;
    background-size: cover;
    background-position: center;
}

.sound-img {
    background-size: cover;
    background-position: center;
}
    .sound-img {
        width: 100%;
        margin: 32.3% auto 11%;
    }

    .sound-img {
        position: relative;
    }

    .sound-img object {
        position: relative;
        z-index: 2;
    }

    .sound-img img {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        display: none;
    }
.section-sound .sound-bg ul li:nth-child(n+2) {
    opacity: 0;
}
.section-sound .sound-bg .bx-wrapper ul li:nth-child(n+2) {
    opacity: 1;
}


/* sound sp */
@media screen and (max-width: 767px) {
    .section-sound {
        background-image: url(../images/sound-bg-base_spn.jpg);
    }


    .section-sound .sound-bg ul li:nth-child(1) {
        background-image: url(../images/sound-bg_spn-01.png);
    }

    .section-sound .sound-bg ul li:nth-child(2) {
        background-image: url(../images/sound-bg_spn-02.png);
    }

    .section-sound .sound-bg ul li:nth-child(3) {
        background-image: url(../images/sound-bg_spn-03.png);
    }
}

/* sound pc */
@media screen and (min-width: 768px) {
    .section-sound {
        background-image: url(../images/sound-bg-base_pc.jpg);
    }

    .sound-img {
        width: 80.3%;
        margin: 182px auto 108px;
    }
    .section-sound .sound-bg ul li:nth-child(1) {
        background-image: url(../images/sound-bg_pc-01.png);
    }
    .section-sound .sound-bg ul li:nth-child(2) {
        background-image: url(../images/sound-bg_pc-02.png);
    }
    .section-sound .sound-bg ul li:nth-child(3) {
        background-image: url(../images/sound-bg_pc-03.png);
    }

}

/* sourse */
.section-source .inner-wrap {
    max-width: 1352px;
    position: relative;
}

.section-source .section-text-wrap {
    clear: left;
}

#contents-c70 .category_banner.bg {
    background: #3C3C3C;
    border-top: 0;
}

#contents-c70 .category_banner.bg .banner a {
    font-size: 15px;
    border: 1px solid #fff;
    text-decoration: none;
    background-color: #3C3C3C;
    color: #fff;
    display: block;
    padding: 25px;
    position: relative;
    background-image: url(../images/arrow-wh-m2x.png);
    background-repeat: no-repeat;
    background-position: calc(100% - 20px) 50%;
    background-size: auto 24px;
}

/* source sp */
@media screen and (max-width: 767px) {
    .section-source {
        background-image: url(../images/sourse-bg_spn.jpg);
        background-position: top center;
    }

    .source-icon {
        width: 100%;
        margin-top: 80%;
    }
    .source-icon {
    }

    .source-icon ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .source-icon ul li {
        width: 19.73%;
    }

    .source-icon ul li img {
        width: calc(100% - 2px);
        margin: 0 1px;
    }

    .source-icon ul li:not(:nth-child(4n)) {
        margin-right: 5.27%;
    }

    .source-icon ul li:nth-child(-n+4) {
        margin-bottom: 3.5%;
    }

    .section-source .section-text-wrap {
        z-index: 9999;
    }
}

/* source pc */
@media screen and (min-width: 768px) {
    .section-source {
        background-image: url(../images/sourse-bg_pc.jpg);
    }

    .source-icon {
        width: 33.6%;
        float: left;
        margin: 156px 0 256px;
    }
    .source-icon ul {
        	display: -webkit-flex;
        	display: -ms-flexbox;
        	display: flex;
        	-webkit-flex-wrap: wrap;
        	-ms-flex-wrap: wrap;
        	flex-wrap: wrap;
        	-webkit-justify-content: space-between;
        	-ms-flex-pack: justify;
        	justify-content: space-between;
    }
    .source-icon ul li {
        width: 19.73%;
    }
    .source-icon ul li img {
        width: calc(100% - 2px);
        margin: 0 1px;
    }
    .source-icon ul li:not(:nth-child(4n)) {
        margin-right: 5.27%;
    }
    .source-icon ul li:nth-child(-n+4) {
        margin-bottom: 3.5%;
    }


}



/* movie */
.section-movie {
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}
.section-movie h2 {
    position: absolute;
    top: 15%;
    left: 0;
    transform: translate(-50%, -50%);
    -webkit-transform:;
    -ms-transform:;
    text-align: center;
    width: 100%;
}
.section-movie .heading span {
    display: block;
    width: 100%;
}
.section-movie a {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 80%;
}
.section-movie a,
.section-movie a img {
    display: block;
    margin-right: auto;
    margin-left: auto;
}


/* movie sp */
@media screen and (max-width: 767px) {

    .section-movie {
        background-image: url(../images/movie_bg_spn.jpg);
        padding-top: 94.4%;
    }
    .section-movie h2 img {
        width: 44.68%;
        max-width: 286px;
    }

    .section-movie a {
        width: 21.25%;
        transform: translate(-50%, -70%);
        -webkit-transform: translate(-50%, -70%);
        -ms-transform: translate(-50%, -70%);
    }
    .section-movie a img {
        max-width: 136px;
    }


}



/* movie pc */
@media screen and (min-width: 768px) {

    .section-movie {
        background-image: url(../images/movie_bg_pc.jpg);
        padding-top: 47.3%;
    }
    .section-movie h2 img {
        width: 90%;
        max-width: 286px;
    }
    .section-movie a,
    .section-movie a img {
        max-width: 136px;
    }


}

.exp {
    position: relative;
}
.exp:after {
    content: "製作中";
    color: #fff;
    background: #000;
    border: 1px solid #fff;
    width: 10em;
    line-height: 2.6;
    font-size: 1.2em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    display: inline-block;
    text-align: center;
    font-weight: bold;
}





/* award_wrap */
.award_wrap {
    margin: 40px auto 0;
    border-bottom: 1px #ddd solid;
}
.award_wrap .content {
    box-sizing: border-box;
    max-width: 1200px;
    margin: 0 auto 20px;
    padding: 0 30px;
}


/* breadcrumb fix */
.breadcrumb {
    margin:0 auto;
    /* margin-bottom:16px; */
    margin-top:30px !important;;
    padding:0 26px 0 25px;
    line-height:160%;
    color: #666;
}

.breadcrumb a {
    display:inline-block;
    margin-right:5px;
    color: #666;
}
.breadcrumb a,
.breadcrumb a:link {
    color:#656565;
    text-decoration:underline;
}
.breadcrumb a:visited {
    color:#656565;
}
.breadcrumb a:hover,
.breadcrumb a:active {
    color:#b7b7b7;
}
.breadcrumb a:focus {
    outline:none;
}

@media screen and (max-width:480px) {

    .breadcrumb {
        padding:0 15px;
    }

}


@media all and (min-width: 976px) {

    .breadcrumb {
        max-width: 925px !important;
        margin-bottom: 10px !important;
        margin-top: 30px !important;
    }
    .breadcrumb,
    .breadcrumb a {
        font-size: 12px;
    }


}