﻿@charset "UTF-8";

#footer-conversion .conv-list>li>a::before,
#footer-conversion .conv-list>li>button::before,
#footer-conversion .conv-content .btn a::before,
#footer-conversion .conv-content .contact-list>li a::before,
.list-link-a.diff-anchor>li>a::after,
.list-error-a>li::before,
.list-contact-a a::before,
.lyt-contact-a .list-contact-a .contact-inner::before,
/*
.nav-b ul a::after,
.btn-b.diff-register::before,
.btn-b.diff-tel::before,
.btn-b.diff-mail::before,
.btn-b.diff-login::before,
*/
.lyt-share-a .share-btn::before {
    background-image: url(/common/img/v5/icons/sprite2.png)
}

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block
}

audio,
canvas,
progress,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

progress {
    vertical-align: baseline
}

template,
[hidden] {
    display: none
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects
}

a:active,
a:hover {
    outline-width: 0
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b,
strong {
    font-weight: inherit
}

b,
strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

mark {
    background-color: #ff0;
    color: #000
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

svg:not(:root) {
    overflow: hidden
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}

figure {
    margin: 1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

button,
input,
select,
textarea {
    font: inherit;
    margin: 0
}

optgroup {
    font-weight: 700
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button,
html [type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText
}

fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-input-placeholder {
    color: inherit;
    opacity: .54
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

:root {
    font-size: 10px
}

body {
    background: #fff;
    color: #333;
    font-size: 1.6rem;
    font-family: Arial, sans-serif;
    line-height: 1.6;
    word-wrap: break-word;
    overflow-wrap: break-word
}

:lang(en) body {
    font-size: 1.8rem;
    line-height: 1.8
}

@media only screen and (max-width:480px) {
    :lang(en) body {
        font-size: 1.6rem;
        line-height: 1.6
    }
}

@media only screen and (min-width:1001px) {
    body {
        height: auto !important
    }
}

*,
*::before,
*::after {
    box-sizing: border-box
}

ul,
ol {
    list-style-type: none
}

a {
    color: #333;
    text-decoration: underline;
    transition: color .2s
}

a:hover,
a:active,
a:focus {
    text-decoration: none;
    color: #57564f
}

a:visited {
    text-decoration: underline
}

em {
    font-style: italic
}

:lang(en) em {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

strong {
    font-weight: 700
}

:lang(en) strong {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

sup {
    font-size: 1.2rem
}

b {
    font-weight: 700
}

:lang(en) b {
    font-weight: 400;
    font-family: Arial, sans-serif
}

i {
    font-style: italic
}

img {
    max-width: 100%;
    vertical-align: bottom;
    height: auto
}

p,
ul,
ol,
dl,
dt,
dd,
table,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
form {
    margin: 0;
    padding: 0
}

dfn,
cite {
    font-style: normal
}

small {
    font-size: 100%
}

table {
    border-collapse: collapse;
    width: 100%
}

input,
select,
button,
textarea {
    font-family: Arial, sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0
}

input[type=reset],
input[type=image],
input[type=submit],
input[type=button],
button {
    cursor: pointer
}

button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    background: none;
    padding: 0
}

.clearfix:after {
    display: block;
    clear: both;
    content: ""
}

#header {
    display: block;
    max-width: inherit
}

@media only screen and (min-width:1001px) {
    #header {
        height: auto !important;
        padding: 0
    }
}

@media only screen and (max-width:1000px) {
    #header {
        width: 100%;
        overflow: hidden;
        transition: background .25s;
        padding: 0
    }

    #header.is-visible {
        position: absolute;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, .4);
        z-index: 9999
    }

    [data-browser=IE11] #header.is-visible {
        width: 100%
    }
}

#header-content {
    background: rgba(255, 255, 255, .96);
    position: relative;
    z-index: 300;
    width: 100%
}

@media only screen and (max-width:1000px) {
    #header-content {
        background: #fff
    }
}

#header-content::before {
    display: block;
    position: absolute;
    content: "";
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 20px;
    /*  background: linear-gradient(rgba(0, 0, 0, .08), rgba(255, 255, 255, 0));  --- Ricoh ---  */
    border-top: solid 4px #cf142b;
    /* --- Ricoh ---  */
    pointer-events: none
}

@media only screen and (max-width:1000px) {
    #header-content::before {
        display: none
    }
}

@media only screen and (max-width:480px) {
    #header-content {
        box-shadow: none
    }

    #header-content::before {
        display: none
    }
}

#header-content .skip-link {
    overflow: hidden;
    font-size: 1.6rem
}

#header-content .skip-link a {
    text-align: center;
    color: #fff;
    background: #57564f;
    display: block;
    overflow: hidden;
    height: 0;
    padding: 0 8px;
    text-decoration: none
}

#header-content .skip-link a:focus {
    height: auto
}

#header-content .skip-link a span {
    padding: 5px 0;
    display: block
}

#header-content .skip-link a span::after {
    display: inline-block;
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin: 0 0 2px 12px
}

#header-group-cookie {
    background: #706f67
}

#header-group-cookie-inner {
    display: none;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
    padding: 8px 0;
    color: #fff
}

[data-script-enabled=true] #header-group-cookie-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:1280px) {
    #header-group-cookie-inner {
        padding: 8px
    }
}

@media only screen and (max-width:1000px) {
    #header-group-cookie-inner {
        padding: 12px 16px 16px
    }
}

@media only screen and (max-width:767px) {
    #header-group-cookie-inner {
        display: block;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        text-align: center
    }
}

#header-group-cookie-inner .desc {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 10px;
    line-height: 1.2;
    width: 100%;
    font-size: 1.6rem
}

@media only screen and (max-width:1000px) {
    #header-group-cookie-inner .desc {
        font-size: 1.4rem
    }

    [data-browser=IE11] #header-group-cookie-inner .desc {
        -webkit-flex: auto;
        -ms-flex: auto;
        flex: auto
    }
}

@media only screen and (max-width:767px) {
    #header-group-cookie-inner .desc {
        margin: 0 0 8px
    }
}

#header-group-cookie-inner .btns {
    margin-left: -8px;
    display: table
}

@media only screen and (max-width:767px) {
    #header-group-cookie-inner .btns {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

#header-group-cookie-inner .btns>li {
    font-size: 1.4rem;
    padding-left: 8px;
    line-height: 1.2;
    display: table-cell
}

@media only screen and (max-width:767px) {
    #header-group-cookie-inner .btns>li {
        display: block
    }
}

#header-group-cookie-inner .btns a {
    display: block;
    text-decoration: none;
    padding: 8px 30px 8px 23px;
    min-height: 32px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    position: relative;
    transition: background .2s
}

#header-group-cookie-inner .btns a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 10px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -3.5px
}

#header-group-cookie-inner .btns .agree a {
    background: #cf122e;
    color: #fff
}

#header-group-cookie-inner .btns .agree a:hover,
#header-group-cookie-inner .btns .agree a:active,
#header-group-cookie-inner .btns .agree a:focus {
    background: #d11124
}

#header-group-cookie-inner .btns .more a {
    background: #fff;
    color: #cf122e;
    min-width: 114px
}

#header-group-cookie-inner .btns .more a::before {
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e
}

#header-group-cookie-inner .btns .more a:hover,
#header-group-cookie-inner .btns .more a:active,
#header-group-cookie-inner .btns .more a:focus {
    background: #f6cfd3
}

#header-column {
    /*    border-top: 3px solid #cf122e --- Ricoh ---  */
}

#header-column.diff-group-corp {
    border-color: #9e9d96
}

#header-column-inner {
    max-width: 1280px;
    margin: 0 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width:1000px) {
    #header-column-inner {
        border-bottom: 2px solid #ccccc6;
        position: relative;
        display: block
    }

    [data-script-enabled=true] #header-column-inner {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

@media only screen and (max-width:767px) {
    .diff-group-corp #header-column-inner {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

#header-group-title {
    position: relative;
    min-height: 94px
}

@media only screen and (max-width:1280px) {
    #header-group-title {
        padding: 0 8px
    }
}

@media only screen and (max-width:1000px) {
    #header-group-title {
        min-height: inherit
    }
}

@media only screen and (max-width:480px) {
    #header-group-title {
        padding: 0 16px
    }
}

@media only screen and (max-width:767px) {
    .diff-group-corp #header-group-title {
        display: block;
        width: 100%
    }
}

#site-title {
    font-size: 2.8rem;
    color: #57564f;
    font-weight: 700;
    padding: 11px 10px 14px 0;
    line-height: 1.4;
    min-height: 75px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center
}

:lang(en) #site-title {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    #site-title {
        padding: 16px 10px 14px 8px;
        font-size: 2.4rem;
        min-height: inherit
    }
}

@media only screen and (max-width:480px) {
    #site-title {
        font-size: 2rem;
        padding: 12px 10px 12px 0
    }
}

#site-title a {
    text-decoration: none;
    color: #57564f;
    display: inline-block
}

@media only screen and (max-width:480px) {
    #site-title .sub {
        display: block;
        font-size: 1.4rem
    }
}

#site-title img {
    display: block;
    max-width: inherit;
    width: 100%
}

#corporate-symbol {
    margin-top: 20px
}

#corporate-symbol img {
    width: auto;
    /*  height: 49px; --- Ricoh ---  */
    height: 60px;
    max-width: inherit
}

@media only screen and (max-width:1000px) {
    #corporate-symbol {
        margin-top: 12px
    }

    #corporate-symbol img {
        height: 45px
    }
}

@media only screen and (max-width:480px) {
    #corporate-symbol img {
        width: auto;
        height: 30px
    }
}

.diff-group-corp #corporate-symbol {
    max-width: 430px;
    width: calc(430vw*100/1280)
}

.diff-group-corp #corporate-symbol img {
    max-width: 100%;
    height: auto
}

@media only screen and (max-width:1280px) {
    .diff-group-corp #corporate-symbol {
        max-width: 380px;
        width: calc(380vw*100/1280)
    }
}

@media only screen and (max-width:1000px) {
    .diff-group-corp #corporate-symbol {
        width: auto
    }

    .diff-group-corp #corporate-symbol img {
        max-width: inherit
    }
}

@media only screen and (max-width:767px) {
    .diff-group-corp #corporate-symbol {
        margin-top: 16px;
        max-width: inherit;
        width: auto
    }

    .diff-group-corp #corporate-symbol img {
        max-width: 100%
    }
}

@media only screen and (max-width:480px) {
    .diff-group-corp #corporate-symbol {
        text-align: center;
        padding-top: 0;
        padding-bottom: 0
    }
}

#header-group-nav {
    width: 100%;
    min-height: 120px
}

[data-script-enabled=true] #header-group-nav {
    min-height: 94px
}

@media only screen and (max-width:1000px) {
    #header-group-nav {
        min-height: inherit
    }

    [data-script-enabled=true] #header-group-nav {
        min-height: inherit
    }
}

#header-group-nav-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    height: 100%
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner {
        min-height: 71px;
        padding: 0
    }

    [data-script-enabled=true] #header-group-nav-inner {
        display: block
    }
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner {
        min-height: 59px
    }
}

.diff-no-gnav #header-group-nav-inner {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.diff-group-corp+.diff-no-gnav #header-group-nav-inner {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

@media only screen and (max-width:767px) {
    .diff-group-corp #header-group-nav-inner {
        min-height: inherit
    }
}

#header-group-nav-inner .trans-nav-back {
    display: none
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .trans-nav-back {
        font-size: 1.6rem;
        position: relative;
        z-index: 1;
        background: #eee;
        padding: 11px 0 11px 38px;
        width: 100%;
        text-align: left;
        border-top: 1px solid #c6c6c0;
        line-height: 1.4
    }

    #header-group-nav-inner .trans-nav-back.is-visible {
        display: block !important
    }

    #header-group-nav-inner .trans-nav-back:hover,
    #header-group-nav-inner .trans-nav-back:active,
    #header-group-nav-inner .trans-nav-back:focus {
        color: #57564f;
        text-decoration: underline
    }

    #header-group-nav-inner .trans-nav-back::before {
        display: block;
        position: absolute;
        content: "";
        left: 16px;
        top: 50%;
        width: 10px;
        height: 10px;
        border-top: 2px solid #cf122e;
        border-left: 2px solid #cf122e;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        margin-top: -5px
    }
}

#header-group-nav-inner #utility-area {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 14px
}

@media only screen and (min-width:1281px) {
    #header-group-nav-inner #utility-area {
        position: relative
    }
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner #utility-area {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        width: 100%;
        padding: 0 16px;
        margin-bottom: 0;
        min-height: 71px
    }

    [data-script-enabled=true] #header-group-nav-inner #utility-area {
        -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        width: auto;
        padding: 0
    }

    [data-browser=IE11] #header-group-nav-inner #utility-area {
        height: 71px
    }
}

@media only screen and (max-width:767px) {
    .diff-group-corp #header-group-nav-inner #utility-area {
        min-height: 47px
    }

    [data-browser=IE11] .diff-group-corp #header-group-nav-inner #utility-area {
        height: 47px
    }
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner #utility-area {
        min-height: inherit
    }
}

#header-group-nav-inner .utility-txt {
    /*  font-size: 1.1rem; --- Ricoh --- */
    font-size: 1.4rem;
    font-weight: bold;
    /* --- Ricoh --- */
    line-height: 1.2;
    /*  color: #57564f --- Ricoh --- */
    color: #333;
}

#header-group-nav-inner .utility-txt a {
    text-decoration: none;
    color: #57564f
}

#header-group-nav-inner .utility-txt a:hover,
#header-group-nav-inner .utility-txt a:active,
#header-group-nav-inner .utility-txt a:focus {
    text-decoration: underline
}

#header-group-nav-inner .utility-icon {
    /*  background: #eee; --- Ricoh ---　*/
    margin-left: 20px;
    padding: 8px 25px;
    /*  border-radius: 0 0 2px 2px; --- Ricoh ---  */
    /*  border: 1px solid #e0e0e0; --- Ricoh ---  */
    border-top: 0;
    /*  box-shadow: 0 0 3px -1px rgba(0, 0, 0, .36); --- Ricoh ---  */
    max-width: 500px
}

[data-script-enabled=true] #header-group-nav-inner .utility-icon {
    max-width: inherit
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility-icon {
        box-shadow: none;
        background: none;
        border-radius: 0;
        border: 0;
        padding: 0
    }
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner .utility-icon {
        margin-left: 26px
    }
}

#header-group-nav-inner #utility-icon-sp {
    display: none;
    padding: 0 16px;
    border-top: 1px solid #c6c6c0;
    position: relative
}

#header-group-nav-inner #utility-icon-sp a {
    color: #57564f
}

@media only screen and (max-width:1000px) {
    .is-visible #header-group-nav-inner #utility-icon-sp {
        display: block
    }
}

#header-group-nav-inner .utility {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

[data-script-enabled=true] #header-group-nav-inner .utility {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility {
        position: static;
        padding-top: 8px;
        margin-left: -30px;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center
    }

    [data-script-enabled=true] #header-group-nav-inner .utility {
        padding: 0 8px 0 0
    }
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner .utility {
        margin-left: -16px;
        display: block;
        padding-top: 8px
    }

    [data-script-enabled=true] #header-group-nav-inner .utility {
        padding: 0 16px 0 0;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

#header-group-nav-inner .utility>li {
    margin-left: 20px;
    margin-bottom: 4px
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility>li {
        display: block !important;
        margin-left: 30px
    }
}

[data-script-enabled=true] #header-group-nav-inner .utility>li {
    margin-bottom: 0
}

@media only screen and (min-width:1001px) {
    [data-script-enabled=true] #header-group-nav-inner .utility>li {
        display: block !important
    }
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner .utility>li {
        margin-left: 16px
    }
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility>li:first-child {
        padding-left: 4px
    }
}

#header-group-nav-inner .utility>li>a {
    position: relative;
    display: inline-block;
    overflow: hidden;
    text-decoration: none;
    /*  font-size: 1.1rem; --- Ricoh --- */
    font-size: 1.2rem;
    font-weight: bold;
    /* --- Ricoh --- */
    white-space: nowrap;
    /*  color: #57564f  --- Ricoh --- */
    color: #666
}

[data-script-enabled=true] #header-group-nav-inner .utility>li>a {
    display: block
}

[data-script-enabled=true] #header-group-nav-inner .utility>li>a.is-open {
    color: #cf122e
}

[data-script-enabled=true] #header-group-nav-inner .utility>li>a>.status-txt {
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility>li>a .label {
        display: block;
        margin-top: 2px
    }
}

@media only screen and (max-width:1000px) {
    .diff-group-corp #header-group-nav-inner .utility>li>a .label {
        display: none
    }
}

#header-group-nav-inner .utility>li>a>img {
    display: inline-block;
    max-width: inherit;
    margin-right: 8px;
    vertical-align: middle;
    width: 18px
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility>li>a>img {
        width: 22px;
        display: block;
        margin: 0 auto
    }
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility>li:not(.change):not(.search):not(.menu) {
        display: none !important
    }
}

#header-group-nav-inner .utility>li.menu {
    display: none !important
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #header-group-nav-inner .utility>li.menu {
        display: block !important
    }
}

#header-group-nav-inner .utility>li.menu a.is-open {
    color: #57564f
}

[data-script-enabled=true] .diff-no-gnav #header-group-nav-inner .utility {
    margin-right: 117px;
    padding-bottom: 0
}

@media only screen and (max-width:1000px) {
    .diff-no-gnav #header-group-nav-inner .utility {
        padding-bottom: 13px;
        margin-right: 0
    }
}

[data-script-enabled=true] .diff-no-gnav #header-group-nav-inner .utility>li {
    margin-top: -50px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] .diff-no-gnav #header-group-nav-inner .utility>li {
        margin-top: 0
    }
}

[data-script-enabled=true] .diff-group-corp+.diff-no-gnav #header-group-nav-inner .utility {
    margin-right: 0;
    padding-bottom: 13px
}

[data-script-enabled=true] .diff-group-corp+.diff-no-gnav #header-group-nav-inner .utility>li {
    margin-top: 0
}

#header-group-nav-inner li.social {
    position: relative;
    display: none
}

[data-script-enabled=true] #header-group-nav-inner li.social {
    display: block
}

#header-group-nav-inner li.search {
    width: 100%
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner li.search {
        width: auto
    }
}

[data-script-enabled=true] #header-group-nav-inner li.search {
    width: auto
}

#header-group-nav-inner li.search>a {
    display: none
}

[data-script-enabled=true] #header-group-nav-inner li.search>a {
    display: block
}

#header-group-nav-inner .utility-sp {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -5px
}

#header-group-nav-inner .utility-sp>li {
    width: 25%;
    font-size: 1.2rem;
    padding-left: 5px
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner .utility-sp>li {
        width: 50%
    }
}

#header-group-nav-inner .utility-sp>li a {
    text-decoration: none;
    display: block;
    padding: 13px 0 12px 28px;
    position: relative
}

@media only screen and (max-width:480px) {
    #header-group-nav-inner .utility-sp>li a {
        padding: 13px 0 13px 28px
    }
}

#header-group-nav-inner .utility-sp>li img {
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -11px
}

#header-group-nav-inner .social-list>li {
    margin-bottom: 14px
}

#header-group-nav-inner .social-list>li:last-child {
    margin-bottom: 0
}

#header-group-nav-inner .change-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .change-wrapper {
        display: block
    }
}

#header-group-nav-inner .desc-list-change,
#header-group-nav-inner .desc-current-region {
    width: 20.3125%
}

#header-group-nav-inner .desc-list-change:only-of-type,
#header-group-nav-inner .desc-current-region:only-of-type {
    width: 100%
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change,
    #header-group-nav-inner .desc-current-region {
        width: 100%
    }
}

#header-group-nav-inner .desc-list-change+.desc-list-change,
#header-group-nav-inner .desc-list-change+.desc-current-region,
#header-group-nav-inner .desc-current-region+.desc-list-change,
#header-group-nav-inner .desc-current-region+.desc-current-region {
    width: 78.125%;
    margin-left: 10px
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change+.desc-list-change,
    #header-group-nav-inner .desc-list-change+.desc-current-region,
    #header-group-nav-inner .desc-current-region+.desc-list-change,
    #header-group-nav-inner .desc-current-region+.desc-current-region {
        width: 100%;
        margin-left: 0;
        margin-top: 24px
    }
}

#header-group-nav-inner .desc-list-change.diff-locations>dt,
#header-group-nav-inner .desc-current-region.diff-locations>dt {
    font-size: 3.2rem;
    margin-bottom: 12px;
    font-weight: 700;
    line-height: 1.3
}

:lang(en) #header-group-nav-inner .desc-list-change.diff-locations>dt,
:lang(en) #header-group-nav-inner .desc-current-region.diff-locations>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change.diff-locations>dt,
    #header-group-nav-inner .desc-current-region.diff-locations>dt {
        font-size: 2rem
    }
}

#header-group-nav-inner .desc-list-change>dt,
#header-group-nav-inner .desc-current-region>dt {
    font-weight: 700;
    font-size: 2rem;
    margin-bottom: 4px
}

:lang(en) #header-group-nav-inner .desc-list-change>dt,
:lang(en) #header-group-nav-inner .desc-current-region>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change>dt,
    #header-group-nav-inner .desc-current-region>dt {
        margin-bottom: 8px
    }
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change>dd,
    #header-group-nav-inner .desc-current-region>dd {
        font-size: 1.6rem
    }
}

#header-group-nav-inner .desc-list-change>dd .desc-list-change>dd+dt,
#header-group-nav-inner .desc-current-region>dd .desc-list-change>dd+dt {
    margin-top: 16px
}

#header-group-nav-inner .desc-list-change>dd .worldwide,
#header-group-nav-inner .desc-current-region>dd .worldwide {
    font-size: 2rem;
    font-weight: 700;
    margin-top: 16px;
    display: inline-block
}

:lang(en) #header-group-nav-inner .desc-list-change>dd .worldwide,
:lang(en) #header-group-nav-inner .desc-current-region>dd .worldwide {
    font-weight: 400;
    font-family: Arial, sans-serif
}

#header-group-nav-inner .desc-list-change>dd *+.site-link,
#header-group-nav-inner .desc-current-region>dd *+.site-link {
    margin-top: 24px
}

#header-group-nav-inner .desc-list-change>dd .site-link>li a,
#header-group-nav-inner .desc-current-region>dd .site-link>li a {
    text-decoration: none;
    position: relative;
    padding-right: 18px
}

#header-group-nav-inner .desc-list-change>dd .site-link>li a::before,
#header-group-nav-inner .desc-current-region>dd .site-link>li a::before {
    display: block;
    position: absolute;
    content: "";
    top: .5em;
    right: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

#header-group-nav-inner .desc-list-change>dd *+.map,
#header-group-nav-inner .desc-current-region>dd *+.map {
    margin-top: 12px
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change>dd .map,
    #header-group-nav-inner .desc-current-region>dd .map {
        display: none
    }
}

#header-group-nav-inner .desc-list-change *+.location-list,
#header-group-nav-inner .desc-current-region *+.location-list {
    margin-top: 28px
}

#header-group-nav-inner .desc-list-change .location-list,
#header-group-nav-inner .desc-current-region .location-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change .location-list,
    #header-group-nav-inner .desc-current-region .location-list {
        display: none
    }
}

#header-group-nav-inner .desc-list-change .location-list .regions-wrapper,
#header-group-nav-inner .desc-current-region .location-list .regions-wrapper {
    min-width: 210px
}

#header-group-nav-inner .desc-list-change .location-list .regions>li,
#header-group-nav-inner .desc-current-region .location-list .regions>li {
    line-height: 1.3
}

#header-group-nav-inner .desc-list-change .location-list .regions>li.is-active a,
#header-group-nav-inner .desc-current-region .location-list .regions>li.is-active a {
    background: #eee;
    text-decoration: none;
    font-weight: 700
}

:lang(en) #header-group-nav-inner .desc-list-change .location-list .regions>li.is-active a,
:lang(en) #header-group-nav-inner .desc-current-region .location-list .regions>li.is-active a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

#header-group-nav-inner .desc-list-change .location-list .regions>li a,
#header-group-nav-inner .desc-current-region .location-list .regions>li a {
    display: block;
    padding: 10px 16px
}

#header-group-nav-inner .desc-list-change .location-list .locations,
#header-group-nav-inner .desc-current-region .location-list .locations {
    background: #eee;
    padding: 20px 24px;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

[data-script-enabled=true] #header-group-nav-inner .desc-list-change .location-list .locations-panel,
[data-script-enabled=true] #header-group-nav-inner .desc-current-region .location-list .locations-panel {
    display: none
}

#header-group-nav-inner .desc-list-change .location-list .locations-panel.is-active,
#header-group-nav-inner .desc-current-region .location-list .locations-panel.is-active {
    display: block
}

#header-group-nav-inner .desc-list-change *+#location-list-sp,
#header-group-nav-inner .desc-current-region *+#location-list-sp {
    margin-top: 26px
}

#header-group-nav-inner .desc-list-change #location-list-sp,
#header-group-nav-inner .desc-current-region #location-list-sp {
    display: none
}

@media only screen and (max-width:1000px) {

    #header-group-nav-inner .desc-list-change #location-list-sp,
    #header-group-nav-inner .desc-current-region #location-list-sp {
        display: block
    }
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li {
    border-bottom: 2px solid #eee
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li:last-child,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li:last-child {
    border-bottom: 0
}

[data-script-enabled=true] #header-group-nav-inner .desc-list-change #location-list-sp .locations>li .locations-inner,
[data-script-enabled=true] #header-group-nav-inner .desc-current-region #location-list-sp .locations>li .locations-inner {
    display: none;
    padding: 12px 16px
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li.is-open .toggle-hook::before,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li.is-open .toggle-hook::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -3px
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li.is-open .locations-inner,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li.is-open .locations-inner {
    display: block
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li .toggle-hook,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li .toggle-hook {
    padding: 12px 20px 12px 16px;
    background: #fff;
    display: block;
    width: 100%;
    text-align: left;
    line-height: 1.3;
    position: relative
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li .toggle-hook::before,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li .toggle-hook::before {
    display: block;
    position: absolute;
    content: "";
    right: 10px;
    top: 50%;
    margin-top: -5px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transition: -webkit-transform .2s;
    transition: transform .2s
}

#header-group-nav-inner .desc-list-change #location-list-sp .locations>li .toggle-hook>.toggle-txt,
#header-group-nav-inner .desc-current-region #location-list-sp .locations>li .toggle-hook>.toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

#header-group-nav-inner .desc-current-region dd {
    font-weight: 700
}

:lang(en) #header-group-nav-inner .desc-current-region dd {
    font-weight: 400;
    font-family: Arial, sans-serif
}

#header-group-nav-inner .change-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-left: -17px
}

#header-group-nav-inner .change-list>li {
    margin-left: 17px;
    padding-right: 17px;
    position: relative
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .change-list>li {
        font-size: 1.6rem
    }
}

#header-group-nav-inner .change-list>li>a {
    color: #000
}

#header-group-nav-inner .change-list>li>a:hover,
#header-group-nav-inner .change-list>li>a:active,
#header-group-nav-inner .change-list>li>a:focus {
    text-decoration: none;
    color: #57564f
}

#header-group-nav-inner .change-list>li>em {
    font-weight: 700
}

:lang(en) #header-group-nav-inner .change-list>li>em {
    font-weight: 400;
    font-family: Arial, sans-serif
}

#header-group-nav-inner .change-list>li::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 1px;
    height: 16px;
    background: #87867e;
    margin-top: -8px
}

#header-group-nav-inner .change-list>li:last-child::before {
    display: none
}

#header-group-nav-inner .search-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 840px;
    margin: 0 auto
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .search-wrapper {
        display: block;
        max-width: inherit
    }
}

#header-group-nav-inner .search-input {
    background: #fff;
    border: 1px solid #afaea8;
    padding: 5px 20px 4px;
    font-size: 1.6rem;
    width: 100%;
    min-height: 43px
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .search-input {
        padding: 8px 20px 7px
    }
}

#header-group-nav-inner .search-input:placeholder-shown {
    color: #666
}

#header-group-nav-inner .search-input::-webkit-input-placeholder {
    color: #666;
    opacity: 1
}

#header-group-nav-inner .search-input::-moz-placeholder {
    color: #666;
    opacity: 1
}

#header-group-nav-inner .search-input::-moz-placeholder {
    color: #666;
    opacity: 1
}

#header-group-nav-inner .search-input:-ms-input-placeholder {
    color: #666
}

#header-group-nav-inner .search-btn {
    background: #706f67;
    color: #fff;
    position: relative;
    padding: 5px 20px 4px;
    min-width: 120px;
    font-size: 1.6rem;
    transition: background .2s
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .search-btn {
        width: 100%;
        margin-top: 16px;
        box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
        padding: 8px 20px 7px
    }
}

#header-group-nav-inner .search-btn:hover,
#header-group-nav-inner .search-btn:active,
#header-group-nav-inner .search-btn:focus {
    background: #57564f
}

#header-group-nav-inner .search-btn::before {
    display: block;
    position: absolute;
    content: "";
    right: 10px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -3.5px
}

#menu-btn {
    display: none;
    text-decoration: none;
    text-align: center
}

@media only screen and (max-width:1000px) {
    #menu-btn {
        font-size: 1.1rem;
        line-height: 1
    }

    [data-script-enabled=true] #menu-btn {
        display: block
    }

    #menu-btn .menu-inner {
        min-width: 27px;
        min-height: 18px;
        display: block;
        position: relative
    }

    .diff-group-corp #menu-btn .menu-inner {
        min-width: 20px
    }

    #menu-btn .menu-inner::before {
        display: block;
        position: absolute;
        content: "";
        width: 20px;
        height: 14px;
        background: linear-gradient(#706f67, #706f67 2px, transparent 2px, transparent 6px, #706f67 6px, #706f67 8px, transparent 8px, transparent 12px, #706f67 12px);
        left: 50%;
        margin-left: -10px;
        top: 0
    }

    #menu-btn.is-open .menu-inner::before {
        display: block;
        position: absolute;
        content: "";
        right: 50%;
        top: 8px;
        width: 23px;
        height: 2px;
        background: #706f67;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        left: inherit;
        margin-left: 0;
        margin-right: -10px
    }

    #menu-btn.is-open .menu-inner::after {
        display: block;
        position: absolute;
        content: "";
        left: 50%;
        top: -3px;
        width: 2px;
        height: 23px;
        background: #706f67;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-left: -2px
    }

    #menu-btn .menu-txt {
        padding-top: 23px;
        display: block
    }
}

@media only screen and (max-width:1000px) and (max-width:1000px) {
    .diff-group-corp #menu-btn .menu-txt {
        font-size: 0;
        padding-top: 0
    }
}

#global-nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

[data-script-enabled=true] #global-nav {
    margin-right: 10px
}

@media only screen and (min-width:1001px) {
    [data-script-enabled=true] #global-nav {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

@media only screen and (max-width:1000px) {
    #global-nav {
        -webkit-flex: auto;
        -ms-flex: auto;
        flex: auto;
        display: block;
        width: 100%
    }

    [data-script-enabled=true] #global-nav {
        position: absolute;
        top: calc(100% + 2px);
        left: 0;
        display: none;
        width: 100%;
        background: #fff;
        transition: left .25s
    }

    [data-script-enabled=true] #global-nav.is-pos1 {
        left: -100%
    }

    [data-script-enabled=true] #global-nav.is-pos2 {
        left: -200%
    }

    [data-script-enabled=true] #global-nav.is-pos3 {
        left: -300%
    }
}

#global-nav>li>a {
    display: block;
    text-decoration: none;
    line-height: 1.2;
    min-width: 95px;
    text-align: center;
    word-break: break-word;
    padding: 11px 32px 11px 16px;
    position: relative
}

[data-script-enabled=true] #global-nav>li>a {
    padding: 4px 24px 15px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #global-nav>li>a {
        text-align: left;
        padding: 11px 32px 11px 16px;
        border-bottom: 1px solid #c6c6c0;
        background: #eee
    }
}

#global-nav>li>a:hover,
#global-nav>li>a:active,
#global-nav>li>a:focus {
    padding-bottom: 11px
}

[data-script-enabled=true] #global-nav>li>a:hover,
[data-script-enabled=true] #global-nav>li>a:active,
[data-script-enabled=true] #global-nav>li>a:focus {
    padding-bottom: 15px
}

@media only screen and (max-width:1000px) {
    #global-nav>li>a {
        text-align: left;
        border-bottom: 1px solid #c6c6c0;
        padding: 11px 32px 11px 16px;
        position: relative;
        word-break: inherit;
        line-height: 1.4
    }

    #global-nav>li>a::before {
        display: block;
        position: absolute;
        content: "";
        top: 50%;
        right: 16px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #cf122e;
        border-right: 2px solid #cf122e;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-top: -7px
    }

    #global-nav>li>a::after {
        display: none
    }

    #global-nav>li>a:hover,
    #global-nav>li>a:active,
    #global-nav>li>a:focus {
        padding-bottom: 11px
    }

    [data-script-enabled=true] #global-nav>li>a:hover,
    [data-script-enabled=true] #global-nav>li>a:active,
    [data-script-enabled=true] #global-nav>li>a:focus {
        padding-bottom: 11px;
        border-bottom: 1px solid #c6c6c0
    }
}

@media only screen and (max-width:480px) {

    #global-nav>li>a:hover,
    #global-nav>li>a:active,
    #global-nav>li>a:focus {
        font-weight: 400
    }
}

#global-nav>li.is-current>a {
    font-weight: 700
}

:lang(en) #global-nav>li.is-current>a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    #global-nav>li.is-current>a {
        padding-bottom: 11px
    }
}

@media only screen and (max-width:1000px) {
    #global-nav>li.home {
        display: none
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a,
[data-script-enabled=true] #global-nav .trans-nav>a {
    position: relative;
    padding-right: 32px
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .toggle-nav>a,
    [data-script-enabled=true] #global-nav .trans-nav>a {
        text-align: left;
        padding: 11px 32px 11px 16px
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a::before,
[data-script-enabled=true] #global-nav .trans-nav>a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 8px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-top: -12px;
    transition: -webkit-transform .2s;
    transition: transform .2s
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .toggle-nav>a::before,
    [data-script-enabled=true] #global-nav .trans-nav>a::before {
        right: 16px;
        width: 12px;
        height: 12px;
        margin-top: -9px
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a.is-open,
[data-script-enabled=true] #global-nav .trans-nav>a.is-open {
    font-weight: 700
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .toggle-nav>a.is-open,
    [data-script-enabled=true] #global-nav .trans-nav>a.is-open {
        padding-bottom: 11px
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a.is-open::before,
[data-script-enabled=true] #global-nav .trans-nav>a.is-open::before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -7px
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .toggle-nav>a.is-open::before,
    [data-script-enabled=true] #global-nav .trans-nav>a.is-open::before {
        margin-top: -7px
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a:hover::before,
[data-script-enabled=true] #global-nav .toggle-nav>a:active::before,
[data-script-enabled=true] #global-nav .toggle-nav>a:focus::before,
[data-script-enabled=true] #global-nav .trans-nav>a:hover::before,
[data-script-enabled=true] #global-nav .trans-nav>a:active::before,
[data-script-enabled=true] #global-nav .trans-nav>a:focus::before {
    margin-top: -12px
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .toggle-nav>a:hover::before,
    [data-script-enabled=true] #global-nav .toggle-nav>a:active::before,
    [data-script-enabled=true] #global-nav .toggle-nav>a:focus::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:hover::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:active::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:focus::before {
        margin-top: -9px
    }
}

[data-script-enabled=true] #global-nav .toggle-nav>a:hover.is-open::before,
[data-script-enabled=true] #global-nav .toggle-nav>a:active.is-open::before,
[data-script-enabled=true] #global-nav .toggle-nav>a:focus.is-open::before,
[data-script-enabled=true] #global-nav .trans-nav>a:hover.is-open::before,
[data-script-enabled=true] #global-nav .trans-nav>a:active.is-open::before,
[data-script-enabled=true] #global-nav .trans-nav>a:focus.is-open::before {
    margin-top: -7px
}

[data-script-enabled=true] #global-nav .toggle-nav>a>.status-txt,
[data-script-enabled=true] #global-nav .trans-nav>a>.status-txt {
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

:lang(en) #global-nav .toggle-nav>a.is-open,
:lang(en) #global-nav .trans-nav>a.is-open {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #global-nav .toggle-nav>a.is-open {
        color: #fff;
        background: #cf122e
    }
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #global-nav .toggle-nav>a.is-open::before {
        border-color: #fff
    }
}

#global-nav .trans-nav>a {
    height: 100%
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #global-nav .trans-nav>a::before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-top: -7px
    }
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #global-nav .trans-nav>a.is-open::before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-top: -7px
    }
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .trans-nav>a:hover::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:active::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:focus::before {
        margin-top: -7px
    }
}

@media only screen and (max-width:1000px) {

    [data-script-enabled=true] #global-nav .trans-nav>a:hover.is-open::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:active.is-open::before,
    [data-script-enabled=true] #global-nav .trans-nav>a:focus.is-open::before {
        margin-top: -7px
    }
}

#global-nav .toggle-nav.is-current>a::before,
#global-nav .trans-nav.is-current>a::before {
    margin-top: -12px
}

@media only screen and (max-width:1000px) {

    #global-nav .toggle-nav.is-current>a::before,
    #global-nav .trans-nav.is-current>a::before {
        margin-top: -9px
    }
}

#global-nav .toggle-nav.is-current>a.is-open::before,
#global-nav .trans-nav.is-current>a.is-open::before {
    margin-top: -7px
}

#global-nav .trans-nav.is-current>a::before {
    margin-top: -12px
}

@media only screen and (max-width:1000px) {
    #global-nav .trans-nav.is-current>a::before {
        margin-top: -7px
    }
}

@media only screen and (max-width:1000px) {
    #global-nav .trans-nav.is-current>a.is-open::before {
        margin-top: -7px
    }
}

.dd-content {
    width: 100%;
    z-index: 0;
    display: none
}

[data-script-enabled=true] .dd-content {
    display: none;
    position: absolute;
    left: 0;
    background: rgba(238, 238, 238, .96)
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] .dd-content {
        position: static
    }
}

@media only screen and (max-width:1000px) {
    .dd-content {
        position: static
    }

    [data-script-enabled=true] .dd-content {
        background: #fff
    }
}

.dd-content::before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 20px;
    z-index: 1;
    pointer-events: none
}

[data-script-enabled=true] .dd-content::before {
    background: linear-gradient(rgba(0, 0, 0, .08), rgba(255, 255, 255, 0))
}

@media only screen and (max-width:1000px) {
    .dd-content::before {
        display: none
    }
}

.dd-content::after {
    display: block;
    position: absolute;
    content: "";
    bottom: -20px;
    left: 0;
    width: 100%;
    height: 20px;
    z-index: -1
}

[data-script-enabled=true] .dd-content::after {
    background: linear-gradient(rgba(0, 0, 0, .09), rgba(255, 255, 255, 0))
}

@media only screen and (max-width:1000px) {
    .dd-content::after {
        display: none
    }
}

#header-group-nav-inner .utility .dd-content {
    top: 100%;
    display: none
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility .dd-content {
        top: calc(100% + 2px)
    }

    [data-script-enabled=true] #header-group-nav-inner .utility .dd-content {
        position: absolute;
        z-index: 1
    }
}

#header-group-nav-inner .utility .dd-content::before {
    z-index: -1
}

#header-group-nav-inner li.change .dd-content {
    display: none;
    background: rgba(255, 255, 255, .96)
}

[data-script-enabled=true] #header-group-nav-inner li.change .dd-content {
    display: none;
    left: inherit;
    top: inherit;
    z-index: 1;
    width: 1280px;
    box-shadow: 0 0 10px rgba(0, 0, 0, .3);
    margin-top: 20px;
    right: 0
}

@media only screen and (max-width:1280px) {
    [data-script-enabled=true] #header-group-nav-inner li.change .dd-content {
        width: 100%
    }
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #header-group-nav-inner li.change .dd-content {
        top: calc(100% + 2px);
        box-shadow: none;
        margin-top: 0;
        background: #eee
    }
}

[data-script-enabled=true] #header-group-nav-inner li.change .dd-content::before,
[data-script-enabled=true] #header-group-nav-inner li.change .dd-content::after {
    display: none
}

[data-script-enabled=true] .diff-group-corp #header-group-nav-inner li.change .dd-content {
    width: 524px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] .diff-group-corp #header-group-nav-inner li.change .dd-content {
        width: 100%
    }
}

#header-group-nav-inner li.search .dd-content {
    display: block;
    background: rgba(255, 255, 255, .96)
}

[data-script-enabled=true] #header-group-nav-inner li.search .dd-content {
    display: none;
    left: inherit;
    top: inherit;
    z-index: 1;
    width: 524px;
    box-shadow: 0 0 10px rgba(0, 0, 0, .3);
    margin-top: 20px;
    right: 0
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #header-group-nav-inner li.search .dd-content {
        width: 100%;
        top: calc(100% + 2px);
        box-shadow: none;
        margin-top: 0;
        background: #eee
    }
}

[data-script-enabled=true] #header-group-nav-inner li.search .dd-content::before,
[data-script-enabled=true] #header-group-nav-inner li.search .dd-content::after {
    display: none
}

#header-group-nav-inner li.social .dd-content {
    top: calc(100% + 13px);
    width: 48px;
    background: #fff;
    left: -14px;
    box-shadow: 0 0 10px rgba(0, 0, 0, .3)
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner li.social .dd-content {
        top: calc(100% + 15px);
        left: -10px
    }
}

#header-group-nav-inner li.social .dd-content::before,
#header-group-nav-inner li.social .dd-content::after {
    display: none
}

#header-group-nav.diff-no-gnav li.social .dd-content {
    top: 100%
}

@media only screen and (max-width:1000px) {
    #header-group-nav.diff-no-gnav li.social .dd-content {
        top: calc(100% + 15px)
    }
}

.diff-group-corp+#header-group-nav.diff-no-gnav li.social .dd-content {
    top: calc(100% + 13px);
    left: -8px
}

@media only screen and (max-width:1000px) {
    .diff-group-corp+#header-group-nav.diff-no-gnav li.social .dd-content {
        top: calc(100% + 15px);
        left: -10px
    }
}

.dd-content-inner {
    position: relative
}

.toggle-nav .dd-content-inner,
.trans-nav .dd-content-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px 48px 25px 0
}

@media only screen and (max-width:1000px) {

    .toggle-nav .dd-content-inner,
    .trans-nav .dd-content-inner {
        padding: 0
    }
}

@media only screen and (max-width:1280px) {
    .toggle-nav .dd-content-inner {
        padding: 20px 48px 25px 8px
    }
}

@media only screen and (max-width:1000px) {
    .toggle-nav .dd-content-inner {
        padding: 0
    }
}

.trans-nav .dd-content-inner {
    position: relative;
    z-index: 0;
    padding: 0
}

@media only screen and (max-width:1000px) {
    .trans-nav .dd-content-inner {
        position: static
    }
}

#header-group-nav-inner .utility .dd-content-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px 24px 25px 0
}

@media only screen and (max-width:1280px) {
    #header-group-nav-inner .utility .dd-content-inner {
        padding: 20px 32px 25px 8px
    }
}

@media only screen and (max-width:1000px) {
    #header-group-nav-inner .utility .dd-content-inner {
        padding: 12px 16px 25px;
        border-bottom: 1px solid #c6c6c0
    }
}

[data-script-enabled=true] #header-group-nav-inner li.change .dd-content-inner {
    padding: 20px 34px 25px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #header-group-nav-inner li.change .dd-content-inner {
        padding: 12px 16px 30px
    }
}

#header-group-nav-inner li.search .dd-content-inner {
    border-bottom: 0;
    padding: 0
}

[data-script-enabled=true] #header-group-nav-inner li.search .dd-content-inner {
    padding: 20px 48px 20px 20px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #header-group-nav-inner li.search .dd-content-inner {
        padding: 52px 16px 30px;
        border-bottom: 1px solid #c6c6c0
    }
}

#header-group-nav-inner li.social .dd-content-inner {
    padding: 12px 13px
}

.dd-content-inner .close-btn {
    position: absolute;
    right: 18px;
    top: 20px;
    font-size: 1rem;
    line-height: 1;
    width: 18px;
    height: 18px;
    display: none;
    overflow: hidden;
    padding: 0
}

[data-script-enabled=true] .dd-content-inner .close-btn {
    display: block
}

@media only screen and (max-width:1000px) {
    .dd-content-inner .close-btn {
        display: none
    }

    [data-script-enabled=true] .dd-content-inner .close-btn {
        display: none
    }

    .utility .dd-content-inner .close-btn {
        right: 16px
    }

    [data-script-enabled=true] .utility .dd-content-inner .close-btn {
        display: block
    }
}

.dd-content-inner .close-btn::before {
    display: block;
    position: absolute;
    content: "";
    right: -2px;
    top: 8px;
    width: 23px;
    height: 2px;
    background: #706f67;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.dd-content-inner .close-btn::after {
    display: block;
    position: absolute;
    content: "";
    left: 8px;
    top: -3px;
    width: 2px;
    height: 23px;
    background: #706f67;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.dd-content-inner .close-btn span {
    position: absolute;
    opacity: 0;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px
}

.toggle-nav .second-nav>li>a,
.trans-nav .second-nav>li>a {
    text-decoration: none;
    font-weight: 700;
    position: relative;
    font-size: 2.4rem;
    padding-right: 18px
}

:lang(en) .toggle-nav .second-nav>li>a,
:lang(en) .trans-nav .second-nav>li>a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {

    .toggle-nav .second-nav>li>a,
    .trans-nav .second-nav>li>a {
        display: none;
        background: #eee;
        border-bottom: 1px solid #c6c6c0;
        font-size: 1.6rem;
        font-weight: 400;
        padding: 13px 32px 12px 35px
    }
}

.toggle-nav .second-nav>li>a::before,
.trans-nav .second-nav>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: .5em;
    right: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #a45151;
    border-right: 2px solid #a45151;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media only screen and (max-width:1000px) {

    .toggle-nav .second-nav>li>a::before,
    .trans-nav .second-nav>li>a::before {
        top: 40%;
        right: 16px;
        width: 12px;
        height: 12px
    }
}

.trans-nav .second-nav>li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav>li {
        display: block
    }
}

.trans-nav .second-nav>li .second-nav-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.second-nav-link-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

.toggle-nav .second-nav-link {
    display: none
}

@media only screen and (max-width:1000px) {
    .toggle-nav .second-nav-link {
        display: block
    }
}

.trans-nav .second-nav-link {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    padding: 20px 0 20px 20px;
    display: block
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav-link {
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        padding: 0
    }
}

.trans-nav .second-nav-link>a {
    text-decoration: none;
    position: relative;
    padding-left: 20px;
    color: #fff
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav-link>a {
        display: block;
        padding: 11px 30px 11px 16px;
        border-bottom: 1px solid #c6c6c0;
        line-height: 1.4;
        background: #eee;
        color: inherit
    }
}

.trans-nav .second-nav-link>a:hover,
.trans-nav .second-nav-link>a:active,
.trans-nav .second-nav-link>a:focus {
    text-decoration: underline
}

.trans-nav .second-nav-link>a::before {
    display: block;
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: .5em;
    left: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

:lang(en) .trans-nav .second-nav-link>a::before {
    top: .6em
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav-link>a::before {
        top: 50%;
        left: auto;
        right: 16px;
        width: 12px;
        height: 12px;
        margin-top: -7px;
        border-color: #cf122e
    }

    :lang(en) .trans-nav .second-nav-link>a::before {
        top: 50%
    }
}

.toggle-nav .second-nav-top,
.toggle-nav .third-nav-link {
    display: none
}

@media only screen and (max-width:1000px) {

    .toggle-nav .second-nav-top,
    .toggle-nav .third-nav-link {
        display: block
    }
}

.trans-nav .second-nav-top,
.trans-nav .third-nav-link {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    background: rgba(87, 86, 79, .9);
    padding: 20px 0 20px 20px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    height: 100%;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

[data-browser=IE11] .trans-nav .second-nav-top,
[data-browser=IE11] .trans-nav .third-nav-link {
    -webkit-flex: auto;
    -ms-flex: auto;
    flex: auto;
    height: auto
}

@media only screen and (max-width:1000px) {

    .trans-nav .second-nav-top,
    .trans-nav .third-nav-link {
        -webkit-order: 0;
        -ms-flex-order: 0;
        order: 0;
        padding: 0
    }
}

.trans-nav .second-nav-top>a,
.trans-nav .third-nav-link>a {
    text-decoration: none;
    position: relative;
    padding-left: 20px;
    color: #fff
}

@media only screen and (max-width:1000px) {

    .trans-nav .second-nav-top>a,
    .trans-nav .third-nav-link>a {
        padding: 11px 30px 11px 16px;
        border-bottom: 1px solid #c6c6c0;
        line-height: 1.4;
        background: #eee;
        color: inherit
    }
}

.trans-nav .second-nav-top>a:hover,
.trans-nav .second-nav-top>a:active,
.trans-nav .second-nav-top>a:focus,
.trans-nav .third-nav-link>a:hover,
.trans-nav .third-nav-link>a:active,
.trans-nav .third-nav-link>a:focus {
    text-decoration: underline
}

.trans-nav .second-nav-top>a::before,
.trans-nav .third-nav-link>a::before {
    display: block;
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: .5em;
    left: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

:lang(en) .trans-nav .second-nav-top>a::before,
:lang(en) .trans-nav .third-nav-link>a::before {
    top: .6em
}

@media only screen and (max-width:1000px) {

    .trans-nav .second-nav-top>a::before,
    .trans-nav .third-nav-link>a::before {
        top: 50%;
        left: auto;
        right: 16px;
        width: 12px;
        height: 12px;
        margin-top: -7px;
        border-color: #cf122e
    }

    :lang(en) .trans-nav .second-nav-top>a::before,
    :lang(en) .trans-nav .third-nav-link>a::before {
        top: 50%
    }
}

.trans-nav .second-nav-link+.second-nav-link {
    padding-top: 0
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav-link+.second-nav-link>a {
        margin-top: 0
    }
}

.trans-nav .third-nav-link {
    background: transparent;
    padding-left: 0
}

.trans-nav .third-nav-link+.third-nav-link {
    padding-top: 0
}

.trans-nav .third-nav-link+.third-nav-link>a {
    margin-top: -30px
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-nav-link+.third-nav-link>a {
        margin-top: 0
    }
}

.trans-nav .third-nav-link>a {
    color: #000
}

.trans-nav .third-nav-link>a::before {
    border-color: #cf122e
}

.trans-nav .second-nav-item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 28.125%;
    background: rgba(87, 86, 79, .9)
}

@media only screen and (min-width:1001px) {
    .trans-nav .second-nav-item {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .second-nav-item {
        width: auto
    }

    [data-script-enabled=true] .trans-nav .second-nav-item {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        background: #fff;
        display: none
    }
}

.trans-nav .second-nav-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.toggle-nav .third-nav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -50px;
    margin-bottom: -10px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 10px
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav {
        display: block;
        margin-left: 0;
        margin-bottom: 0;
        padding-top: 0
    }
}

.toggle-nav .third-nav>li {
    padding-left: 50px;
    padding-bottom: 10px;
    width: 25%;
    line-height: 1.4
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li {
        width: 100%;
        padding-left: 0;
        padding-bottom: 0
    }
}

.toggle-nav .third-nav>li>a {
    text-decoration: none;
    position: relative;
    padding-left: 18px;
    display: inline-block
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li>a {
        padding: 13px 32px 12px 35px;
        border-bottom: 1px solid #c6c6c0;
        display: block;
        font-size: 1.6rem;
        background: #eee;
        text-decoration: none
    }
}

.toggle-nav .third-nav>li>a:hover,
.toggle-nav .third-nav>li>a:active,
.toggle-nav .third-nav>li>a:focus {
    text-decoration: underline
}

@media only screen and (max-width:1000px) {

    .toggle-nav .third-nav>li>a:hover,
    .toggle-nav .third-nav>li>a:active,
    .toggle-nav .third-nav>li>a:focus {
        text-decoration: none
    }
}

.toggle-nav .third-nav>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: .4em;
    left: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: -webkit-transform .2s;
    transition: transform .2s
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li>a::before {
        left: auto;
        right: 16px;
        top: 50%;
        margin-top: -4px
    }
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li.is-close>a::before {
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        margin-top: -6px
    }
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li.is-open>a {
        background: #706f67;
        color: #fff;
        font-weight: 700
    }

    :lang(en) .toggle-nav .third-nav>li.is-open>a {
        font-weight: 400;
        font-family: Arial, sans-serif
    }
}

@media only screen and (max-width:1000px) {
    .toggle-nav .third-nav>li.is-open>a::before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        margin-top: -3px;
        border-color: #fff
    }
}

.toggle-nav .third-nav>li .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

@media only screen and (max-width:1000px) {
    .toggle-nav .js-toggle-sp .fourth-nav {
        display: block
    }
}

.toggle-nav .fourth-nav {
    padding-left: 18px;
    margin-top: 8px;
    margin-bottom: -4px
}

@media only screen and (max-width:1000px) {
    .toggle-nav .fourth-nav {
        display: none;
        padding-left: 0;
        margin-top: 0;
        margin-bottom: 0
    }
}

.toggle-nav .fourth-nav>li {
    line-height: 1.4;
    padding-bottom: 4px
}

@media only screen and (max-width:1000px) {
    .toggle-nav .fourth-nav>li {
        padding-bottom: 0
    }
}

.toggle-nav .fourth-nav>li>a {
    text-decoration: none;
    position: relative;
    padding-left: 18px;
    display: inline-block;
    font-size: 1.6rem
}

@media only screen and (max-width:1000px) {
    .toggle-nav .fourth-nav>li>a {
        padding: 13px 32px 12px 35px;
        border-bottom: 1px solid #c6c6c0;
        display: block;
        font-size: 1.6rem;
        background: #fff;
        text-decoration: none
    }
}

.toggle-nav .fourth-nav>li>a:hover,
.toggle-nav .fourth-nav>li>a:active,
.toggle-nav .fourth-nav>li>a:focus {
    text-decoration: underline
}

.toggle-nav .fourth-nav>li>a:hover:hover,
.toggle-nav .fourth-nav>li>a:hover:active,
.toggle-nav .fourth-nav>li>a:hover:focus,
.toggle-nav .fourth-nav>li>a:active:hover,
.toggle-nav .fourth-nav>li>a:active:active,
.toggle-nav .fourth-nav>li>a:active:focus,
.toggle-nav .fourth-nav>li>a:focus:hover,
.toggle-nav .fourth-nav>li>a:focus:active,
.toggle-nav .fourth-nav>li>a:focus:focus {
    text-decoration: none
}

.toggle-nav .fourth-nav>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: .4em;
    left: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media only screen and (max-width:1000px) {
    .toggle-nav .fourth-nav>li>a::before {
        left: auto;
        right: 16px;
        top: 50%;
        margin-top: -4px
    }
}

.trans-nav .third-nav {
    width: 100%
}

.trans-nav .third-nav>li {
    line-height: 1.4;
    position: relative
}

.trans-nav .third-nav>li>a {
    text-decoration: none;
    position: relative;
    display: block;
    padding: 16px 36px 15px 20px;
    color: #fff
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-nav>li>a {
        padding: 11px 30px 11px 16px;
        background: #eee;
        color: inherit;
        border-bottom: 1px solid #c6c6c0
    }
}

.trans-nav .third-nav>li>a:hover,
.trans-nav .third-nav>li>a:active,
.trans-nav .third-nav>li>a:focus {
    text-decoration: underline
}

.trans-nav .third-nav>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-nav>li>a::before {
        right: 16px;
        width: 12px;
        height: 12px;
        margin-top: -7px;
        border-color: #cf122e
    }
}

.trans-nav .third-nav>li.is-active {
    background: #fff;
    opacity: .9
}

.trans-nav .third-nav>li.is-active::before {
    display: none
}

.trans-nav .third-nav>li.is-active>a {
    background: none;
    color: inherit;
    border-left: 3px solid rgba(87, 86, 79, .85);
    font-weight: 700
}

:lang(en) .trans-nav .third-nav>li.is-active>a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-nav>li.is-active>a {
        border-left: 0;
        font-weight: 400;
        background: #eee
    }

    :lang(en) .trans-nav .third-nav>li.is-active>a {
        font-family: Arial, sans-serif
    }
}

.trans-nav .third-nav>li.is-active>a::before {
    border-color: #cf122e
}

.trans-nav .third-detail-wrapper {
    width: 71.875%
}

@media only screen and (min-width:1001px) {
    .trans-nav .third-detail-wrapper {
        display: block !important
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail-wrapper {
        width: auto;
        background: #eee;
        width: 100%;
        z-index: 1;
        top: 0
    }

    [data-script-enabled=true] .trans-nav .third-detail-wrapper {
        position: absolute;
        left: 200%
    }
}

[data-browser=IE11] .is-pos2 .dd-content.is-visible .third-detail-wrapper {
    display: block !important
}

.trans-nav .third-detail {
    padding: 26px 48px 48px 30px
}

.trans-nav .third-detail.diff-has-nav {
    padding: 0;
    height: 100%
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail.diff-has-nav {
        height: auto
    }
}

[data-script-enabled=true] .trans-nav .third-detail {
    display: none
}

.trans-nav .third-detail.is-active {
    display: block
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail {
        padding: 14px 16px 22px;
        border-bottom: 1px solid #c6c6c0
    }
}

.trans-nav .third-detail-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail-inner {
        display: block
    }
}

.trans-nav .third-detail-inner>*+* {
    margin-left: 40px
}

.trans-nav .third-detail-inner>*+*>* {
    margin-bottom: 10px
}

.trans-nav .third-detail-inner>*+*>*:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail-inner>*+* {
        margin-left: 0;
        margin-top: 26px
    }
}

.trans-nav .third-detail-inner img {
    max-width: inherit
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-detail-inner img {
        max-width: 100%
    }
}

.trans-nav .diff-has-nav>.third-detail-inner {
    height: 100%
}

@media only screen and (max-width:1000px) {
    .trans-nav .diff-has-nav>.third-detail-inner {
        height: auto
    }
}

.trans-nav .third-nav-item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 45.45455%
}

@media only screen and (min-width:1001px) {
    .trans-nav .third-nav-item {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .third-nav-item {
        width: auto
    }

    [data-script-enabled=true] .trans-nav .third-nav-item {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        background: #fff
    }
}

@media only screen and (max-width:1000px) {
    [data-browser=IE11] .dd-content.is-visible .third-nav-item {
        display: block !important
    }
}

.trans-nav .fourth-nav-item {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%
}

@media only screen and (min-width:1001px) {
    .trans-nav .fourth-nav-item {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-nav-item {
        width: auto
    }

    [data-script-enabled=true] .trans-nav .fourth-nav-item {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        background: #fff;
        height: auto
    }
}

.trans-nav .fourth-nav {
    width: 100%
}

.trans-nav .fourth-nav>li {
    line-height: 1.4;
    position: relative
}

.trans-nav .fourth-nav>li>a {
    text-decoration: none;
    position: relative;
    display: block;
    padding: 16px 36px 15px 20px;
    color: #000
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-nav>li>a {
        padding: 11px 30px 11px 16px;
        background: #eee;
        color: inherit;
        border-bottom: 1px solid #c6c6c0
    }
}

.trans-nav .fourth-nav>li>a:hover,
.trans-nav .fourth-nav>li>a:active,
.trans-nav .fourth-nav>li>a:focus {
    text-decoration: underline
}

.trans-nav .fourth-nav>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-nav>li>a::before {
        right: 16px;
        width: 12px;
        height: 12px;
        margin-top: -7px;
        border-color: #cf122e
    }
}

.trans-nav .fourth-nav>li.is-active::before {
    display: none
}

.trans-nav .fourth-nav>li.is-active>a {
    background: #fff;
    color: inherit;
    font-weight: 700
}

:lang(en) .trans-nav .fourth-nav>li.is-active>a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-nav>li.is-active>a {
        border-left: 0;
        font-weight: 400;
        background: #eee
    }

    :lang(en) .trans-nav .fourth-nav>li.is-active>a {
        font-family: Arial, sans-serif
    }
}

.trans-nav .fourth-nav>li.is-active>a::before {
    border-color: #cf122e
}

.trans-nav .fourth-detail-wrapper {
    width: 54.54545%;
    margin-left: 0;
    background: #fff
}

@media only screen and (min-width:1001px) {
    .trans-nav .fourth-detail-wrapper {
        display: block !important
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-detail-wrapper {
        height: auto !important;
        background: #eee;
        width: 100%;
        z-index: 1;
        top: 0;
        margin-top: 0
    }

    [data-script-enabled=true] .trans-nav .fourth-detail-wrapper {
        position: absolute;
        left: 100%
    }
}

[data-browser=IE11] .is-pos3 .dd-content.is-visible .fourth-detail-wrapper {
    display: block !important
}

.trans-nav .fourth-detail {
    padding: 26px 48px 0 30px;
    height: 100%
}

[data-script-enabled=true] .trans-nav .fourth-detail {
    display: none
}

.trans-nav .fourth-detail.is-active {
    display: block
}

@media only screen and (max-width:1000px) {
    .trans-nav .fourth-detail {
        padding: 14px 16px 22px;
        border-bottom: 1px solid #c6c6c0
    }
}

.trans-nav .fifth-nav>li {
    margin-bottom: 10px;
    line-height: 1.4
}

.trans-nav .fifth-nav>li:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:1000px) {
    .trans-nav .fifth-nav>li {
        margin-bottom: 0
    }
}

@media only screen and (max-width:1000px) {
    .trans-nav .fifth-nav>li>a {
        position: relative;
        display: block;
        padding: 11px 30px 11px 16px;
        background: #eee;
        color: inherit;
        border-bottom: 1px solid #c6c6c0;
        text-decoration: none
    }
}

.trans-nav .fifth-nav>li>a:hover,
.trans-nav .fifth-nav>li>a:active,
.trans-nav .fifth-nav>li>a:focus {
    text-decoration: underline
}

.trans-nav .fifth-nav>li>a::before {
    display: block;
    position: absolute;
    content: ""
}

@media only screen and (max-width:1000px) {
    .trans-nav .fifth-nav>li>a::before {
        top: 50%;
        right: 16px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #cf122e;
        border-right: 2px solid #cf122e;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        margin-top: -7px
    }
}

.desc-list-main {
    line-height: 1.5
}

@media only screen and (max-width:1000px) {
    .desc-list-main {
        color: #000
    }

    .desc-list-main.diff-idx {
        padding: 20px 16px
    }
}

.desc-list-main>dt {
    font-size: 3.2rem;
    margin-bottom: 18px;
    font-weight: 700;
    line-height: 1.3
}

:lang(en) .desc-list-main>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    .desc-list-main>dt {
        font-size: 2.4rem;
        margin-bottom: 12px
    }
}

.desc-list-main>dt .detail-btn {
    display: inline-block;
    font-size: 1.8rem;
    margin-left: 22px;
    margin-top: 0;
    vertical-align: middle;
    font-weight: 400
}

@media only screen and (max-width:767px) {
    .desc-list-main>dt .detail-btn {
        display: block;
        margin-left: 0;
        margin-top: 6px;
        font-size: 1.6rem
    }
}

.desc-list-main>dt .detail-btn>a {
    padding-top: 5px;
    padding-bottom: 5px;
    display: inline-block
}

@media only screen and (max-width:1000px) {
    .desc-list-main>dd {
        font-size: 1.6rem
    }
}

.desc-list-main>dd>.detail-btn:first-child {
    margin-top: 30px
}

@media only screen and (max-width:1000px) {
    .desc-list-main>dd>.detail-btn:first-child {
        margin-top: 24px
    }
}

.desc-list-main>dd>*:not(br)+*,
.desc-list-main>dd>*:first-child:not(br) {
    margin-top: 12px
}

.desc-list-main>dd .news-list>li {
    margin-bottom: 18px
}

.desc-list-main>dd .news-list>li:last-child {
    margin-bottom: 0
}

.desc-list-main .idx-item {
    margin-top: 30px;
    margin-left: -12px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.desc-list-main .idx-item:first-child {
    margin-top: 0
}

@media only screen and (max-width:480px) {
    .desc-list-main .idx-item {
        margin-left: 0
    }

    .desc-list-main .idx-item img:not(.icon-a) {
        width: 100%
    }
}

.desc-list-main .idx-item.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:480px) {
    .desc-list-main .idx-item.diff-col2>* {
        width: 100%
    }
}

.desc-list-main .idx-item.diff-col3>* {
    width: 33.333333%
}

@media only screen and (max-width:480px) {
    .desc-list-main .idx-item.diff-col3>* {
        width: 100%
    }
}

.desc-list-main .idx-item.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:767px) {
    .desc-list-main .idx-item.diff-col4>* {
        width: 100%
    }

    .desc-list-main .idx-item.diff-col4>* img:not(.icon-a) {
        width: 100%
    }
}

.desc-list-main .idx-item>li {
    text-align: center;
    padding-left: 12px;
    padding-bottom: 12px;
    width: 100%
}

@media only screen and (max-width:480px) {
    .desc-list-main .idx-item>li {
        padding-left: 0
    }

    .desc-list-main .idx-item>li:last-child {
        padding-bottom: 0
    }
}

.desc-list-main .idx-item>li a {
    text-decoration: none
}

.desc-list-main .idx-item .desc-box {
    position: relative;
    background: #666;
    width: 100%;
    color: #fff;
    line-height: 1.5;
    padding: 8px 32px 7px 16px;
    text-align: left
}

.desc-list-main .idx-item .desc-box::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px
}

.desc-list-sub {
    line-height: 1.5
}

@media only screen and (max-width:1000px) {
    .desc-list-sub {
        color: #000
    }
}

.desc-list-sub>dt {
    margin-bottom: 10px;
    padding-top: 8px;
    font-weight: 700
}

:lang(en) .desc-list-sub>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    .desc-list-sub>dt {
        padding-top: 0
    }
}

.desc-list-sub>dd>*+* {
    margin-top: 12px
}

.detail-btn {
    margin-top: 30px
}

.detail-btn+.detail-btn {
    margin-top: 8px
}

@media only screen and (max-width:1000px) {
    .detail-btn {
        margin-top: 24px
    }
}

.detail-btn>a {
    background: #fff;
    border: 1px solid #cf122e;
    text-align: center;
    padding: 8px 34px 8px 22px;
    color: #cf122e;
    text-decoration: none;
    display: inline-block;
    position: relative;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    transition: background-color .2s
}

@media only screen and (max-width:1000px) {
    .detail-btn>a {
        display: block
    }
}

.detail-btn>a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px
}

.detail-btn>a:hover,
.detail-btn>a:active,
.detail-btn>a:focus {
    background: #f6cfd3
}

.hero-area-a {
    max-height: 320px;
    height: 25vw;
    background-size: auto 100% !important
}

.hero-area-a+* {
    margin-top: 30px
}

@media only screen and (min-width:1600px) {
    .hero-area-a {
        height: 20vw;
        background-size: 100% auto !important
    }
}

@media only screen and (max-width:1000px) {
    .hero-area-a {
        height: 32vw
    }
}

@media only screen and (max-width:767px) {
    .hero-area-a {
        height: 41.72099vw
    }
}

@media only screen and (max-width:480px) {
    .hero-area-a {
        max-height: 120px;
        height: 37.5vw
    }
}

.hero-area-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    overflow: hidden;
    max-height: 420px;
    min-height: 420px
}

.hero-area-b.diff-slide-into {
    max-height: 520px;
    min-height: 520px
}

@media only screen and (max-width:767px) {
    .hero-area-b.diff-slide-into {
        height: auto;
        max-height: inherit;
        min-height: inherit
    }
}

@media only screen and (max-width:767px) {
    .hero-area-b {
        height: auto;
        max-height: inherit;
        min-height: inherit
    }
}

.hero-area-b+* {
    margin-top: 30px
}

.hero-area-b .content {
    padding-top: 73px;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    z-index: 1
}

@media only screen and (max-width:767px) {
    .hero-area-b .content {
        padding-top: 0
    }
}

@media only screen and (max-width:767px) {
    .hero-area-b .content .content-inner {
        background: #eee;
        padding: 20px 16px 30px
    }
}

.hero-area-b .content .main-txt {
    margin-bottom: 8px
}

.hero-area-b .content .main-txt>* {
    font-size: 4rem;
    color: #fff;
    display: inline-block;
    background: rgba(0, 0, 0, .6);
    line-height: 1.3;
    padding: 0 5px;
    font-weight: 700
}

:lang(en) .hero-area-b .content .main-txt>* {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .hero-area-b .content .main-txt>* {
        font-size: 2.4rem;
        background: none;
        color: #000
    }
}

.hero-area-b .content .sub-txt>* {
    font-size: 2rem;
    color: #fff;
    display: inline-block;
    background: rgba(0, 0, 0, .6);
    line-height: 1.3;
    padding: 4px 5px;
    font-weight: 700
}

:lang(en) .hero-area-b .content .sub-txt>* {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .hero-area-b .content .sub-txt>* {
        font-size: 1.6rem;
        background: none;
        color: #000
    }
}

.hero-area-b .content .btn-area {
    margin-top: 40px
}

@media only screen and (max-width:767px) {
    .hero-area-b .content .btn-area {
        margin-top: 20px
    }
}

.hero-area-b .content .btn-a {
    background: rgba(255, 255, 255, .9);
    border: 0;
    padding-top: 11px;
    padding-bottom: 11px
}

.hero-area-b .visual {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

@media only screen and (max-width:767px) {
    .hero-area-b .visual {
        position: relative;
        max-height: 430px;
        height: calc(430vw*100/767);
        left: inherit;
        top: inherit;
        min-height: 100%
    }
}

@media only screen and (max-width:320px) {
    .hero-area-b .visual {
        max-height: 180px
    }
}

.hero-area-b .visual>a {
    display: block;
    height: 100%
}

.hero-area-b .visual>img,
.hero-area-b .visual>a>img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    z-index: -1;
    min-width: 1600px
}

@media only screen and (max-width:1280px) {

    .hero-area-b .visual>img,
    .hero-area-b .visual>a>img {
        width: auto;
        height: 100%;
        max-width: inherit;
        min-width: inherit;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.hero-area-b .panel-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 100%
}

@media only screen and (max-width:767px) {
    .hero-area-b .panel-wrapper {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

.hero-area-b .panel {
    max-width: 460px;
    min-height: 420px;
    background: #cf122e;
    color: #fff;
    position: relative;
    height: 100%;
    padding: 46px 56px 46px 38px;
    z-index: 1;
    box-shadow: 0 0 16px rgba(0, 0, 0, .32)
}

@media only screen and (max-width:1000px) {
    .hero-area-b .panel {
        margin-right: 0;
        max-width: 400px
    }
}

@media only screen and (max-width:767px) {
    .hero-area-b .panel {
        max-width: inherit;
        width: 100%;
        min-height: inherit;
        padding: 16px;
        height: auto;
        box-shadow: none
    }
}

.hero-area-b .panel .txt-block {
    line-height: 2
}

.hero-area-b .panel .txt-block>*+* {
    margin-top: 10px !important
}

.hero-area-b .panel .txt-block+* {
    margin-top: 20px
}

.hero-area-b .panel .main-txt {
    font-size: 3.2rem;
    line-height: 1.3;
    font-weight: 700;
    margin-bottom: 4px
}

:lang(en) .hero-area-b .panel .main-txt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .hero-area-b .panel .main-txt {
        font-size: 2.4rem;
        margin-bottom: 8px
    }
}

.hero-area-b .panel .sub-txt {
    font-size: 1.8rem;
    font-weight: 700;
    margin-top: 0 !important
}

:lang(en) .hero-area-b .panel .sub-txt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .hero-area-b .panel .sub-txt {
        font-size: 1.6rem
    }
}

.hero-area-b .panel .desc {
    font-size: 1.6rem
}

@media only screen and (max-width:767px) {
    .hero-area-b .panel .desc {
        font-size: 1.4rem
    }
}

.hero-area-b.diff-has-video {
    overflow: inherit;
    height: auto;
    max-height: inherit
}

[data-script-enabled=true] .hero-area-b.diff-has-video {
    overflow: hidden;
    max-height: 420px;
    height: calc(420vw*100/1280)
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] .hero-area-b.diff-has-video {
        max-height: inherit;
        height: auto
    }
}

.hero-area-b.diff-has-video .visual {
    position: static;
    z-index: 0
}

[data-script-enabled=true] .hero-area-b.diff-has-video .visual {
    position: absolute;
    z-index: -1
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] .hero-area-b.diff-has-video .visual {
        position: static
    }
}

.hero-area-b.diff-has-video video {
    width: 100%
}

@media only screen and (max-width:767px) {
    .hero-area-b.diff-has-video video {
        display: none
    }
}

[data-script-enabled=true] .hero-area-b.diff-has-video video {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    min-width: 1600px
}

@media only screen and (max-width:1280px) {
    [data-script-enabled=true] .hero-area-b.diff-has-video video {
        min-width: inherit;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.hero-area-b.diff-has-video .controller {
    max-width: 1280px;
    margin: 0 auto;
    position: absolute;
    height: 100%;
    width: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:767px) {
    .hero-area-b.diff-has-video .controller {
        display: none
    }
}

.hero-area-b.diff-has-video .controller .controller-inner {
    position: absolute;
    bottom: 20px;
    left: 0;
    background: rgba(0, 0, 0, .7);
    width: 40px;
    height: 40px;
    padding: 0;
    z-index: 1
}

@media only screen and (max-width:1280px) {
    .hero-area-b.diff-has-video .controller .controller-inner {
        left: 8px
    }
}

.hero-area-b.diff-has-video .controller .controller-inner img {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto
}

.hero-area-b.diff-has-video .video-thumb {
    display: none
}

@media only screen and (max-width:767px) {
    .hero-area-b.diff-has-video .video-thumb {
        display: block
    }
}

.hero-area-b.diff-has-video .video-thumb img {
    width: 100%
}

.hero-area-c {
    min-height: 400px
}

@media only screen and (max-width:1280px) {
    .hero-area-c {
        min-height: inherit;
        max-height: 400px;
        height: calc(400vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .hero-area-c {
        height: auto;
        max-height: inherit;
        overflow: hidden;
        color: #fff
    }
}

.hero-area-c+* {
    margin-top: 30px
}

.hero-area-c.diff-color-a {
    color: #fff
}

@media only screen and (max-width:767px) {
    .hero-area-c.diff-color-a {
        color: #000
    }

    .hero-area-c.diff-color-a .content-inner {
        background: #eee
    }
}

.hero-area-c .content {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 100%;
    padding-top: 40px
}

@media only screen and (max-width:767px) {
    .hero-area-c .content {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        padding-top: calc(220vw*100/320)
    }
}

.hero-area-c .content-inner {
    max-width: 560px
}

@media only screen and (max-width:1280px) {
    .hero-area-c .content-inner {
        margin-left: 8px
    }
}

@media only screen and (max-width:767px) {
    .hero-area-c .content-inner {
        padding: 20px 16px 30px;
        background: #57564f;
        max-width: inherit;
        margin-left: 0
    }
}

.hero-area-c .content-inner .main-txt,
.hero-area-c .content-inner .main-txt>* {
    font-size: 4rem;
    line-height: 1.3
}

@media only screen and (max-width:1280px) {

    .hero-area-c .content-inner .main-txt,
    .hero-area-c .content-inner .main-txt>* {
        font-size: calc(40vw*100/1280)
    }
}

@media only screen and (max-width:767px) {

    .hero-area-c .content-inner .main-txt,
    .hero-area-c .content-inner .main-txt>* {
        font-size: 2.4rem
    }
}

.hero-area-c .content-inner .main-txt {
    margin-bottom: 16px
}

@media only screen and (max-width:767px) {
    .hero-area-c .content-inner .main-txt {
        margin-bottom: 12px
    }
}

.hero-area-c .content-inner .sub-txt,
.hero-area-c .content-inner .sub-txt>* {
    font-size: 2rem;
    line-height: 1.3;
    font-weight: 700
}

:lang(en) .hero-area-c .content-inner .sub-txt,
:lang(en) .hero-area-c .content-inner .sub-txt>* {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1280px) {

    .hero-area-c .content-inner .sub-txt,
    .hero-area-c .content-inner .sub-txt>* {
        font-size: calc(20vw*100/1280)
    }
}

@media only screen and (max-width:767px) {

    .hero-area-c .content-inner .sub-txt,
    .hero-area-c .content-inner .sub-txt>* {
        font-size: 1.6rem
    }
}

.hero-area-c .brand {
    margin: 0 40px 0 60px
}

@media only screen and (max-width:1280px) {
    .hero-area-c .brand {
        margin: 0 calc(40vw*100/1280) 0 calc(60vw * 100 / 1280)
    }
}

@media only screen and (max-width:767px) {
    .hero-area-c .brand {
        position: absolute;
        left: 15px;
        top: 15px;
        margin: 0
    }
}

.hero-area-c .brand img {
    max-width: inherit
}

@media only screen and (max-width:1280px) {
    .hero-area-c .brand img {
        width: calc(242vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .hero-area-c .brand img {
        width: calc(106vw*100/320)
    }
}

.hero-area-c .visual {
    position: absolute;
    top: 0;
    left: 0;
    min-height: 400px;
    width: 100%
}

@media only screen and (max-width:1280px) {
    .hero-area-c .visual {
        min-height: inherit;
        height: calc(400vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .hero-area-c .visual {
        height: calc(220vw*100/320)
    }
}

.hero-area-c .visual>img {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    max-width: inherit;
    height: 100%;
    display: block
}

@media only screen and (max-width:767px) {
    .hero-area-c .visual>img {
        right: calc(-60vw*100/320)
    }
}

.breadcrumb-wrapper {
    max-width: 1280px;
    margin: 16px auto 0
}

@media only screen and (max-width:1280px) {
    .breadcrumb-wrapper {
        padding: 0 8px
    }
}

@media only screen and (max-width:1000px) {
    .breadcrumb-wrapper {
        margin-top: 10px;
        padding: 0 16px
    }
}

.hero-area-a .breadcrumb-wrapper {
    margin-top: 0;
    padding-top: 16px
}

@media only screen and (max-width:1280px) {
    .hero-area-a .breadcrumb-wrapper {
        padding: 16px 8px 0
    }
}

@media only screen and (max-width:1000px) {
    .hero-area-a .breadcrumb-wrapper {
        padding: 16px 16px 0
    }
}

.breadcrumb {
    font-size: 1.2rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 -12px -36px;
    position: relative
}

.breadcrumb>li {
    line-height: 1.3;
    margin: 0 0 12px 36px;
    position: relative
}

.hero-area-a .breadcrumb>li {
    color: #fff
}

.breadcrumb>li::before,
.breadcrumb>li::after {
    display: block;
    position: absolute;
    content: "";
    right: -22px;
    top: 50%;
    width: 8px;
    height: 1px;
    background: #000
}

.hero-area-a .breadcrumb>li::before,
.hero-area-a .breadcrumb>li::after {
    background: #fff
}

.breadcrumb>li::before {
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    margin-top: -4px
}

.breadcrumb>li::after {
    -webkit-transform: rotate(150deg);
    transform: rotate(150deg)
}

.breadcrumb>li:last-child::before,
.breadcrumb>li:last-child::after {
    display: none
}

.breadcrumb>li>span {
    font-weight: 700
}

:lang(en) .breadcrumb>li>span {
    font-weight: 700;
    font-family: Arial, sans-serif
}

.breadcrumb a {
    text-decoration: none
}

.hero-area-a .breadcrumb a {
    color: #fff;
    text-decoration: underline
}

.hero-area-a .breadcrumb a:hover,
.hero-area-a .breadcrumb a:active,
.hero-area-a .breadcrumb a:focus {
    text-decoration: none
}

.breadcrumb a:hover,
.breadcrumb a:active,
.breadcrumb a:focus {
    text-decoration: underline
}

#footer-conversion {
    max-width: 1280px;
    margin: -40px auto 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    z-index: 200
}

#footer-conversion.is-fixed {
    display: block;
    position: fixed;
    width: 100%;
    max-width: inherit;
    bottom: 0;
    right: 0;
    z-index: 2000
}

@media only screen and (max-width:480px) {
    #footer-conversion {
        margin-top: 0
    }
}

#footer-conversion-inner {
    max-width: inherit
}

@media only screen and (max-width:767px) {
    #footer-conversion-inner {
        width: 100%
    }
}

.is-fixed #footer-conversion-inner {
    position: relative;
    z-index: 1;
    max-width: 1280px;
    margin: 0 auto
}

@media only screen and (max-width:767px) {
    .is-fixed #footer-conversion-inner {
        right: 0
    }
}

.is-fixed #footer-conversion-inner .conv-list {
    position: absolute;
    right: 0;
    bottom: -1px
}

#footer-conversion .conv-list {
    display: table;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    position: relative;
    width: 100%;
    table-layout: fixed
}

[data-script-enabled=true] #footer-conversion .conv-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: auto
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-list {
        display: block
    }

    [data-script-enabled=true] #footer-conversion .conv-list {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%
    }
}

#footer-conversion .conv-list>li {
    padding-left: 8px;
    display: table-cell;
    vertical-align: bottom
}

[data-script-enabled=true] #footer-conversion .conv-list>li {
    display: block;
    margin-left: 8px;
    padding-left: 0
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-list>li {
        width: 100%;
        margin-left: 0;
        display: block
    }

    [data-script-enabled=true] #footer-conversion .conv-list>li {
        margin-left: 0
    }
}

#footer-conversion .conv-list>li:first-child {
    padding-left: 0
}

[data-script-enabled=true] #footer-conversion .conv-list>li:first-child {
    margin-left: 0
}

#footer-conversion .conv-list>li>a,
#footer-conversion .conv-list>li>button {
    text-decoration: none;
    color: #fff;
    display: inline-block;
    /*  padding: 9px 22px 8px 54px;     */
    padding: 9px 38px 8px;
    line-height: 1.3;
    position: relative
}

/*
@media only screen and (max-width:767px) {

    #footer-conversion .conv-list>li>a,
    #footer-conversion .conv-list>li>button {
        display: block;
        text-align: center;
        padding: 13px 20px 12px 6px
    }
}

#footer-conversion .conv-list>li>a::before,
#footer-conversion .conv-list>li>button::before {
    display: block;
    position: absolute;
    content: ""
}

@media only screen and (max-width:767px) {

    #footer-conversion .conv-list>li>a::before,
    #footer-conversion .conv-list>li>button::before {
        display: inline-block;
        position: static;
        margin: 0 10px -4px 0
    }
}
*/

#footer-conversion .conv-list>li>a>.open-txt,
#footer-conversion .conv-list>li>button>.open-txt {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 1rem;
    z-index: -1;
    opacity: 0
}

#footer-conversion li.conversion {
    text-align: right;
    position: relative;
    min-width: 168px
}

@media only screen and (max-width:767px) {
    #footer-conversion li.conversion {
        text-align: left;
        position: static;
        min-width: inherit
    }
}

@media only screen and (max-width:767px) {
    #footer-conversion li.conversion+li.conversion {
        border-left: 1px solid #fff
    }
}

#footer-conversion li.conversion>a,
#footer-conversion li.conversion>button {
    background: #cf122e;
    display: none;
    text-align: center;
    transition: background .2s
}

[data-script-enabled=true] #footer-conversion li.conversion>a,
[data-script-enabled=true] #footer-conversion li.conversion>button {
    display: inline-block
}

@media only screen and (min-width:768px) {

    [data-script-enabled=true] #footer-conversion li.conversion>a,
    [data-script-enabled=true] #footer-conversion li.conversion>button {
        height: auto !important
    }
}

@media only screen and (max-width:767px) {

    [data-script-enabled=true] #footer-conversion li.conversion>a,
    [data-script-enabled=true] #footer-conversion li.conversion>button {
        display: block;
        width: 100%
    }
}

@media only screen and (max-width:767px) {

    #footer-conversion li.conversion>a,
    #footer-conversion li.conversion>button {
        max-width: inherit;
        font-size: 1.4rem
    }
}

#footer-conversion li.conversion>a.register::before,
#footer-conversion li.conversion>button.register::before {
    background-position: -81px 0;
    width: 20px;
    height: 20px;
    left: 18px;
    top: 50%;
    margin-top: -10px
}

#footer-conversion li.conversion>a.register:hover,
#footer-conversion li.conversion>a.register:active,
#footer-conversion li.conversion>a.register:focus,
#footer-conversion li.conversion>button.register:hover,
#footer-conversion li.conversion>button.register:active,
#footer-conversion li.conversion>button.register:focus {
    background: #E27182;
}

#footer-conversion li.conversion>a.contact,
#footer-conversion li.conversion>button.contact {
    min-width: 168px
}

@media only screen and (max-width:767px) {

    #footer-conversion li.conversion>a.contact,
    #footer-conversion li.conversion>button.contact {
        min-width: inherit
    }
}

#footer-conversion li.conversion>a.contact::before,
#footer-conversion li.conversion>button.contact::before {
    background-position: -25px -50px;
    width: 20px;
    height: 20px;
    left: 22px;
    top: 50%;
    margin-top: -10px
}

#footer-conversion li.conversion>a.contact:hover,
#footer-conversion li.conversion>a.contact:active,
#footer-conversion li.conversion>a.contact:focus,
#footer-conversion li.conversion>button.contact:hover,
#footer-conversion li.conversion>button.contact:active,
#footer-conversion li.conversion>button.contact:focus {
    background: #E27182
}

#footer-conversion li.conversion>a.support,
#footer-conversion li.conversion>button.support {
    min-width: 168px
}

@media only screen and (max-width:767px) {

    #footer-conversion li.conversion>a.support,
    #footer-conversion li.conversion>button.support {
        min-width: inherit
    }
}

#footer-conversion li.conversion>a.support::before,
#footer-conversion li.conversion>button.support::before {
    background-position: -81px -50px;
    width: 20px;
    height: 20px;
    left: 26px;
    top: 50%;
    margin-top: -10px
}

#footer-conversion li.conversion>a.support:hover,
#footer-conversion li.conversion>a.support:active,
#footer-conversion li.conversion>a.support:focus,
#footer-conversion li.conversion>button.support:hover,
#footer-conversion li.conversion>button.support:active,
#footer-conversion li.conversion>button.support:focus {
    background: #E27182
}

#footer-conversion li.conversion>a.download,
#footer-conversion li.conversion>button.download {
    min-width: 168px
}

@media only screen and (max-width:767px) {

    #footer-conversion li.conversion>a.download,
    #footer-conversion li.conversion>button.download {
        min-width: inherit
    }
}

#footer-conversion li.conversion>a.download::before,
#footer-conversion li.conversion>button.download::before {
    background-position: -25px -25px;
    width: 20px;
    height: 20px;
    left: 22px;
    top: 50%;
    margin-top: -10px
}

#footer-conversion li.conversion>a.download:hover,
#footer-conversion li.conversion>a.download:active,
#footer-conversion li.conversion>a.download:focus,
#footer-conversion li.conversion>button.download:hover,
#footer-conversion li.conversion>button.download:active,
#footer-conversion li.conversion>button.download:focus {
    background: #E27182
}

#footer-conversion li.conversion.is-open>a,
#footer-conversion li.conversion.is-open>button {
    display: none
}

#footer-conversion li.login>a,
#footer-conversion li.login>button {
    background: #706f67;
    transition: background .2s
}

#footer-conversion li.login>a::before,
#footer-conversion li.login>button::before {
    background-position: -28px 0;
    width: 23px;
    height: 20px;
    left: 18px;
    top: 50%;
    margin-top: -10px
}

#footer-conversion li.login>a:hover,
#footer-conversion li.login>a:active,
#footer-conversion li.login>a:focus,
#footer-conversion li.login>button:hover,
#footer-conversion li.login>button:active,
#footer-conversion li.login>button:focus {
    background: #57564f
}

[data-script-enabled=true] #footer-conversion .conv-content-wrapper {
    display: none;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] #footer-conversion .conv-content-wrapper {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-list>li+li>.conv-content-wrapper {
        text-align: right
    }
}

#footer-conversion .conv-content {
    text-align: left;
    background: rgba(255, 255, 255, .96);
    max-width: 600px;
    padding: 24px 32px 26px;
    position: static;
    box-shadow: 0 -5px 40px -5px rgba(0, 0, 0, .26);
    z-index: 1
}

[data-script-enabled=true] #footer-conversion .conv-content {
    width: 600px
}

@media only screen and (max-width:1000px) {
    [data-script-enabled=true] #footer-conversion .conv-content {
        width: 500px
    }
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] #footer-conversion .conv-content {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content {
        padding: 24px 16px 26px;
        width: 100%;
        max-width: inherit
    }
}

#footer-conversion .conv-content>*:last-child {
    margin-bottom: 0
}

#footer-conversion .conv-content .desc-list {
    line-height: 1.5;
    margin-bottom: 40px
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content .desc-list {
        margin-bottom: 32px
    }
}

#footer-conversion .conv-content .desc-list dt {
    font-size: 2.4rem;
    margin-bottom: 8px;
    font-weight: 700
}

:lang(en) #footer-conversion .conv-content .desc-list dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content .desc-list dt {
        font-size: 2rem
    }
}

#footer-conversion .conv-content .btn {
    margin: 0 auto 24px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .17);
    max-width: 400px
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content .btn {
        max-width: inherit
    }
}

#footer-conversion .conv-content .btn a {
    background: #cf122e;
    display: block;
    color: #fff;
    text-decoration: none;
    font-size: 2rem;
    text-align: center;
    padding: 10px 10px 10px 0;
    transition: background .2s
}

#footer-conversion .conv-content .btn a:hover,
#footer-conversion .conv-content .btn a:active,
#footer-conversion .conv-content .btn a:focus {
    background: #d11124
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content .btn a {
        font-size: 1.8rem
    }
}

#footer-conversion .conv-content .btn a::before {
    display: inline-block;
    content: "";
    background-position: -81px 0;
    width: 20px;
    height: 20px;
    margin: 0 15px -3px 0
}

#footer-conversion .conv-content .links {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: wrap;
    -ms-flex: wrap;
    flex: wrap;
    margin: -10px 0 10px -30px
}

#footer-conversion .conv-content .links>li {
    margin: 10px 0 0 30px
}

#footer-conversion .conv-content .links>li a {
    text-decoration: none;
    padding-left: 20px;
    position: relative;
    display: inline-block
}

#footer-conversion .conv-content .links>li a:hover,
#footer-conversion .conv-content .links>li a:active,
#footer-conversion .conv-content .links>li a:focus {
    text-decoration: underline
}

#footer-conversion .conv-content .links>li a::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: .6em;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-content .links>li a::before {
        top: .5em
    }
}

#footer-conversion .conv-content .contact-list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -16px 0 24px -30px
}

#footer-conversion .conv-content .contact-list>li {
    line-height: 1.3;
    margin: 10px 0 0 30px
}

#footer-conversion .conv-content .contact-list>li a {
    position: relative;
    padding-left: 35px;
    display: inline-block
}

#footer-conversion .conv-content .contact-list>li a::before {
    display: block;
    position: absolute;
    content: ""
}

#footer-conversion .conv-content .contact-list>li a:hover,
#footer-conversion .conv-content .contact-list>li a:active,
#footer-conversion .conv-content .contact-list>li a:focus {
    text-decoration: none
}

#footer-conversion .conv-content .contact-list>li.contact a::before {
    background-position: -50px -50px;
    width: 20px;
    height: 20px;
    left: 0;
    top: 2px
}

#footer-conversion .conv-content .contact-list>li.mail a::before {
    background-position: -69px -75px;
    width: 20px;
    height: 16px;
    left: 0;
    top: 2px
}

#footer-conversion .conv-content .contact-list>li.tel a {
    text-decoration: none
}

#footer-conversion .conv-content .contact-list>li.tel a::before {
    background-position: -56px -25px;
    width: 20px;
    height: 20px;
    left: 0;
    top: 0
}

#footer-conversion .conv-list .close-btn {
    text-decoration: none;
    display: none;
    padding: 10px 22px 7px 46px;
    line-height: 1.3;
    max-width: 173px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 -10px 30px -10px rgba(0, 0, 0, .26);
    width: 173px
}

[data-script-enabled=true] #footer-conversion .conv-list .close-btn {
    display: inline-block
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-list .close-btn {
        width: 50%;
        max-width: inherit;
        font-size: 1.6rem
    }
}

#footer-conversion .conv-list .close-btn span {
    position: relative
}

#footer-conversion .conv-list .close-btn span::before {
    display: block;
    position: absolute;
    content: "";
    left: -30px;
    top: 50%;
    width: 20px;
    height: 2px;
    background: #706f67;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -1px
}

#footer-conversion .conv-list .close-btn span::after {
    display: block;
    position: absolute;
    content: "";
    left: -21px;
    top: 50%;
    width: 2px;
    height: 20px;
    background: #706f67;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -10px
}

#footer-conversion .conv-list>li>.contact+*>.close-btn {
    max-width: 168px;
    width: 168px
}

@media only screen and (max-width:767px) {
    #footer-conversion .conv-list>li>.contact+*>.close-btn {
        width: 50%;
        max-width: inherit
    }
}

#footer {
    /*  background: #3c3c35; --- Ricoh ---  */
   /*   background: #303233; */
    border-bottom: 4px solid #cf142b;
    /* --- Ricoh ---  */
}

#footerinner {
    color: #fff
}


#footer-content {
    text-align: center
}

@media only screen and (max-width:1000px) {
    #footer-content {
        padding: 0
    }
}

#footer-group-nav {
    /*  background: #eee --- Ricoh ---  */
    background: #f3f3f3
}

#footer-group-nav-inner {
    max-width: 1280px;
    margin: 0 auto
}

#footer-nav-a {
    padding: 24px 0 34px;
    border-bottom: 1px solid #c6c6c0
}

@media only screen and (max-width:1280px) {
    #footer-nav-a {
        padding: 24px 8px 34px
    }
}

@media only screen and (max-width:1000px) {
    #footer-nav-a {
        padding: 40px 0
    }
}

@media only screen and (max-width:480px) {
    #footer-nav-a {
        display: none
    }
}

#footer-nav-a.diff-col5>ul>li {
    width: 20%
}

@media only screen and (max-width:1000px) {
    #footer-nav-a.diff-col5>ul>li {
        width: 100%
    }
}

#footer-nav-a>ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px;
    margin-bottom: -20px;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul {
        margin-bottom: 0;
        margin-left: 0
    }
}

#footer-nav-a>ul>li {
    padding-left: 20px;
    padding-bottom: 20px;
    width: 25%;
    line-height: 1.4;
    font-size: 2rem
}

:lang(en) #footer-nav-a>ul>li {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li {
        width: 100%;
        text-align: center;
        padding-bottom: 32px;
        padding-left: 0
    }

    #footer-nav-a>ul>li:last-child {
        padding-bottom: 0
    }
}

#footer-nav-a>ul>li>a {
    text-decoration: none;
    position: relative;
    padding-left: 20px;
    display: inline-block
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>a {
        padding-left: 0
    }
}

#footer-nav-a>ul>li>a:hover,
#footer-nav-a>ul>li>a:active,
#footer-nav-a>ul>li>a:focus {
    text-decoration: underline
}

#footer-nav-a>ul>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: .5em;
    left: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>a::before {
        display: none
    }
}

#footer-nav-a>ul>li>ul {
    padding-left: 18px;
    margin-top: 18px;
    margin-bottom: -10px
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        border-top: 1px solid #c6c6c0;
        padding-left: 0;
        margin-bottom: 0;
        position: relative
    }

    #footer-nav-a>ul>li>ul::before,
    #footer-nav-a>ul>li>ul::after {
        display: block;
        position: absolute;
        content: "";
        bottom: 1px;
        left: 0;
        width: 100%;
        height: 1px
    }

    #footer-nav-a>ul>li>ul::after {
        bottom: 0;
        background: #c6c6c0
    }
}

#footer-nav-a>ul>li>ul>li {
    line-height: 1.6;
    padding-bottom: 10px;
    font-size: 1.4rem;
    font-weight: 400;
    font-family: Arial, sans-serif
}

:lang(en) #footer-nav-a>ul>li>ul>li {
    font-size: 1.6rem
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>ul>li {
        width: 50%;
        border-bottom: 1px solid #c6c6c0;
        padding-bottom: 0;
        text-align: left
    }

    #footer-nav-a>ul>li>ul>li:nth-child(odd) {
        border-right: 1px solid #c6c6c0
    }
}

#footer-nav-a>ul>li>ul>li>a {
    text-decoration: none;
    position: relative;
    padding-left: 20px;
    display: inline-block
}

#footer-nav-a>ul>li>ul>li>a:hover,
#footer-nav-a>ul>li>ul>li>a:active,
#footer-nav-a>ul>li>ul>li>a:focus {
    text-decoration: underline
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>ul>li>a {
        display: block;
        padding: 12px 16px
    }
}

#footer-nav-a>ul>li>ul>li>a::before {
    display: block;
    position: absolute;
    content: "";
    top: .4em;
    left: 0;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

:lang(en) #footer-nav-a>ul>li>ul>li>a::before {
    top: .5em
}

@media only screen and (max-width:1000px) {
    #footer-nav-a>ul>li>ul>li>a::before {
        display: none
    }
}

#footer-nav-b {
    padding: 16px 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

@media only screen and (max-width:1280px) {
    #footer-nav-b {
        padding: 16px 8px
    }
}

@media only screen and (max-width:1000px) {
    #footer-nav-b {
        padding: 0;
        display: block
    }
}

#footer-nav-b .utility {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 -8px -24px
}

@media only screen and (max-width:1000px) {
    #footer-nav-b .utility {
        display: block;
        margin: 0;
        border-top: 1px solid #c6c6c0
    }
}

#footer-nav-b .utility>li {
    margin: 0 0 8px 24px;
    font-size: 1.4rem;
    line-height: 1.2
}

@media only screen and (max-width:1000px) {
    #footer-nav-b .utility>li {
        border-bottom: 1px solid #c6c6c0;
        margin: 0
    }

    #footer-nav-b .utility>li:last-child {
        border-bottom: 0
    }
}

#footer-nav-b .utility a {
    text-decoration: none
}

#footer-nav-b .utility a:hover,
#footer-nav-b .utility a:active,
#footer-nav-b .utility a:focus {
    text-decoration: underline
}

@media only screen and (max-width:1000px) {
    #footer-nav-b .utility a {
        display: block;
        padding: 16px
    }
}

@media only screen and (max-width:1000px) {
    #footer-nav-b .utility.diff-relation {
        padding: 10px 0
    }
}

#footer-nav-b .utility.diff-relation>li {
    font-size: 1.3rem
}

@media only screen and (max-width:1000px) {
    #footer-nav-b .utility.diff-relation>li {
        border: 0
    }

    #footer-nav-b .utility.diff-relation>li a {
        padding: 10px 16px
    }
}

#footer-group-utility {
    /*    max-width: 1280px;    */
    margin: 0 auto;
    padding: 20px 0 16px;
    background: #303233;
}

#footer-group-utility>*:last-child {
    margin-bottom: 0
}

#footer-group-utility .social-content>dt {
    font-size: 1.4rem;
    color: #fff;
    font-weight: 700;
    text-align: center;
    margin-bottom: 10px;
    padding: 0 16px
}

:lang(en) #footer-group-utility .social-content>dt {
    font-weight: 400;
    font-family: Arial, sans-serif;
    font-size: 1.5rem
}

#footer-group-utility .social {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 0 -8px -24px
}

#footer-group-utility .social>li {
    margin: 0 0 8px 24px
}

#footer-group-utility .social a {
    color: #fff;
    text-decoration: none
}

#footer-group-bylaw {
    position: relative;
    /*  max-width: 1280px;  */
    margin: -1px auto 0;
    padding-bottom: 15px;
    background: #303233;
    overflow: hidden;
}

#footer-group-bylaw .copyright {
    color: #fff;
    text-align: center;
    font-size: 1.4rem
}

@media only screen and (max-width:1000px) {
    #footer-group-bylaw .copyright {
        margin-top: 8px
    }
}

#footer-group-bylaw .copyright a {
    color: inherit;
    text-decoration: none
}

#footer-group-bylaw .legal-info {
    color: #fff;
    font-size: 1.4rem;
    text-align: right;
    position: absolute;
    right: 0;
    bottom: 15px
}

@media only screen and (max-width:1280px) {
    #footer-group-bylaw .legal-info {
        right: 8px
    }
}

@media only screen and (max-width:1000px) {
    #footer-group-bylaw .legal-info {
        position: static;
        text-align: center
    }
}

#footer-group-bylaw .legal-info a {
    color: inherit;
    text-decoration: none
}

:lang(ja) #main.diff-news-temp {
    max-width: 980px;
    margin: 0 auto;
    padding-top: 36px
}

@media only screen and (max-width:1280px) {
    :lang(ja) #main.diff-news-temp {
        max-width: 996px
    }
}

.main-contents .section-inside {
    display: block;
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 40px 0
}

.main-contents>*:first-child.section:not([class*=tile-]) .section-inside {
    padding-top: 0
}

.main-contents .section-news {
    background: #fff
}

.main-contents .section:not([class*="tile-"])+.section:not([class*="tile-"]) .section-inside,
.main-contents .section-news+.sub-featurestories>.sub-featurestories-inside {
    padding-top: 0
}

@media screen and (max-width:1280px) {
    .main-contents .section-inside {
        padding-left: 8px;
        padding-right: 8px
    }
}

.main-contents .section-inside>h1:first-child,
.main-contents .section-inside>h2:first-child,
.main-contents .section-inside>h3:first-child,
.main-contents .section-inside>h4:first-child,
.main-contents .section-inside>h5:first-child,
.main-contents .section-inside>h6:first-child {
    margin-top: 0
}

.main-contents .section-inside>*:last-child {
    margin-bottom: 0
}

.main-contents .section.tile-plain-1 {
    background-color: #f3f3f3
}

.main-contents .section.tile-plain-1+.section.tile-plain-1 .section-inside {
    padding-top: 0
}

.main-contents .section.tile-plain-2 {
    background-color: #f3f3f3
}

.main-contents .section.tile-plain-2+.section.tile-plain-2 .section-inside {
    padding-top: 0
}

.main-contents .section.tile-plain-3 {
    color: #fff;
    background-color: #595959
}

.main-contents .section.tile-plain-3+.section.tile-plain-3 .section-inside {
    padding-top: 0
}

@media only screen and (min-width:1600px) {
    .main-contents .section {
        background-size: 100% auto !important
    }
}

@media only screen and (max-width:480px) {
    .main-contents .section {
        min-height: inherit !important
    }
}

.main-contents .section+.section .section-inner {
    padding-top: 0
}

.main-contents .section+.section.diff-important .section-inner {
    padding-top: 0
}

.main-contents .section+.section[class*=diff-bg-] .section-inner {
    padding-top: 56px
}

@media only screen and (max-width:767px) {
    .main-contents .section+.section[class*=diff-bg-] .section-inner {
        padding-top: 40px
    }
}

.main-contents .section[class*="diff-bg-"]+.section:not([class*="diff-bg-"]) .section-inner {
    padding-top: 56px
}

@media only screen and (max-width:767px) {
    .main-contents .section[class*="diff-bg-"]+.section:not([class*="diff-bg-"]) .section-inner {
        padding-top: 40px
    }
}

.main-contents .section[class*="diff-bg-"]+.section:not([class*="diff-bg-"]).diff-important .section-inner {
    padding-top: 28px
}

.main-contents .section.diff-bg-a {
    background: #f3f3f3;
}

.main-contents .section.diff-bg-a+.diff-bg-a .section-inner {
    padding-top: 0
}

.main-contents .section.diff-bg-b {
    background: #fff
}

.main-contents .section.diff-bg-b+.diff-bg-b .section-inner {
    padding-top: 0
}

.main-contents .section.diff-bg-c {
    background: #f3f3f3
}

.main-contents .section.diff-bg-c+.diff-bg-c .section-inner {
    padding-top: 0
}

.main-contents .section.diff-bg-d {
    background: #333;
    color: #fff
}

.main-contents .section.diff-bg-d+.diff-bg-d .section-inner {
    padding-top: 0
}

.main-contents .section.diff-bg-e {
    background: #e6e6e6
}

.main-contents .section.diff-bg-e+.diff-bg-e .section-inner {
    padding-top: 0
}

.main-contents .section.diff-bg-f {
    background: #eee
}

.main-contents .section.diff-bg-f+.diff-bg-f .section-inner {
    padding-top: 0
}

.main-contents .section.diff-important .section-inner {
    padding-top: 28px;
    padding-bottom: 32px
}

.main-contents .section.diff-margin-a .section-inner {
    padding-top: 0;
    padding-bottom: 0
}

.main-contents .section.diff-margin-b .section-inner {
    padding-top: 12px;
    padding-bottom: 0
}

@media only screen and (max-width:767px) {
    .main-contents .section.diff-margin-b .section-inner {
        padding-top: 24px;
        padding-bottom: 16px
    }
}

.main-contents .section.diff-margin-b+.hdg,
.main-contents .section.diff-margin-b+.hdg-a-wrapper {
    margin-top: 10px
}

@media only screen and (max-width:767px) {

    .main-contents .section.diff-margin-b+.hdg,
    .main-contents .section.diff-margin-b+.hdg-a-wrapper {
        margin-top: 0
    }
}

.main-contents .section.diff-margin-b+.hdg-a,
.main-contents .section.diff-margin-b+.hdg-a-wrapper .hdg-a {
    padding-top: 0
}

.main-contents .section.diff-tab-a .section-inner {
    max-width: inherit;
    padding-left: 0;
    padding-right: 0
}

.main-contents .section:last-child .section-inner {
    padding-bottom: 104px
}

@media only screen and (max-width:480px) {
    .main-contents .section:last-child .section-inner {
        padding-bottom: 88px
    }
}

.main-contents .hdg-a+.section .section-inner,
.main-contents .hdg-a-wrapper+.section .section-inner {
    padding-top: 0
}

@media only screen and (max-width:1000px) {
    .main-contents .js-nav-fixed+.section .section-inner {
        padding-top: 0
    }
}

@media only screen and (max-width:1000px) {
    .main-contents .js-nav-fixed.diff-style-a+.section .section-inner {
        padding-top: 56px
    }
}

.main-contents .section-inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 56px 0 64px
}

@media only screen and (max-width:1280px) {
    .main-contents .section-inner {
        padding: 56px 8px 64px
    }
}

@media only screen and (max-width:1000px) {
    .main-contents .section-inner {
        padding: 56px 16px 64px
    }
}

@media only screen and (max-width:480px) {
    .main-contents .section-inner {
        padding: 40px 16px 48px
    }
}

.main-contents .section-inner>*:first-child,
.main-contents .section-inner>*.hdg-b-wrapper:first-child>.hdg-b {
    margin-top: 0
}

.main-contents .section-inner>*:last-child {
    margin-bottom: 0
}

.page-top {
    position: fixed;
    right: 0;
    bottom: 10%;
    z-index: 1000;
    opacity: .7
}

.page-top:hover {
    opacity: 1
}

@media only screen and (max-width:767px) {
    .page-top {
        display: none
    }
}

.main-contents .section-inside h1 {
    font-size: 3.2rem;
    margin-bottom: 1.6rem
}

:lang(en) .main-contents .section-inside h1 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h2 {
    font-size: 3.2rem;
    margin-bottom: 32px
}

:lang(en) .main-contents .section-inside h2 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h3 {
    font-size: 2rem;
    margin-bottom: 1.6rem
}

:lang(en) .main-contents .section-inside h3 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h4 {
    font-size: 1.8rem;
    margin-bottom: 1.6rem
}

:lang(en) .main-contents .section-inside h4 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h5 {
    font-size: 1.6rem;
    margin-bottom: 1.6rem
}

:lang(en) .main-contents .section-inside h5 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h6 {
    font-size: 1.6rem;
    margin-bottom: 1.6rem
}

:lang(en) .main-contents .section-inside h6 {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents .section-inside h1 {
    text-align: center
}

.main-contents .section-inside h2 {
    text-align: center
}

.main-contents .section-inside h4 {
    text-align: center
}

.main-contents .section-inside h5 {
    text-align: center
}

.main-contents .section-inside h6 {
    text-align: center
}

.main-contents>#important-notice:first-child {
    margin-top: 16px
}

#important-notice {
    margin: 0 0 32px;
    line-height: 1.5
}

#important-notice #important-notice-inside {
    display: block;
    width: 100%;
    padding: 0 8px;
    max-width: calc(980px + 16px);
    margin: 0 auto
}

#important-notice h2 {
    font-size: 1.6rem;
    font-weight: 700;
    display: inline-block;
    margin: 0;
    padding: 4px 24px 1px;
    color: #fff;
    background-color: #a10d21;
    text-align: center
}

#important-notice h2 a {
    color: #fff;
    text-decoration: none
}

#important-notice h2 a:hover,
#important-notice h2 a:active,
#important-notice h2 a:focus {
    text-decoration: underline
}

#important-notice ul {
    font-size: 1.4rem;
    padding: 0;
    border: 1px solid #a10d21;
    background: #fff
}

#important-notice li {
    margin: 0
}

#important-notice li:last-child {
    margin-bottom: 0
}

#important-notice ul a {
    position: relative;
    display: block;
    padding: 8px;
    text-decoration: none;
    color: #a10d21
}

#important-notice ul a:hover,
#important-notice ul a:focus,
#important-notice ul a:active {
    text-decoration: underline
}

#important-notice .important-notice-icon {
    position: absolute;
    top: 8px;
    left: 8px;
    width: 20px
}

#important-notice .important-notice-icon+span {
    display: block;
    padding-left: 32px
}

#important-notice+.section-news>.section-inside,
#important-notice+.section>.section-inside {
    padding-top: 0
}

#important-notice+.section.tile-plain-1>.section-inside,
#important-notice+.section.tile-plain-2>.section-inside,
#important-notice+.section.tile-plain-3>.section-inside {
    padding-top: 40px
}

.featurestory+#important-notice {
    margin: 40px 0 0
}

.sub-featurestories+#important-notice {
    margin: 0 0 40px
}

.section+#important-notice {
    margin: 0 0 40px
}

.section.tile-plain-1+#important-notice,
.section.tile-plain-2+#important-notice,
.section.tile-plain-3+#important-notice {
    margin: 40px 0
}

.section-news+#important-notice {
    margin: 0 0 40px
}

@media screen and (max-width:480px) {
    #important-notice h2 {
        display: block;
        padding: 4px 16px 0
    }
}

.box-important-a {
    display: block;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    font-size: 0
}

.box-important-a+* {
    margin-top: 40px
}

[data-script-enabled=true] .box-important-a.js-toggle.is-open>dt a::after {
    transform: rotate(180deg);
    display: block;
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    background: center/contain url(/common/img/v5/btn_accordion.png) no-repeat;
    right: 8px;
    top: 9px;
}

[data-script-enabled=true] .box-important-a.js-toggle.is-close>dt a::after {
    display: block;
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    background: center/contain url(/common/img/v5/btn_accordion.png) no-repeat;
    right: 8px;
    top: 9px;
}

[data-script-enabled=true] .box-important-a.js-toggle>dt {
    display: block;
    text-align: left;
    padding: 0
}

[data-script-enabled=true] .box-important-a.js-toggle>dt a {
    display: block;
    position: relative;
    padding: 4px 24px 1px 10px
}

[data-script-enabled=true] .box-important-a.js-toggle .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

.box-important-a>dt {
    font-size: 1.8rem;
    font-weight: 700;
    display: inline-block;
    margin: 0;
    padding: 4px 24px 1px 10px;
    color: #fff;
    background-color: #CF122E;
    width: 100%;
    text-align: left;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

:lang(en) .box-important-a>dt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:480px) {
    .box-important-a>dt {
        display: block;
        padding: 4px 16px 0
    }
}

.box-important-a>dt a {
    color: #fff;
    text-decoration: none
}

.box-important-a>dt a:hover,
.box-important-a>dt a:active,
.box-important-a>dt a:focus {
    text-decoration: underline
}

.box-important-a>dd {
    border: 1px solid #a10d21;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    background: #fff3f4;
}

[data-script-enabled=true] .box-important-a>dd.toggle-content {
    display: none
}

[data-script-enabled=true] .box-important-a.is-open>dd.toggle-content {
    display: block
}

.box-important-a .list-link-a {
    font-size: 1.6rem;
    padding-right: 10px;
    padding-bottom: 10px
}

:lang(en) .box-important-a .list-link-a {
    font-size: 1.8rem
}

.list-caution-a {
    font-size: 1.6rem
}

.list-caution-a+* {
    margin-top: 20px
}

.list-caution-a>li a {
    position: relative;
    display: block;
    padding: 8px;
    text-decoration: none;
    color: #cf122e
}

.list-caution-a>li a:hover,
.list-caution-a>li a:active,
.list-caution-a>li a:focus {
    text-decoration: underline
}

.list-caution-a>li .icon-area {
    position: absolute;
    top: 3px;
    left: 8px;
    width: 20px
}

.list-caution-a>li .notice {
    display: block;
    padding-left: 32px
}

@-webkit-keyframes animg {
    0% {
        -webkit-transform: scale(1.25)
    }

    100% {
        -webkit-transform: scale(1)
    }
}

@keyframes animg {
    0% {
        -webkit-transform: scale(1.25);
        transform: scale(1.25)
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.featurestory {
    overflow: hidden;
    text-align: center;
    margin: 0 auto
}

[data-script-enabled=true] .featurestory {
    height: 427px
}

[data-script-enabled=true] .featurestory+.nav-structure-a {
    margin-top: 20px
}

.featurestory a {
    display: block
}

.featurestory.img-load-done .mainvisual {
    -webkit-animation: animg 1.5s ease-in-out forwards;
    animation: animg 1.5s ease-in-out forwards
}

.featurestory .mainvisual a:focus,
.featurestory .mainvisual a:active,
.featurestory .mainvisual a:hover {
    display: block;
    opacity: .7
}

[data-script-enabled=true] .featurestory #featurestory-img {
    display: inline-block
}

.featurestory.img-load-done .mainvisual img {
    position: absolute;
    top: 0;
    left: 50%;
    max-width: none;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media screen and (max-width:980px) {
    .featurestory.img-load-done {
        height: auto
    }

    .featurestory.img-load-done .mainvisual a {
        position: relative;
        padding: 43.573% 0 0;
        display: block;
        width: 100%
    }

    .featurestory.img-load-done .mainvisual img {
        height: 100%;
        width: auto;
        min-height: 0
    }
}

@media screen and (max-width:480px) {
    .featurestory.img-load-done .mainvisual a {
        position: static;
        padding: 0
    }

    .featurestory.img-load-done .mainvisual img {
        position: static;
        height: auto;
        width: auto;
        min-height: none;
        max-width: 100%;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.lyt-visual-item-a {
    overflow: hidden;
    text-align: center;
    margin: 0 auto
}

[data-script-enabled=true] .lyt-visual-item-a {
    height: 427px
}

[data-script-enabled=true] .lyt-visual-item-a.diff-h-400 {
    height: 400px
}

[data-script-enabled=true] .lyt-visual-item-a.diff-h-300 {
    height: 300px
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] .lyt-visual-item-a {
        height: 380px
    }
}

@media only screen and (max-width:480px) {
    [data-script-enabled=true] .lyt-visual-item-a {
        height: 320px
    }
}

[data-script-enabled=true] .lyt-visual-item-a .img {
    display: inline-block
}

.lyt-visual-item-a+.nav-structure-a {
    margin-top: 20px
}

.lyt-visual-item-a a {
    display: block
}

.lyt-visual-item-a a:hover,
.lyt-visual-item-a a:active,
.lyt-visual-item-a a:focus {
    display: block;
    opacity: .8
}

@media only screen and (max-width:980px) {
    .lyt-visual-item-a.img-load-done {
        height: auto
    }
}

@media only screen and (max-width:1280px) {
    .lyt-visual-item-a.img-load-done.diff-h-400 {
        height: auto
    }

    .lyt-visual-item-a.img-load-done.diff-h-400 .image-wrapper a {
        padding: 31.671% 0 0
    }

    .lyt-visual-item-a.img-load-done.diff-h-400 .image-wrapper a img {
        height: 100%;
        width: auto;
        min-height: 0
    }
}

@media only screen and (max-width:1280px) and (max-width:480px) {
    .lyt-visual-item-a.img-load-done.diff-h-400 .image-wrapper a img {
        height: auto
    }
}

@media only screen and (max-width:1280px) {
    .lyt-visual-item-a.img-load-done.diff-h-300 {
        height: auto
    }

    .lyt-visual-item-a.img-load-done.diff-h-300 .image-wrapper a {
        padding: 23.754% 0 0
    }

    .lyt-visual-item-a.img-load-done.diff-h-300 .image-wrapper a img {
        height: 100%;
        width: auto;
        min-height: 0
    }
}

@media only screen and (max-width:1280px) and (max-width:480px) {
    .lyt-visual-item-a.img-load-done.diff-h-300 .image-wrapper a img {
        height: auto
    }
}

.lyt-visual-item-a.img-load-done .image-wrapper {
    -webkit-animation: animg 1.5s ease-in-out forwards;
    animation: animg 1.5s ease-in-out forwards
}

@media only screen and (max-width:980px) {
    .lyt-visual-item-a.img-load-done .image-wrapper a {
        position: relative;
        padding: 43.573% 0 0;
        display: block;
        width: 100%
    }
}

@media only screen and (max-width:480px) {
    .lyt-visual-item-a.img-load-done .image-wrapper a {
        position: static;
        padding: 0 !important
    }
}

.lyt-visual-item-a.img-load-done .image-wrapper img {
    position: absolute;
    top: 0;
    left: 50%;
    max-width: none;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:980px) {
    .lyt-visual-item-a.img-load-done .image-wrapper img {
        height: 100%;
        width: auto;
        min-height: 0
    }
}

@media only screen and (max-width:480px) {
    .lyt-visual-item-a.img-load-done .image-wrapper img {
        position: static;
        height: auto;
        width: auto;
        min-height: none;
        max-width: 100%;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.lyt-visual-item-a iframe {
    width: 100%;
    height: 100%;
    border: 0
}

.sub-featurestories {
    max-width: 1280px;
    margin: 0 auto
}

.sub-featurestories-inside {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 -40px -40px;
    padding: 40px 0
}

.section-inner .sub-featurestories-inside {
    padding: 0
}

.sub-featurestory {
    width: 33.33333%;
    padding: 0 0 40px 40px
}

.sub-featurestory a,
.sub-featurestory .movie {
    text-decoration: none;
    color: #444;
    display: block
}

.sub-featurestory a:hover,
.sub-featurestory a:focus {
    opacity: .7
}

.sub-featurestory a>p,
.sub-featurestory .movie>p {
    line-height: 1.4;
    margin: 0 0 8px
}

#main .main-contents .sub-featurestory a>p:nth-of-type(1),
#main .main-contents .sub-featurestory .movie>p:nth-of-type(1) {
    margin: 0 0 16px;
    text-align: center
}

#main .main-contents .sub-featurestory a>p:nth-of-type(1)+p:nth-of-type(2),
#main .main-contents .sub-featurestory .movie>*:nth-of-type(1)+p:nth-of-type(2) {
    margin-top: 0 !important
}

#main .main-contents .sub-featurestory a>p:nth-of-type(2),
#main .main-contents .sub-featurestory .movie>p:nth-of-type(2) {
    font-size: 2rem;
    font-weight: 700
}

:lang(en) #main .main-contents .sub-featurestory a>p:nth-of-type(2),
:lang(en) #main .main-contents .sub-featurestory .movie>p:nth-of-type(2) {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.sub-featurestory a>p:last-of-type,
.sub-featurestory .movie>p:last-of-type {
    font-size: 1.36rem;
    margin-top: 0 !important
}

.sub-featurestory a>p img {
    padding: 0;
    width: 100%;
    max-width: 400px
}

.sub-featurestory .moreinfo {
    font-size: 1.2rem;
    color: #a10d21;
    margin-top: 0 !important
}

.sub-featurestory .moreinfo p {
    text-align: center;
    display: inline-block;
    padding: 2px 14px;
    border: 1px solid #a10d21;
    background: #fff
}

.sub-featurestory .moreinfo p>a {
    background: #fff;
    color: #a10d21
}

@media screen and (max-width:1280px) {
    .sub-featurestories {
        padding-left: 8px;
        padding-right: 8px
    }

    .section-inner>.sub-featurestories {
        padding-left: 0;
        padding-right: 0
    }
}

@media screen and (max-width:768px) {
    .sub-featurestories {
        padding: 0
    }

    .sub-featurestories-inside {
        margin: 0 0 -40px -16px;
        padding-left: 8px;
        padding-right: 8px
    }

    .sub-featurestory {
        padding: 0 0 40px 16px
    }
}

@media screen and (max-width:480px) {
    .sub-featurestories-inside {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin: 0;
        padding-left: 40px;
        padding-right: 40px
    }

    .sub-featurestory {
        padding: 0 0 40px;
        width: 100%;
        max-width: none;
        -ms-flex-basis: auto;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }

    .sub-featurestory:last-child {
        margin-bottom: 0;
        padding-bottom: 0
    }

    .sub-featurestory a>p img {
        width: 100%;
        max-width: 688px
    }

    .sub-featurestory .moreinfo {
        text-align: center
    }

    .sub-featurestory .moreinfo>p {
        width: 70%;
        padding: 8px
    }
}

.lyt-col-feature-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 -40px -40px !important
}

@media only screen and (max-width:767px) {
    .lyt-col-feature-a {
        margin: 0 0 -40px -16px !important
    }
}

@media only screen and (max-width:640px) {
    .lyt-col-feature-a {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        margin: 0 !important
    }
}

.lyt-col-feature-a>.col {
    width: 33.33333%;
    padding: 0 0 40px 40px
}

@media only screen and (max-width:767px) {
    .lyt-col-feature-a>.col {
        padding: 0 0 40px 16px
    }
}

@media only screen and (max-width:640px) {
    .lyt-col-feature-a>.col {
        padding: 0 0 40px;
        width: 100%;
        max-width: none;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }

    .lyt-col-feature-a>.col:last-child {
        margin-bottom: 0;
        padding-bottom: 0
    }
}

.lyt-col-feature-a>.col a,
.lyt-col-feature-a>.col .movie {
    text-decoration: none;
    display: block;
    transition: opacity .2s;
}

.lyt-col-feature-a>.col a>*,
.lyt-col-feature-a>.col .movie>* {
    line-height: 1.4;
    margin: 0 0 8px
}

.lyt-col-feature-a>.col a>*.visual,
.lyt-col-feature-a>.col .movie>*.visual {
    margin: 0 0 16px;
    text-align: center;
    position: relative
}

.lyt-col-feature-a>.col a>*.title,
.lyt-col-feature-a>.col .movie>*.title {
    font-size: 2rem;
    font-weight: 700;
    margin-top: 0 !important
}

.lyt-col-feature-a>.col a:hover *.title {
    text-decoration: underline;
}

:lang(en) .lyt-col-feature-a>.col a>*.title,
:lang(en) .lyt-col-feature-a>.col .movie>*.title {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.lyt-col-feature-a>.col a>*:last-child,
.lyt-col-feature-a>.col .movie>*:last-child {
    margin-bottom: 0
}

.lyt-col-feature-a>.col a>*.reversal-area,
.lyt-col-feature-a>.col .movie>*.reversal-area {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

.lyt-col-feature-a>.col a>* .visual,
.lyt-col-feature-a>.col .movie>* .visual {
    margin: 0 0 16px;
    text-align: center;
    position: relative;
    min-height: 100%
}

.lyt-col-feature-a>.col a>* .title,
.lyt-col-feature-a>.col .movie>* .title {
    font-size: 2rem;
    font-weight: 700;
    margin-top: 0 !important;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1
}

:lang(en) .lyt-col-feature-a>.col a>* .title,
:lang(en) .lyt-col-feature-a>.col .movie>* .title {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.lyt-col-feature-a>.col a>*.desc,
.lyt-col-feature-a>.col .movie>*.desc {
    margin-top: 0 !important
}

.lyt-col-feature-a>.col a:hover,
.lyt-col-feature-a>.col a:active,
.lyt-col-feature-a>.col a:focus {
    opacity: .6
}

.lyt-col-feature-a>.col a>p img {
    padding: 0;
    width: 100%;
    max-width: 400px
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col a>p img {
        width: 100%;
        max-width: 688px
    }
}

.lyt-col-feature-a>.col a .visual img {
    padding: 0;
    width: 100%;
    max-width: 400px
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col a .visual img {
        width: 100%;
        max-width: 688px
    }
}

.lyt-col-feature-a>.col .movie .visual {
    height: 400px
}

@media only screen and (max-width:1280px) {
    .lyt-col-feature-a>.col .movie .visual {
        max-height: 389px;
        height: 30.390625vw
    }
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col .movie .visual {
        max-height: 431px;
        height: 89.79167vw
    }
}

.lyt-col-feature-a>.col .movie iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0
}

.lyt-col-feature-a>.col .movie .moreinfo p {
    padding: 0;
    border: 0;
    background: none
}

.lyt-col-feature-a>.col .movie .moreinfo>p a {
    text-align: center;
    display: inline-block;
    padding: 2px 14px;
    border: 1px solid #a10d21;
    background: #fff;
    color: #a10d21
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col .movie .moreinfo>p a {
        padding: 8px;
        display: block
    }
}

.lyt-col-feature-a>.col .moreinfo {
    color: #a10d21;
    margin-top: 0 !important
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col .moreinfo {
        text-align: center;
        width: 70%;
        margin-left: auto;
        margin-right: auto
    }
}

.lyt-col-feature-a>.col .moreinfo p {
    text-align: center;
    display: inline-block;
    padding: 2px 14px;
    border: 1px solid #a10d21;
    background: #fff
}

@media only screen and (max-width:480px) {
    .lyt-col-feature-a>.col .moreinfo p {
        width: 100%;
        padding: 8px
    }
}

.lyt-col-feature-a>.col .moreinfo p>a {
    background: #fff;
    color: #a10d21
}

.section-promotion-outside h2 {
    text-align: center
}

.section-promotion-outside h3 {
    text-align: left
}

.section-promotion-outside h2+p {
    text-align: left;
    margin: 0 0 32px;
    font-size: 1.6rem;
    color: #666
}

.section-promotion-outside a {
    display: block;
    text-decoration: none
}

.section-promotion-outside a+.lyt-btn-a {
    margin-top: 32px
}

.section-promotion-outside a:hover,
.section-promotion-outside a:focus {
    text-decoration: none;
    opacity: .7
}

.section-promotion {
    background-color: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.section-promotion.is-img-l {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.section-promotion p {
    margin: 0 0 16px
}

.section-promotion .section-promotion-content {
    font-size: 1.6rem;
    line-height: 1.4;
    color: #444;
    width: 50%;
    padding: 24px
}

.section-promotion .section-promotion-content .section-promotion-headline {
    font-size: 2.4rem;
    line-height: 1.4;
    color: #444;
    margin-bottom: 32px
}

.section-promotion .section-promotion-content .moreinfo {
    margin: 0;
    font-size: 1.2rem;
    margin-top: 0 !important
}

.section-promotion .section-promotion-content .moreinfo p {
    display: inline-block;
    color: #a10d21;
    border: 1px solid #a10d21;
    padding: 3px 14px;
    margin: 0
}

.section-promotion .section-promotion-image {
    width: 50%;
    text-align: center
}

.section-promotion .section-promotion-image p {
    margin-bottom: 0
}

.section-promotion .section-promotion-image img {
    width: 100%
}

@media screen and (max-width:768px) {
    .section-promotion-outside h2+p {
        text-align: center
    }

    .section-promotion {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .section-promotion.is-img-l {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }

    #bodyarea .section-promotion-outside .section-inside {
        width: 100%;
        max-width: 656px;
        margin: 0 auto
    }

    .section-promotion .section-promotion-content,
    .section-promotion .section-promotion-image {
        width: 100%
    }

    .section-promotion .section-promotion-content {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
        padding-left: 24px;
        padding-right: 24px;
        padding-bottom: 16px
    }

    .section-promotion .section-promotion-image {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }

    .section-promotion .section-promotion-image>* {
        margin-bottom: 0
    }

    .section-promotion .section-promotion-content .moreinfo {
        text-align: center;
        margin-left: -24px;
        margin-right: -24px
    }

    .section-promotion .section-promotion-content .moreinfo p {
        width: 70%;
        padding: 8px
    }
}

.lyt-panel-a .panel-hdg {
    text-align: center;
    font-size: 3.2rem;
    margin-bottom: 32px
}

:lang(en) .lyt-panel-a .panel-hdg {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.lyt-panel-a .panel-hdg+p {
    text-align: left;
    margin: 0 0 32px
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panel-hdg+p {
        text-align: center
    }
}

.lyt-panel-a a {
    display: block;
    text-decoration: none
}

.lyt-panel-a a:hover,
.lyt-panel-a a:active,
.lyt-panel-a a:focus {
    text-decoration: none;
    opacity: .8
}

.lyt-panel-a a+.lyt-btn-a {
    margin-top: 32px
}

.lyt-panel-a .movie+.lyt-btn-a {
    margin-top: 32px
}

.lyt-panel-a .movie .panel-content .moreinfo p {
    border: 0;
    padding: 0
}

.lyt-panel-a .movie .panel-content .moreinfo p>a {
    display: inline-block;
    color: #a10d21;
    border: 1px solid #a10d21;
    padding: 3px 14px;
    margin: 0
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .movie .panel-content .moreinfo p>a {
        padding: 8px;
        display: block
    }
}

.lyt-panel-a .movie .panel-visual {
    height: 400px
}

@media only screen and (max-width:1280px) {
    .lyt-panel-a .movie .panel-visual {
        max-height: 390px;
        height: 30.46875vw
    }
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .movie .panel-visual {
        max-height: 449px;
        height: 58.46354vw
    }
}

.lyt-panel-a .movie .panel-visual iframe {
    width: 100%;
    height: 100%;
    border: 0
}

.lyt-panel-a .panels {
    background-color: #fff;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panels {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.lyt-panel-a .panels.is-img-l {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panels.is-img-l {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.lyt-panel-a .panels p {
    margin-bottom: 16px
}

.lyt-panel-a .panel-content {
    line-height: 1.4;
    width: 50%;
    padding: 24px
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panel-content {
        width: 100%;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
        padding-left: 24px;
        padding-right: 24px;
        padding-bottom: 16px
    }
}

.lyt-panel-a .panel-content .panel-content-hdg {
    text-align: left;
    font-size: 2.4rem;
    line-height: 1.4;
    color: #444;
    margin-bottom: 32px
}

:lang(en) .lyt-panel-a .panel-content .panel-content-hdg {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.lyt-panel-a .panel-content .moreinfo {
    margin: 0;
    margin-top: 0 !important
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panel-content .moreinfo {
        text-align: center;
        width: 100%;
        margin-left: auto;
        margin-right: auto
    }
}

.lyt-panel-a .panel-content .moreinfo p {
    display: inline-block;
    color: #a10d21;
    border: 1px solid #a10d21;
    padding: 3px 14px;
    margin: 0
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panel-content .moreinfo p {
        width: 100%;
        padding: 8px
    }
}

.lyt-panel-a .panel-visual {
    width: 50%;
    text-align: center
}

@media only screen and (max-width:768px) {
    .lyt-panel-a .panel-visual {
        width: 100%;
        -webkit-order: 1;
        -ms-flex-order: 1;
        order: 1;
        -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
        flex: 0 0 auto
    }
}

.lyt-panel-a .panel-visual p {
    margin-bottom: 0
}

.lyt-panel-a .panel-visual img {
    width: 100%
}

.hoverbox-inside {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    max-width: 1280px;
    margin: 0 auto;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.hoverbox-content .figure {
    position: relative;
    overflow: hidden
}

.hoverbox-content .figure img {
    display: block;
    width: 100%
}

.hoverbox-content .figure a {
    text-decoration: none;
    background: rgba(0, 0, 0, .7);
    position: absolute;
    z-index: 2;
    bottom: -83%;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: .9881vw;
    transition: bottom .3s, background .3s;
    line-height: 1.5
}

.hoverbox-content .figure h3 {
    font-weight: 400;
    text-align: center;
    color: #fff;
    margin-bottom: .8088em
}

.hoverbox-content .figure a:focus h3,
.hoverbox-content .figure:hover a h3 {
    padding: 0 1vw
}

.main-contents .hoverbox-content .figure a:focus h3,
.main-contents .hoverbox-content .figure:hover a h3 {
    text-align: left
}

.hoverbox-content .figure a p {
    font-size: 1.57791vw;
    color: #fff
}

.hoverbox-content .figure a:focus p,
.hoverbox-content .figure:hover a p {
    margin-top: 1.57791vw;
    padding: 0 1vw
}

.hoverbox-content .figure a:focus,
.hoverbox-content .figure:hover a {
    text-decoration: none;
    background: rgba(175, 39, 46, .7);
    bottom: 0
}

.hoverbox .hoverbox-inside .hoverbox-content:first-child {
    font-size: 1.6rem;
    height: auto;
    -ms-flex-preferred-size: auto;
    -ms-flex-basis: auto;
    -webkit-flex-basis: auto;
    flex-basis: auto
}

@media only screen and (min-width:1013px) {
    .hoverbox-content .figure a {
        padding: 10px
    }

    .hoverbox-content .figure h3 {
        margin-bottom: 1.6rem
    }

    .hoverbox-content .figure a p {
        font-size: 1.6rem
    }

    .hoverbox-content .figure a:focus h3,
    .hoverbox-content .figure:hover a h3 {
        padding: 0 14px
    }

    .hoverbox-content .figure a:focus p,
    .hoverbox-content .figure:hover a p {
        margin-top: 16px;
        padding: 0 14px
    }
}

@media only screen and (max-width:768px) {
    .hoverbox-content .figure img {
        width: 120px
    }

    .hoverbox .hoverbox-inside .hoverbox-content:first-child>p {
        padding-bottom: 8px
    }
}

.hover-3col {
    padding: 0
}

.hover-3col .hoverbox-content {
    margin: 0 0 24px
}

.hover-3col .hoverbox-content .figure h3 {
    font-size: 2.3692vw
}

.hover-3col .hoverbox-content {
    width: 33.3333%
}

.hover-3col .hoverbox-content {
    max-width: 100%
}

@media only screen and (min-width:1013px) {
    .hover-3col .hoverbox-content .figure h3 {
        margin-top: .8rem
    }
}

@media only screen and (min-width:769px) {
    .hoverbox.hover-3col .hoverbox-inside .hoverbox-content {
        padding: 4.8rem 2.4rem 0
    }

    .hoverbox.hover-3col .hoverbox-inside .hoverbox-content:first-child {
        background-color: #3f3f3f
    }

    .hoverbox.hover-3col .hoverbox-inside .hoverbox-content .figure {
        margin: -4.8rem -2.4rem 0
    }

    .hover-3col .hoverbox-content {
        max-width: 33.3333%
    }

    .hover-3col .hoverbox-content .figure h3 {
        font-size: 2.4rem
    }

    .hover-3col .hoverbox-content .figure a:focus h3,
    .hover-3col .hoverbox-content .figure:hover a h3 {
        margin: 40px 0 16px
    }

    .hover-3col .hoverbox-content {
        margin: 0
    }
}

@media only screen and (max-width:768px) {
    .hover-3col .hoverbox-content {
        width: 100%
    }
}

.hover-4col .hoverbox-content .figure h3 {
    font-size: 1.9762799vw
}

.hover-4col .hoverbox-content {
    -webkit-flex: 1 25%;
    -ms-flex: 1 25%;
    flex: 1 25%;
    display: block;
    width: 100%
}

.hover-4col .hoverbox-content {
    margin: 0
}

.hoverbox.hover-4col .hoverbox-inside .hoverbox-content:first-child>p {
    padding: 0 0 8px
}

.hover-4col .hoverbox-content:not(:first-child) {
    max-width: 25%
}

@media only screen and (min-width:1013px) {
    .hover-4col .hoverbox-content .figure h3 {
        font-size: 2rem
    }

    .hover-4col .hoverbox-content .figure a:focus h3,
    .hover-4col .hoverbox-content .figure:hover a h3 {
        margin: 48px 0 16px
    }
}

@media screen and (max-width:768px) {
    .hover-3col {
        padding: 0 .4rem
    }

    .hover-4col .hoverbox-content {
        margin: 0 0 24px
    }

    .hoverbox .hoverbox-inside {
        display: block
    }

    .hoverbox .hoverbox-inside .hoverbox-content:not(:first-child) {
        overflow: hidden;
        max-width: 100%;
        margin: 0 0 24px
    }

    .hoverbox-inside .hoverbox-content .figure {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }

    .hoverbox-content img {
        width: 120px;
        min-width: 120px;
        height: 120px
    }

    .hoverbox-inside .hoverbox-content .figure a {
        background: transparent;
        position: static;
        min-height: 120px;
        padding: 0 0 0 8px
    }

    .hoverbox-inside .hoverbox-content .figure:hover a,
    .hoverbox-inside .hoverbox-content .figure a:focus {
        background: transparent
    }

    .hoverbox-inside .hoverbox-content .figure a h3 {
        font-size: 2.0rem;
        margin: 0
    }

    .main-contents .hoverbox-inside .hoverbox-content .figure a h3 {
        text-align: left
    }

    .hoverbox-inside .hoverbox-content .figure a p {
        font-size: 1.6rem
    }

    .hoverbox .hoverbox-inside .hoverbox-content .figure:hover a h3,
    .hoverbox .hoverbox-inside .hoverbox-content .figure a:focus h3,
    .hoverbox .hoverbox-inside .hoverbox-content .figure:hover a p,
    .hoverbox .hoverbox-inside .hoverbox-content .figure a:focus p {
        margin: 0;
        padding: 0
    }
}

.lyt-hover-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media only screen and (max-width:768px) {
    .lyt-hover-a {
        display: block
    }
}

.lyt-hover-a .hover-content:first-child {
    height: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

.lyt-hover-a .hover-content:first-child>p {
    padding-bottom: 8px
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content:not(:first-child) {
        overflow: hidden;
        max-width: 100% !important;
        margin: 0 0 24px
    }
}

.lyt-hover-a .hover-content .visual {
    position: relative;
    overflow: hidden
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
}

.lyt-hover-a .hover-content .visual:hover a {
    text-decoration: none;
    background: rgba(0, 0, 0, .7);
    bottom: 0;
    opacity: 1
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual:hover a {
        background: transparent
    }
}

.lyt-hover-a .hover-content .visual:hover a::before {
    top: 50%;
}

.lyt-hover-a .hover-content .visual:hover a .hover-hdg {
    padding: 0 1vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual:hover a .hover-hdg {
        padding: 0 14px
    }
}

.main-contents .lyt-hover-a .hover-content .visual:hover a .hover-hdg {
    text-align: left
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual:hover a .hover-hdg {
        margin: 0;
        padding: 0
    }
}

.lyt-hover-a .hover-content .visual:hover a p {
    margin-top: 1.57791vw;
    padding: 0 1vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual:hover a p {
        margin-top: 16px;
        padding: 0 14px
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual:hover a p {
        margin: 0;
        padding: 0
    }
}

.lyt-hover-a .hover-content .visual img {
    display: block;
    width: 100%
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual img {
        width: 120px;
        min-width: 120px;
        height: 120px
    }
}

.lyt-hover-a .hover-content .visual a {
    text-decoration: none;
    background: rgba(0, 0, 0, .7);
    position: absolute;
    z-index: 2;
    bottom: -83%;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: .55vw;
    transition: bottom .3s, background .3s;
    line-height: 1.5
}

.lyt-hover-a .hover-content .visual a::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    margin-top: -5px;
    transition: top .3s;
}

@media only screen and (min-width: 769px) {
    .lyt-hover-a .hover-content .visual a::before {
        top: 9%;
    }
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual a {
        padding: 10px
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a {
        background: transparent;
        position: static;
        min-height: 120px;
        padding: 0 25px 0 8px
    }
}

.lyt-hover-a .hover-content .visual a:focus {
    text-decoration: none;
    background: rgba(175, 39, 46, .8);
    bottom: 0;
    opacity: 1
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a:focus {
        background: transparent
    }
}

.lyt-hover-a .hover-content .visual a:focus .hover-hdg {
    padding: 0 1vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual a:focus .hover-hdg {
        padding: 0 14px
    }
}

.main-contents .lyt-hover-a .hover-content .visual a:focus .hover-hdg {
    text-align: left
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a:focus .hover-hdg {
        margin: 0;
        padding: 0
    }
}

.lyt-hover-a .hover-content .visual a:focus p {
    margin-top: 1.57791vw;
    padding: 0 1vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual a:focus p {
        margin-top: 16px;
        padding: 0 14px
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a:focus p {
        margin: 0;
        padding: 0
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a .hover-hdg {
        font-size: 2.0rem !important;
        margin: 0
    }

    .main-contents .lyt-hover-a .hover-content .visual a .hover-hdg {
        text-align: left
    }
}

.lyt-hover-a .hover-content .visual a p {
    font-size: 1.57791vw;
    color: #fff
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual a p {
        font-size: 1.6rem
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a .hover-content .visual a p {
        font-size: 1.6rem
    }
}

.lyt-hover-a .hover-content .visual .hover-hdg {
    font-weight: 400;
    text-align: left;
    color: #fff;
    margin-bottom: .8088em;
    font-size: 2rem;
    margin-bottom: 1.6rem
}

:lang(en) .lyt-hover-a .hover-content .visual .hover-hdg {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a .hover-content .visual .hover-hdg {
        margin-bottom: 1.6rem
    }
}

.lyt-hover-a.diff-col3 {
    padding: 0
}

@media only screen and (max-width:768px) {
    .lyt-hover-a.diff-col3 {
        padding: 0 .4rem
    }
}

.lyt-hover-a.diff-col3 .hover-content {
    max-width: 100%;
    width: 33.3333%;
    margin: 0 0 24px
}

.lyt-hover-a.diff-col3 .hover-content:first-child {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content {
        padding: 4.8rem 2.4rem 0;
        max-width: 33.3333%;
        margin: 0
    }

    .lyt-hover-a.diff-col3 .hover-content:first-child {
        background-color: #3f3f3f;
        line-height: 1.6
    }
}

@media only screen and (max-width:768px) {
    .lyt-hover-a.diff-col3 .hover-content {
        width: 100%
    }
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content .visual {
        margin: -4.8rem -2.4rem 0
    }
}

.lyt-hover-a.diff-col3 .hover-content .visual a::before {
    top: 50%;
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content .visual a::before {
        top: 9%;
    }
}

.lyt-hover-a.diff-col3 .hover-content .visual:hover a::before {
    top: 50%;
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content .visual:hover a .hover-hdg {
        margin: 40px 0 16px
    }
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content .visual a:focus .hover-hdg {
        margin: 40px 0 16px
    }
}

.lyt-hover-a.diff-col3 .hover-content .visual .hover-hdg {
    font-size: 2.3692vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a.diff-col3 .hover-content .visual .hover-hdg {
        margin-top: .8rem
    }
}

@media only screen and (min-width:769px) {
    .lyt-hover-a.diff-col3 .hover-content .visual .hover-hdg {
        font-size: 2.4rem
    }
}

.lyt-hover-a.diff-col4 .hover-content {
    -webkit-flex: 1 25%;
    -ms-flex: 1 25%;
    flex: 1 25%;
    display: block;
    width: 100%;
    margin: 0
}

@media only screen and (max-width:768px) {
    .lyt-hover-a.diff-col4 .hover-content {
        margin: 0 0 24px
    }
}

.lyt-hover-a.diff-col4 .hover-content:first-child {
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

.lyt-hover-a.diff-col4 .hover-content:first-child>p {
    padding: 0 0 8px
}

.lyt-hover-a.diff-col4 .hover-content:not(:first-child) {
    max-width: 25%
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a.diff-col4 .hover-content .visual:hover a .hover-hdg {
        margin: 48px 0 16px
    }
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a.diff-col4 .hover-content .visual a:focus .hover-hdg {
        margin: 48px 0 16px
    }
}

.lyt-hover-a.diff-col4 .hover-content .visual .hover-hdg {
    font-size: 1.9762799vw
}

@media only screen and (min-width:1013px) {
    .lyt-hover-a.diff-col4 .hover-content .visual .hover-hdg {
        font-size: 2rem
    }
}

.carousel-box {
    position: relative;
    width: 100%;
    margin: 0 auto 48px;
    max-width: 1280px
}

.carousel-box.js-ui-disable {
    margin-bottom: 0
}

.carousel-box img {
    max-width: none
}

.carousel-box .carousel-box-inside {
    margin: 0 auto;
    margin-top: 0 !important;
    overflow-x: scroll;
    overflow-y: hidden;
    position: relative;
    z-index: 1;
    max-width: 960px
}

.section-inside .carousel-box ul {
    font-size: 1.4rem
}

.carousel-box ul {
    display: table;
    vertical-align: top;
    margin: 0;
    padding: 0;
    list-style-type: none
}

.carousel-box ul li {
    display: table-cell;
    width: 328px;
    vertical-align: top;
    margin: 0;
    padding: 0 24px 32px 0;
    height: 100%;
    line-height: 1.6
}

.carousel-box ul li:last-child {
    padding-right: 0
}

.carousel-box ul li>a>img {
    width: 304px
}

.section-inside .carousel-box ul li a {
    color: #444
}

.carousel-box ul li a {
    text-decoration: none
}

.carousel-box ul li a:hover {
    opacity: .87
}

.carousel-box ul li .textsmall {
    display: block;
    margin: 8px 0 0
}

.carousel-box ul li .text {
    display: block;
    margin: 8px 0 0
}

.carousel-box .nev-prev-btn,
.carousel-box .nev-next-btn {
    display: none;
    z-index: 100
}

[data-script-enabled=true] .carousel-box .nev-prev-btn,
[data-script-enabled=true] .carousel-box .nev-next-btn {
    display: block
}

.carousel-box .nev-prev-btn button,
.carousel-box .nev-next-btn button {
    background: none;
    border: 0;
    padding: 0
}

.carousel-box .nev-prev-btn {
    position: absolute;
    top: 48px;
    cursor: pointer;
    left: 0
}

.carousel-box .nev-next-btn {
    position: absolute;
    top: 48px;
    cursor: pointer;
    right: 0
}

[data-script-enabled=true] .carousel-box {
    overflow: hidden
}

[data-script-enabled=true] .carousel-box:before {
    content: "";
    position: absolute;
    bottom: 9px;
    left: 50%;
    background-color: #ccc;
    display: block;
    max-width: 960px;
    width: 100%;
    height: 1px;
    z-index: 160;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
}

.carousel-scl-line-wrap {
    margin: 0 auto;
    max-width: 960px;
    position: absolute;
    width: 100%;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    z-index: 200
}

.carousel-scl-line {
    position: absolute;
    bottom: 0;
    width: 100px;
    height: 32px;
    left: 0;
    z-index: 210
}

.carousel-scl-line:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 9px;
    background: #999;
    left: 0;
    top: 18px;
    z-index: 220
}

.js-ui-disable.carousel-box:before,
.js-ui-disable .carousel-scl-line,
.js-ui-disable.carousel-box .nev-prev-btn,
.js-ui-disable.carousel-box .nev-next-btn {
    visibility: hidden
}

.carousel-box+.moreinfo {
    text-align: center
}

.carousel-box+.moreinfo p {
    display: inline-block;
    font-size: 1.3rem
}

.carousel-box+.moreinfo p a {
    color: #a10d21;
    text-decoration: none;
    display: block;
    padding: 2px 14px;
    border: 1px solid #a10d21
}

.carousel-box+.moreinfo p a:hover {
    text-decoration: none
}

@media screen and (max-width:480px) {
    .carousel-box {
        margin-bottom: 24px;
        width: auto
    }

    .carousel-box ul li {
        padding-bottom: 16px
    }

    .carousel-box+.moreinfo p {
        width: 70%;
        background: #fff
    }

    .carousel-box+.moreinfo p a {
        padding: 8px
    }
}

.news-tck-box {
    position: relative;
    margin: 0 0 32px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

[data-script-enabled=true] .news-tck-box {
    -webkit-box-align: center;
    -ms-grid-row-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px
}

.news-tck-box a {
    text-decoration: none
}

.news-tck-box a:hover,
.news-tck-box a:focus,
.news-tck-box a:active {
    text-decoration: underline
}

.news-tck-box .news-tck-icon-pdf {
    display: inline-block;
    width: 16px
}

.news-tck-box .news-tck-icon-pdf img {
    vertical-align: middle
}

.main-contents .section-inside .news-tck-box .news-tck-title {
    font-size: 1.6rem
}

.main-contents .news-tck-box .news-tck-title {
    font-size: 2rem;
    margin: 0 8px 0 0;
    white-space: nowrap;
    color: #a10d21;
    background-color: #fff;
    font-weight: 700;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    -ms-flex-basis: 1;
    -webkit-flex-basis: 1;
    -ms-flex-preferred-size: 1;
    flex-basis: 1
}

:lang(en) .main-contents .news-tck-box .news-tck-title {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.news-tck-box .news-tck-area {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    -ms-flex-basis: 100%;
    -webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    margin: 0 0 0 8px
}

.news-tck-box .news-rss-icon {
    z-index: 2;
    background: #fff;
    margin: 0;
    padding: 0 0 0 8px;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
    -ms-flex-basis: 26px;
    -webkit-flex-basis: 26px;
    -ms-flex-preferred-size: 26px;
    flex-basis: 26px
}

.news-tck-box .news-tck-title a {
    color: #a10d21
}

.news-tck-box .news-rss-icon a {
    width: 18px;
    height: 18px;
    background-color: #fff;
    display: block
}

.news-tck-box .news-rss-icon a img {
    vertical-align: top
}

.section-inside .news-tck-box ul {
    font-size: 1.4rem
}

.news-tck-box ul {
    width: 100%;
    margin: -5px 0 0;
    display: table
}

.news-tck-box li {
    position: relative;
    display: table-row;
    right: 0
}

.section-inside .news-tck-date {
    color: #444
}

.news-tck-box .news-tck-date,
.news-tck-box .news-tck-content {
    padding: 8px;
    vertical-align: top;
    display: table-cell;
    min-width: 9em
}

.news-tck-box .news-tck-date {
    white-space: nowrap
}

.section-inside .news-tck-content a {
    color: #444
}

.news-tck-box .news-tck-content a {
    padding: 0
}

.news-tck-box .news-stop-btn,
.news-tck-box .news-back-btn,
.news-tck-box .news-next-btn {
    width: 16px;
    height: 16px;
    margin: 0 8px;
    display: none;
    line-height: 1.3
}

.news-tck-box .news-stop-btn button,
.news-tck-box .news-back-btn button,
.news-tck-box .news-next-btn button {
    position: relative;
    overflow: hidden;
    width: 16px;
    height: 16px;
    padding: 0;
    cursor: pointer;
    border: solid 1px #7f7f7f;
    background: none
}

.news-tck-box .news-stop-btn button span,
.news-tck-box .news-back-btn button span,
.news-tck-box .news-next-btn button span {
    width: 100%;
    height: 100%;
    display: block
}

.news-tck-box .news-stop-btn button+button,
.news-tck-box .news-stop-btn.replay button {
    display: none
}

.news-tck-box .news-stop-btn.replay button+button {
    display: block
}

.news-tck-box .news-stop-btn button:before,
.news-tck-box .news-back-btn button:before,
.news-tck-box .news-next-btn button:before,
.news-tck-box .news-stop-btn button span:before,
.news-tck-box .news-back-btn button span:before,
.news-tck-box .news-next-btn button span:before,
.news-tck-box .news-stop-btn button span:after,
.news-tck-box .news-back-btn button span:after,
.news-tck-box .news-next-btn button span:after {
    position: absolute;
    content: ""
}

.news-tck-box .news-stop-btn button:before,
.news-tck-box .news-back-btn button:before,
.news-tck-box .news-next-btn button:before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff
}

.news-tck-box .news-stop-btn button span:before {
    top: 2px;
    left: 3px;
    width: 3px;
    height: 10px;
    background-color: #7f7f7f
}

.news-tck-box .news-stop-btn button span:after {
    top: 2px;
    right: 3px;
    width: 3px;
    height: 10px;
    background-color: #7f7f7f
}

.news-tck-box .news-stop-btn.replay button span:before {
    width: 0;
    height: 0;
    background-color: transparent;
    border-top: solid 5px transparent;
    border-bottom: solid 5px transparent;
    border-right: solid 10px transparent;
    border-left: solid 10px #7f7f7f
}

.news-tck-box .news-stop-btn.replay button span:after {
    display: none
}

.news-tck-box .news-back-btn button span:before {
    top: 1px;
    left: 1px;
    width: 0;
    height: 0;
    border-top: solid 6px transparent;
    border-right: solid 10px #7f7f7f;
    border-bottom: solid 6px transparent;
    border-left: solid 0 transparent;
    background-color: transparent
}

.news-tck-box .news-back-btn button span:after {
    top: 1px;
    left: 4px;
    width: 0;
    height: 0;
    border-top: solid 6px transparent;
    border-right: solid 10px #fff;
    border-bottom: solid 6px transparent;
    border-left: solid 0 transparent;
    background-color: transparent
}

.news-tck-box .news-next-btn button span:before {
    top: 1px;
    left: 3px;
    width: 0;
    height: 0;
    border-top: solid 6px transparent;
    border-right: solid 0 transparent;
    border-bottom: solid 6px transparent;
    border-left: solid 10px #7f7f7f;
    background-color: transparent
}

.news-tck-box .news-next-btn button span:after {
    top: 1px;
    left: 0;
    width: 0;
    height: 0;
    border-top: solid 6px transparent;
    border-right: solid 0 transparent;
    border-bottom: solid 6px transparent;
    border-left: solid 10px #fff;
    background-color: transparent
}

.news-tck-box .news-stop-btn button:hover,
.news-tck-box .news-back-btn button:hover,
.news-tck-box .news-next-btn button:hover,
.news-tck-box .news-stop-btn button:focus,
.news-tck-box .news-back-btn button:focus,
.news-tck-box .news-next-btn button:focus,
.news-tck-box .news-stop-btn button:active,
.news-tck-box .news-back-btn button:active,
.news-tck-box .news-next-btn button:active {
    opacity: .7
}

[data-script-enabled=true] .news-tck-box .news-stop-btn,
[data-script-enabled=true] .news-tck-box .news-back-btn,
[data-script-enabled=true] .news-tck-box .news-next-btn {
    display: block
}

[data-script-enabled=true] .news-tck-box .news-tck-title {
    -ms-flex-order: 1;
    -webkit-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    -ms-flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

[data-script-enabled=true] .news-tck-box .news-stop-btn {
    -ms-flex-order: 2;
    -webkit-flex-order: 2;
    -webkit-order: 2;
    order: 2
}

[data-script-enabled=true] .news-tck-box .news-back-btn {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3
}

[data-script-enabled=true] .news-tck-box .news-next-btn {
    -webkit-box-ordinal-group: 4;
    -webkit-oredr: 4;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4
}

[data-script-enabled=true] .news-tck-box .news-tck-area {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
    overflow: hidden;
    box-sizing: border-box;
    -ms-flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
    margin: 8px 0 0
}

[data-script-enabled=true] .news-tck-box .news-rss-icon {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
    -ms-flex-basis: auto;
    -webkit-flex-basis: auto;
    -ms-flex-preferred-size: auto;
    flex-basis: auto
}

[data-script-enabled=true] .news-tck-box li {
    margin-bottom: 0;
    display: block
}

[data-script-enabled=true] .news-tck-box .news-tck-date,
[data-script-enabled=true] .news-tck-box .news-tck-content {
    white-space: nowrap;
    min-width: auto
}

[data-script-enabled=true] .news-tck-box .news-stop-btn.clone,
[data-script-enabled=true] .news-tck-box .news-back-btn.clone,
[data-script-enabled=true] .news-tck-box .news-next-btn.clone,
[data-script-enabled=true] .news-tck-box .news-rss-icon.clone {
    display: none
}

@media screen and (max-width:768px) {
    [data-script-enabled=true] .news-tck-box {
        min-height: 80px
    }

    .news-tck-box {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .news-tck-box .news-tck-title {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
        -ms-flex-basis: auto;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
        line-height: 1.2
    }

    .news-tck-box .news-stop-btn,
    .news-tck-box .news-back-btn,
    .news-tck-box .news-next-btn {
        margin-top: 8px
    }

    .news-tck-box .news-tck-area {
        width: 100%;
        margin-bottom: 16px;
        padding: 16px 0 0;
        margin: 0;
        -ms-flex-order: 3;
        -webkit-order: 3;
        order: 3;
        -ms-flex-basis: auto;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }

    .news-tck-box .news-rss-icon {
        -ms-flex-order: 2;
        -webkit-flex-order: 2;
        -webkit-order: 2;
        order: 2;
        position: absolute;
        top: 2px;
        right: 0;
        -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }

    .news-tck-box .news-stop-btn {
        margin-left: 0
    }

    .news-tck-box ul {
        display: block
    }

    .news-tck-box li {
        margin: 0 0 16px;
        display: block;
        width: auto
    }

    .news-tck-box li:last-child {
        margin-bottom: 0
    }

    .news-tck-box .news-tck-date,
    .news-tck-box .news-tck-content {
        padding: 0;
        display: block
    }

    .news-tck-box .news-tck-date {
        margin: 0 0 4px
    }

    [data-script-enabled=true] .news-tck-box .news-tck-title {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1
    }

    [data-script-enabled=true] .news-tck-box .news-rss-icon {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2
    }

    [data-script-enabled=true] .news-tck-box .news-tck-area {
        -ms-flex-order: 3;
        -webkit-order: 3;
        order: 3;
        width: 100%;
        margin-top: 0
    }

    [data-script-enabled=true] .news-tck-box .news-stop-btn {
        -ms-flex-order: 4;
        -webkit-order: 4;
        order: 4
    }

    [data-script-enabled=true] .news-tck-box .news-back-btn {
        -ms-flex-order: 5;
        -webkit-order: 5;
        order: 5
    }

    [data-script-enabled=true] .news-tck-box .news-next-btn {
        -ms-flex-order: 6;
        -webkit-order: 6;
        order: 6
    }

    [data-script-enabled=true] .news-tck-box .news-tck-date,
    [data-script-enabled=true] .news-tck-box .news-tck-content {
        display: table-cell
    }

    [data-script-enabled=true] .news-tck-box .news-tck-date {
        padding-right: 8px
    }

    [data-script-enabled=true] .news-tck-box .news-tck-content {
        padding-left: 8px
    }

    [data-script-enabled=true] .news-tck-box .news-stop-btn,
    [data-script-enabled=true] .news-tck-box .news-back-btn,
    [data-script-enabled=true] .news-tck-box .news-next-btn,
    [data-script-enabled=true] .news-tck-box .news-rss-icon {
        display: none
    }

    [data-script-enabled=true] .news-tck-box .news-stop-btn.clone,
    [data-script-enabled=true] .news-tck-box .news-back-btn.clone,
    [data-script-enabled=true] .news-tck-box .news-next-btn.clone,
    [data-script-enabled=true] .news-tck-box .news-rss-icon.clone {
        display: block
    }
}

.contact-points {
    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;
    width: 100%
}

.contact-points>a {
    display: block;
    position: relative;
    -ms-flex-basis: calc(50% - 8px);
    -webkit-flex-basis: calc(50% - 8px);
    -ms-flex-preferred-size: calc(50% - 8px);
    flex-basis: calc(50% - 8px);
    max-width: 632px;
    color: #444;
    text-decoration: none;
    margin: 0
}

.contact-points>a:focus,
.contact-points>a:hover {
    opacity: .8
}

.contact-points>a .contact-banner>img {
    display: block;
    width: 100%;
    margin: 0 auto
}

.contact-points>a .contact-banner-content {
    padding: 32px 24px 0;
    font-size: 1.6rem;
    width: 100%;
    max-width: 632px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0
}

.main-contents .contact-points>a .contact-banner-content h3 {
    text-align: left;
    word-break: break-all;
    margin-bottom: 8px;
    font-size: 2rem;
    font-weight: 700
}

:lang(en) .main-contents .contact-points>a .contact-banner-content h3 {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.contact-points>a .contact-banner-content>p {
    margin: 0 0 8px
}

.contact-points>a .contact-banner-content .moreinfo {
    margin-top: 0 !important
}

.contact-points>a .contact-banner-content .moreinfo p {
    font-size: 1.2rem;
    color: #a10d21;
    border: 1px solid #a10d21;
    display: inline-block;
    padding: 4px 16px;
    text-align: center
}

@media screen and (max-width:768px) {
    .contact-points {
        display: block
    }

    .contact-points>a {
        max-width: 480px;
        width: 100%;
        margin: 0 auto 16px
    }

    .contact-points>a .contact-banner-content {
        position: static;
        top: auto;
        left: auto;
        padding: 0
    }

    .main-contents .contact-points>a .contact-banner-content h3 {
        text-align: center
    }

    .contact-points>a .contact-banner-content>p {
        min-width: 100%;
        margin-bottom: 16px;
        text-align: center
    }

    .contact-points>a .contact-banner-content .moreinfo p {
        font-size: 1.92rem;
        padding: 16px 4px;
        max-width: 70%;
        margin: 0 auto;
        display: block
    }
}

.lyt-col-contact-a {
    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;
    width: 100%
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a {
        display: block
    }
}

.lyt-col-contact-a>a {
    display: block;
    position: relative;
    -webkit-flex-basis: calc(50% - 8px);
    -ms-flex-preferred-size: calc(50% - 8px);
    flex-basis: calc(50% - 8px);
    max-width: 632px;
    text-decoration: none;
    margin: 0
}

.lyt-col-contact-a>a:hover,
.lyt-col-contact-a>a:active,
.lyt-col-contact-a>a:focus {
    opacity: .8
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a>a {
        max-width: 480px;
        width: 100%;
        margin: 0 auto 16px
    }
}

.lyt-col-contact-a .visual>img {
    display: block;
    width: 100%;
    margin: 0 auto
}

.lyt-col-contact-a .contact-content {
    padding: 32px 24px 0;
    width: 100%;
    max-width: 632px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 0
}

.lyt-col-contact-a .contact-content.diff-color-a {
    color: #fff
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content.diff-color-a {
        color: #000
    }
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content {
        position: static;
        top: auto;
        left: auto;
        padding: 0
    }
}

.lyt-col-contact-a .contact-content>p {
    margin: 0 0 8px
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content>p {
        min-width: 100%;
        margin-bottom: 16px;
        text-align: center
    }
}

.lyt-col-contact-a .contact-content .moreinfo {
    margin-top: 0 !important
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content .moreinfo {
        width: 70%;
        margin: 0 auto
    }
}

.lyt-col-contact-a .contact-content .moreinfo p {
    font-size: 1.2rem;
    color: #a10d21;
    border: 1px solid #a10d21;
    display: inline-block;
    padding: 4px 16px;
    text-align: center
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content .moreinfo p {
        font-size: 1.9rem;
        padding: 16px 4px;
        max-width: 100%;
        margin: 0 auto;
        display: block
    }
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-content .moreinfo .lyt-btn-b li {
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1
    }

    .lyt-col-contact-a .contact-content .moreinfo .lyt-btn-b li span {
        display: block
    }
}

.lyt-col-contact-a .contact-hdg {
    text-align: left;
    word-break: break-all;
    margin-bottom: 8px;
    font-size: 2rem;
    font-weight: 700
}

:lang(en) .lyt-col-contact-a .contact-hdg {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:768px) {
    .lyt-col-contact-a .contact-hdg {
        text-align: center
    }
}

.announce-point {
    margin: 0 auto
}

.announce-point>ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: -16px 0 0 -16px
}

.announce-point>ul>li {
    width: 308px;
    margin: 16px 0 0 16px
}

.announce-point>ul>li img {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
    margin: 0 0 8px
}

.announce-point>ul>li img+br {
    display: none
}

.announce-point>ul>li>a {
    display: block;
    color: #444;
    width: 100%;
    max-width: 308px;
    margin: 0 auto;
    font-size: 1.3rem;
    text-decoration: none
}

.announce-point>ul>li>a:focus,
.announce-point>ul>li>a:hover {
    text-decoration: none
}

.announce-point>ul>li>a:focus img,
.announce-point>ul>li>a:hover img {
    opacity: .7
}

@media screen and (max-width:768px) {
    .announce-point>ul {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        margin: -16px 0 0 -16px
    }

    .announce-point>ul>li {
        -ms-flex-basis: calc(50% - 16px);
        -webkit-flex-basis: calc(50% - 16px);
        -ms-flex-preferred-size: calc(50% - 16px);
        flex-basis: calc(50% - 16px)
    }

    .announce-point>ul>li img {
        width: 100%;
        margin: 0 auto 8px
    }
}

.lyt-col-announce-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: -16px 0 0 -16px
}

@media only screen and (max-width:768px) {
    .lyt-col-announce-a {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.lyt-col-announce-a>li {
    width: 308px;
    margin: 16px 0 0 16px
}

@media only screen and (max-width:768px) {
    .lyt-col-announce-a>li {
        -webkit-flex-basis: calc(50% - 16px);
        -ms-flex-preferred-size: calc(50% - 16px);
        flex-basis: calc(50% - 16px)
    }
}

.lyt-col-announce-a>li>a {
    display: block;
    width: 100%;
    max-width: 308px;
    margin: 0 auto;
    line-height: 1.6;
    text-decoration: none
}

.lyt-col-announce-a>li>a:hover,
.lyt-col-announce-a>li>a:active,
.lyt-col-announce-a>li>a:focus {
    text-decoration: none
}

.lyt-col-announce-a>li>a:hover img,
.lyt-col-announce-a>li>a:active img,
.lyt-col-announce-a>li>a:focus img {
    opacity: .8
}

.lyt-col-announce-a>li img {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
    margin: 0 0 8px
}

@media only screen and (max-width:768px) {
    .lyt-col-announce-a>li img {
        width: 100%;
        margin: 0 auto 8px
    }
}

.lyt-col-announce-a>li img+br {
    display: none
}

#morehelp .textcenter {
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    margin: -32px 0 32px
}

#morehelp .box.box-2col,
#morehelp .box .box-inside .box-child::after {
    display: block;
    clear: both;
    content: ''
}

#morehelp .box .box-inside>a {
    display: block
}

#morehelp .box .box-inside>a:focus,
#morehelp .box .box-inside>a:hover {
    opacity: .7;
    text-decoration: none
}

#morehelp .box .box-inside>a:focus h3,
#morehelp .box .box-inside>a:hover h3 {
    text-decoration: underline
}

#morehelp .box.box-2col .box-inside {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    max-width: 996px;
    margin: -32px auto 0
}

#morehelp .box.box-2col .box-inside>a {
    width: calc(50% - 16px);
    margin: 32px 32px 0 0;
    display: block;
    text-decoration: none
}

#morehelp .box.box-2col .box-inside>a:nth-child(even) {
    margin-right: 0
}

#morehelp .box .box-inside .box-child {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-grid-row-align: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

#morehelp .box .box-inside .box-child>img {
    display: block;
    width: 48px;
    height: auto
}

#morehelp .box .box-inside .box-child .box-child-content {
    margin: 0 0 0 16px;
    width: 100%;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

#morehelp .box .box-inside .box-child .box-child-content>p,
#morehelp .box .box-inside .box-child .box-child-content>h3 {
    color: #444;
    text-align: left;
    font-size: 16px;
    font-size: 1.6rem
}

#morehelp .box .box-inside .box-child .box-child-content>h3 {
    font-size: 24px;
    font-size: 2.4rem;
    margin: 0;
    word-break: break-all
}

@media screen and (max-width:768px) {
    #morehelp .box.box-2col .box-inside {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0
    }

    #morehelp .box.box-2col .box-inside>a {
        width: 100%;
        margin: 0 0 32px
    }
}

.lyt-help-a .lead {
    text-align: center;
    margin: -32px 0 32px
}

.lyt-help-a .columns {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    max-width: 976px;
    margin: -32px auto 0 !important
}

.lyt-help-a .columns.diff-center {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media only screen and (max-width:768px) {
    .lyt-help-a .columns.diff-center {
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.lyt-help-a .columns.diff-center>a {
    width: 280px
}

@media only screen and (max-width:768px) {
    .lyt-help-a .columns.diff-center>a {
        width: 100%
    }
}

@media only screen and (max-width:768px) {
    .lyt-help-a .columns {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0;
        margin: -16px auto 0 !important
    }
}

.lyt-help-a .columns>a {
    width: calc(50% - 16px);
    margin: 32px 32px 0 0;
    display: block;
    text-decoration: none;
    opacity: 1
}

@media only screen and (max-width:768px) {
    .lyt-help-a .columns>a {
        width: 100%;
        margin: 0 0 32px
    }
}

.lyt-help-a .columns>a:hover,
.lyt-help-a .columns>a:active,
.lyt-help-a .columns>a:focus {
    text-decoration: none
}

.lyt-help-a .columns>a:hover .help-hdg,
.lyt-help-a .columns>a:active .help-hdg,
.lyt-help-a .columns>a:focus .help-hdg {
    text-decoration: underline
}

.lyt-help-a .columns>a:nth-child(even) {
    margin-right: 0
}

.lyt-help-a .columns .column-content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

.lyt-help-a .columns .column-content>img {
    display: block;
    width: 48px;
    height: auto
}

.lyt-help-a .columns .column-content-inner {
    margin: 0 0 0 16px;
    width: 100%;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

.lyt-help-a .columns .column-content-inner>p,
.lyt-help-a .columns .column-content-inner .help-hdg {
    text-align: left;
    line-height: 1.6
}

.lyt-help-a .columns .column-content-inner .help-hdg {
    font-size: 2.4rem;
    margin: 0;
    word-break: break-all
}

:lang(en) .lyt-help-a .columns .column-content-inner .help-hdg {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.hdg-a-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    max-width: 1280px;
    margin: 0 auto 52px
}

.hdg-a-wrapper.diff-news {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 52px;
    padding-top: 30px;
    position: relative
}

.hdg-a-wrapper.diff-news::before {
    display: block;
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 160px;
    height: 3px;
    background: #c6c6c0
}

:lang(ja) .hdg-a-wrapper.diff-news::before {
    width: 100%
}

@media only screen and (max-width:1280px) {
    :lang(ja) .hdg-a-wrapper.diff-news::before {
        width: calc(100% - 16px)
    }
}

@media only screen and (max-width:1000px) {
    :lang(ja) .hdg-a-wrapper.diff-news::before {
        width: calc(100% - 32px)
    }
}

@media only screen and (max-width:1280px) {
    .hdg-a-wrapper.diff-news::before {
        left: 8px
    }
}

@media only screen and (max-width:1000px) {
    .hdg-a-wrapper.diff-news::before {
        left: 16px
    }
}

@media only screen and (max-width:1280px) {
    .hdg-a-wrapper.diff-news {
        padding: 30px 8px 0
    }
}

@media only screen and (max-width:1000px) {
    .hdg-a-wrapper.diff-news {
        padding: 30px 16px 0
    }
}

@media only screen and (max-width:480px) {
    .hdg-a-wrapper.diff-news {
        margin-bottom: 20px
    }
}

.hdg-a-wrapper.diff-news .hdg-a {
    -webkit-flex: auto;
    -ms-flex: auto;
    flex: auto;
    margin: 0 0 4px;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    padding: 0;
    width: 100%
}

:lang(ja) .hdg-a-wrapper.diff-news .hdg-a {
    font-size: 3.2rem;
    text-align: center
}

@media only screen and (max-width:480px) {
    :lang(ja) .hdg-a-wrapper.diff-news .hdg-a {
        font-size: 2.4rem
    }
}

.hdg-a-wrapper.diff-news .sub-hdg-a {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    color: #57564f;
    font-weight: 700;
    margin-bottom: 50px;
    width: 100%
}

:lang(ja) .hdg-a-wrapper.diff-news .sub-hdg-a {
    text-align: center;
    margin-top: 4px
}

@media only screen and (max-width:480px) {
    .hdg-a-wrapper.diff-news .sub-hdg-a {
        margin-bottom: 20px
    }
}

:lang(en) .hdg-a-wrapper.diff-news .sub-hdg-a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.hdg-a-wrapper.diff-news .utility-area {
    margin-top: 0 !important;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

@media only screen and (max-width:767px) {
    .hdg-a-wrapper.diff-news .utility-area {
        display: block
    }
}

.hdg-a-wrapper.diff-news .utility-area>* {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

:lang(ja) .hdg-a-wrapper.diff-news .list-label-a {
    margin-bottom: 14px
}

.hdg-a-wrapper.diff-news .release {
    color: #57564f;
    margin-bottom: 16px
}

.hdg-a-wrapper.diff-news .item {
    position: relative
}

@media only screen and (max-width:767px) {
    .hdg-a-wrapper.diff-news .item+* {
        margin-bottom: 20px
    }
}

@media only screen and (max-width:1280px) {
    .hdg-a-wrapper {
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .hdg-a-wrapper {
        padding-right: 16px
    }
}

@media only screen and (max-width:767px) {
    .hdg-a-wrapper {
        display: block;
        padding-right: 0
    }
}

@media only screen and (max-width:480px) {
    .hdg-a-wrapper {
        margin-bottom: 40px
    }
}

.hdg-a-wrapper .hdg-a {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 16px;
    margin-bottom: 0
}

@media only screen and (max-width:767px) {
    .hdg-a-wrapper .hdg-a {
        margin-bottom: 20px
    }
}

@media only screen and (max-width:767px) {
    .hdg-a-wrapper+.lyt-visual-item-a {
        margin-top: 20px
    }
}

.hdg-a-wrapper .nav-structure-a {
    margin-bottom: 6px
}

@media only screen and (max-width:1280px) {
    .hdg-a-wrapper .nav-structure-a {
        padding: 0
    }
}

@media only screen and (max-width:1280px) and (max-width:767px) {
    .hdg-a-wrapper .nav-structure-a {
        padding: 0 16px;
        margin-bottom: 0
    }
}

@media only screen and (max-width:1280px) {
    .hdg-a-wrapper .nav-structure-a>ul {
        right: 0
    }
}

.hdg-a {
    font-size: 4rem;
    line-height: 1.3;
    padding-top: 50px;
    max-width: 1280px;
    margin: 0 auto 52px
}

:lang(en) .hdg-a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:1280px) {
    .hdg-a {
        padding: 50px 8px 0
    }
}

@media only screen and (max-width:1000px) {
    .hdg-a {
        padding: 50px 16px 0
    }
}

@media only screen and (max-width:480px) {
    .hdg-a {
        padding: 34px 16px 0;
        margin-bottom: 40px;
        font-size: 3.2rem
    }
}

.hdg-a>a {
    position: relative;
    text-decoration: none;
    display: inline-block;
    padding-right: 32px
}

.hdg-a>a::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 20px;
    height: 20px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -10px
}

.hdg-a .sub-hdg-a {
    display: block;
    color: #57564f;
    font-size: 2rem;
    margin-bottom: 8px
}

@media only screen and (max-width:480px) {
    .hdg-a .sub-hdg-a {
        font-size: 1.6rem
    }
}

.hdg-b-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    border-bottom: 2px solid #dcdcdc;
    position: relative;
    margin-bottom: 26px
}

@media only screen and (max-width:767px) {
    .hdg-b-wrapper {
        display: block;
        margin-bottom: 20px;
        border: 0
    }
}

.hdg-b-wrapper::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    bottom: -3px;
    width: 18.75%;
    height: 3px;
    background: #cf122e;
    min-width: 72px
}

@media only screen and (max-width:767px) {
    .hdg-b-wrapper::before {
        display: none
    }
}

.hdg-b-wrapper .hdg-b {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border: 0;
    margin-bottom: 0;
    padding-right: 16px
}

@media only screen and (max-width:767px) {
    .hdg-b-wrapper .hdg-b {
        border-bottom: 2px solid #dcdcdc;
        margin-bottom: 20px;
        padding-right: 0
    }
}

.hdg-b-wrapper .nav-structure-a {
    margin-bottom: 20px
}

@media only screen and (max-width:1280px) {
    .hdg-b-wrapper .nav-structure-a {
        padding: 0
    }

    .hdg-b-wrapper .nav-structure-a>ul {
        right: 0
    }
}

*:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-b,
*:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-b-wrapper>.hdg-b {
    margin-top: 58px
}

@media only screen and (max-width:480px) {

    *:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-b,
    *:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-b-wrapper>.hdg-b {
        margin-top: 40px
    }
}

.hdg-b {
    font-size: 3.2rem;
    line-height: 1.4;
    margin: 52px 0 26px;
    padding-bottom: 18px;
    border-bottom: 2px solid #dcdcdc;
    position: relative
}

:lang(en) .hdg-b {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.hdg-b+[class^=tbl-],
.hdg-b+[class*=" tbl-"] {
    margin-top: 32px
}

@media only screen and (max-width:480px) {

    .hdg-b+[class^=tbl-],
    .hdg-b+[class*=" tbl-"] {
        margin-top: 24px
    }
}

@media only screen and (max-width:480px) {
    .hdg-b {
        margin: 40px 0 20px;
        padding-bottom: 16px;
        font-size: 2.4rem
    }
}

.hdg-b.diff-center {
    text-align: center;
    border-bottom: 0
}

.hdg-b.diff-center::before {
    left: 50%;
    margin-left: -6.25%;
    width: 12.5%;
    min-width: inherit
}

@media only screen and (max-width:480px) {
    .hdg-b.diff-center::before {
        margin-left: -60px;
        width: 120px
    }
}

.hdg-b.diff-forum {
    text-align: center;
    font-size: 4rem;
    margin-bottom: 36px;
    border-bottom: 0;
    padding-bottom: 0
}

@media only screen and (max-width:480px) {
    .hdg-b.diff-forum {
        font-size: 2.4rem;
        margin-bottom: 22px
    }
}

.hdg-b.diff-forum::before {
    display: none
}

.hdg-b>a {
    position: relative;
    text-decoration: none;
    display: inline-block;
    padding-right: 28px
}

.hdg-b>a::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 14px;
    height: 14px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -7px
}

.hdg-b .sub-hdg-a {
    display: block;
    color: #57564f;
    font-size: 2rem;
    margin-bottom: 4px
}

@media only screen and (max-width:480px) {
    .hdg-b .sub-hdg-a {
        font-size: 1.6rem
    }
}

.diff-tab-a .hdg-b {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (max-width:1280px) {
    .diff-tab-a .hdg-b {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .diff-tab-a .hdg-b {
        padding-left: 16px;
        padding-right: 16px
    }
}

h3.hdg-b {
    font-size: 2.4rem
}

@media only screen and (max-width:480px) {
    h3.hdg-b {
        font-size: 2rem
    }
}

h4.hdg-b,
h5.hdg-b {
    font-size: 2rem
}

@media only screen and (max-width:480px) {

    h4.hdg-b,
    h5.hdg-b {
        font-size: 1.8rem
    }
}

*:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-c {
    margin-top: 44px
}

@media only screen and (max-width:480px) {
    *:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-c {
        margin-top: 32px
    }
}

.hdg-c {
    font-size: 2.4rem;
    line-height: 1.4;
    margin: 38px 0 14px;
    padding-left: 17px;
    position: relative
}

:lang(en) .hdg-c {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.hdg-c::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 5px;
    width: 4px;
    height: calc(100% - 10px);
    background: #cf122e;
}

.hdg-b+.hdg-c {
    margin: 28px 0 16px
}

@media only screen and (max-width:480px) {
    .hdg-b+.hdg-c {
        margin: 20px 0 12px
    }
}

.hdg-c>a {
    position: relative;
    text-decoration: none;
    display: inline-block;
    padding-right: 28px
}

.hdg-c>a::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 12px;
    height: 12px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -6px
}

@media only screen and (max-width:480px) {
    .hdg-c {
        margin: 32px 0 16px;
        font-size: 2rem
    }
}

.diff-tab-a .hdg-c {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (max-width:1280px) {
    .diff-tab-a .hdg-c {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .diff-tab-a .hdg-c {
        padding-left: 16px;
        padding-right: 16px
    }
}

h2.hdg-c {
    font-size: 3.2rem
}

@media only screen and (max-width:480px) {
    h2.hdg-c {
        font-size: 2.4rem
    }
}

h4.hdg-c,
h5.hdg-c {
    font-size: 2rem
}

@media only screen and (max-width:480px) {

    h4.hdg-c,
    h5.hdg-c {
        font-size: 1.8rem
    }
}

*:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-d {
    margin-top: 44px
}

@media only screen and (max-width:480px) {
    *:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-d {
        margin-top: 32px
    }
}

.hdg-d {
    font-size: 2rem;
    line-height: 1.4;
    margin: 30px 0 14px;
    color: #666;
    border-bottom: 0;
    padding-bottom: 0;
    padding-left: 0
}

:lang(en) .hdg-d {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.hdg-d::before {
    display: none
}

.hdg-c+.hdg-d {
    margin: 16px 0
}

@media only screen and (max-width:480px) {
    .hdg-c+.hdg-d {
        margin: 12px 0
    }
}

@media only screen and (max-width:480px) {
    .hdg-d {
        margin: 32px 0 16px;
        font-size: 1.8rem
    }
}

.hdg-d>a {
    position: relative;
    text-decoration: none;
    display: inline-block;
    padding-right: 28px;
    color: #57564f;
}

.hdg-d>a::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 12px;
    height: 12px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -6px
}

.hdg-d>a:hover,
.hdg-d>a:active,
.hdg-d>a:focus {
    text-decoration: underline
}

.diff-tab-a .hdg-d {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (max-width:1280px) {
    .diff-tab-a .hdg-d {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .diff-tab-a .hdg-d {
        padding-left: 16px;
        padding-right: 16px
    }
}

h2.hdg-d {
    font-size: 3.2rem
}

@media only screen and (max-width:480px) {
    h2.hdg-d {
        font-size: 2.4rem
    }
}

h3.hdg-d {
    font-size: 2.4rem
}

@media only screen and (max-width:480px) {
    h3.hdg-d {
        font-size: 2rem
    }
}

*:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-e {
    margin-top: 44px
}

@media only screen and (max-width:480px) {
    *:not(p):not([class^="list-"]):not([class*=" list-"]):not([class^="hdg-"]):not([class*=" hdg-"])+.hdg-e {
        margin-top: 32px
    }
}

.hdg-e {
    font-size: 2rem;
    line-height: 1.4;
    margin: 30px 0 14px;
    color: #57564f
}

:lang(en) .hdg-e {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.hdg-d+.hdg-e {
    margin: 16px 0
}

@media only screen and (max-width:480px) {
    .hdg-d+.hdg-e {
        margin: 12px 0
    }
}

@media only screen and (max-width:480px) {
    .hdg-e {
        margin: 32px 0 12px;
        font-size: 1.8rem
    }
}

.hdg-e>a {
    position: relative;
    text-decoration: none;
    display: inline-block;
    padding-right: 24px;
    color: #57564f
}

.hdg-e>a::before {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px
}

.hdg-e>a:hover,
.hdg-e>a:active,
.hdg-e>a:focus {
    text-decoration: underline
}

.diff-tab-a .hdg-e {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto
}

@media only screen and (max-width:1280px) {
    .diff-tab-a .hdg-e {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .diff-tab-a .hdg-e {
        padding-left: 16px;
        padding-right: 16px
    }
}

.main-contents p+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .main-contents p+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.main-contents p+p,
.main-contents p+[class^=list-],
.main-contents p+[class*=" list-"] {
    margin-top: 28px !important
}

.main-contents em.diff-color-a {
    color: #cf122e;
}

:lang(en) .main-contents strong {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.main-contents strong.diff-color-a {
    color: #cf122e;
}

:lang(en) .main-contents b {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.txt-lead-a {
    font-size: 2rem;
    line-height: 1.6;
    font-weight: 700
}

:lang(en) .txt-lead-a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

:lang(ja) .diff-news-temp .txt-lead-a {
    font-size: 1.8rem
}

.txt-catch-a {
    font-size: 3.2rem;
    line-height: 1.3;
    font-weight: 700;
    color: #57564f
}

:lang(en) .txt-catch-a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .txt-catch-a {
        font-size: 2.4rem
    }
}

.txt-catch-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 16px !important
}

.icon-a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 7px
}

.icon-ctg-a {
    background: #706f67;
    display: inline-block;
    min-width: 123px;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
    line-height: 1.2;
    padding: 4px
}

.icon-fixed-a-wrapper {
    position: relative
}

.icon-fixed-a-wrapper>.icon-fixed-a {
    position: absolute;
    right: 4px;
    top: 4px
}

.icon-fixed-a {
    width: 38px !important;
    height: 38px !important
}

@media only screen and (max-width:767px) {
    .icon-fixed-a {
        width: 30px !important;
        height: 30px !important
    }
}

.list-a,
.list-order-a,
.list-notes-a,
.list-link-a,
.list-error-a {
    padding-left: 20px
}

.list-a.diff-indent,
.list-order-a.diff-indent,
.list-notes-a.diff-indent,
.list-link-a.diff-indent,
.list-error-a.diff-indent {
    padding-left: 0
}

@media only screen and (max-width:767px) {

    .list-a,
    .list-order-a,
    .list-notes-a,
    .list-link-a,
    .list-error-a {
        padding-left: 0
    }
}

.list-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
.list-order-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
.list-notes-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
.list-link-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
.list-error-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {

    .list-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
    .list-order-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
    .list-notes-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
    .list-link-a+*:not([class^="hdg-"]):not([class*=" hdg-"]),
    .list-error-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-a+p,
.list-a+[class^=list-],
.list-a+[class*=" list-"],
.list-order-a+p,
.list-order-a+[class^=list-],
.list-order-a+[class*=" list-"],
.list-notes-a+p,
.list-notes-a+[class^=list-],
.list-notes-a+[class*=" list-"],
.list-link-a+p,
.list-link-a+[class^=list-],
.list-link-a+[class*=" list-"],
.list-error-a+p,
.list-error-a+[class^=list-],
.list-error-a+[class*=" list-"] {
    margin-top: 28px !important
}

.list-a>li+li,
.list-order-a>li+li,
.list-notes-a>li+li,
.list-link-a>li+li,
.list-error-a>li+li {
    margin-top: 12px
}

.list-a>li>ul,
.list-a>li>ol,
.list-a>li>.item>ul,
.list-a>li>.item>ol,
.list-a>li>p+*,
.list-a>li>p+[class^=list-],
.list-a>li>p+[class*=" list-"],
.list-order-a>li>ul,
.list-order-a>li>ol,
.list-order-a>li>.item>ul,
.list-order-a>li>.item>ol,
.list-order-a>li>p+*,
.list-order-a>li>p+[class^=list-],
.list-order-a>li>p+[class*=" list-"],
.list-notes-a>li>ul,
.list-notes-a>li>ol,
.list-notes-a>li>.item>ul,
.list-notes-a>li>.item>ol,
.list-notes-a>li>p+*,
.list-notes-a>li>p+[class^=list-],
.list-notes-a>li>p+[class*=" list-"],
.list-link-a>li>ul,
.list-link-a>li>ol,
.list-link-a>li>.item>ul,
.list-link-a>li>.item>ol,
.list-link-a>li>p+*,
.list-link-a>li>p+[class^=list-],
.list-link-a>li>p+[class*=" list-"],
.list-error-a>li>ul,
.list-error-a>li>ol,
.list-error-a>li>.item>ul,
.list-error-a>li>.item>ol,
.list-error-a>li>p+*,
.list-error-a>li>p+[class^=list-],
.list-error-a>li>p+[class*=" list-"] {
    margin-top: 12px !important
}

.list-a[class*=diff-col],
.list-order-a[class*=diff-col],
.list-notes-a[class*=diff-col],
.list-link-a[class*=diff-col],
.list-error-a[class*=diff-col] {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -40px;
    margin-bottom: -12px;
    padding-left: 0;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

@media only screen and (max-width:767px) {

    .list-a[class*=diff-col],
    .list-order-a[class*=diff-col],
    .list-notes-a[class*=diff-col],
    .list-link-a[class*=diff-col],
    .list-error-a[class*=diff-col] {
        display: block;
        margin-left: 0
    }
}

.list-a[class*=diff-col]>li,
.list-order-a[class*=diff-col]>li,
.list-notes-a[class*=diff-col]>li,
.list-link-a[class*=diff-col]>li,
.list-error-a[class*=diff-col]>li {
    margin-top: 0;
    margin-bottom: 12px;
    padding-left: 40px
}

@media only screen and (max-width:767px) {

    .list-a[class*=diff-col]>li,
    .list-order-a[class*=diff-col]>li,
    .list-notes-a[class*=diff-col]>li,
    .list-link-a[class*=diff-col]>li,
    .list-error-a[class*=diff-col]>li {
        padding-left: 0
    }
}

.list-a.diff-col2>li,
.list-order-a.diff-col2>li,
.list-notes-a.diff-col2>li,
.list-link-a.diff-col2>li,
.list-error-a.diff-col2>li {
    width: 50%
}

@media only screen and (max-width:767px) {

    .list-a.diff-col2>li,
    .list-order-a.diff-col2>li,
    .list-notes-a.diff-col2>li,
    .list-link-a.diff-col2>li,
    .list-error-a.diff-col2>li {
        width: 100%
    }
}

.list-a.diff-col3>li,
.list-order-a.diff-col3>li,
.list-notes-a.diff-col3>li,
.list-link-a.diff-col3>li,
.list-error-a.diff-col3>li {
    width: 33.33333%
}

@media only screen and (max-width:767px) {

    .list-a.diff-col3>li,
    .list-order-a.diff-col3>li,
    .list-notes-a.diff-col3>li,
    .list-link-a.diff-col3>li,
    .list-error-a.diff-col3>li {
        width: 100%
    }
}

.list-a.diff-col4>li,
.list-order-a.diff-col4>li,
.list-notes-a.diff-col4>li,
.list-link-a.diff-col4>li,
.list-error-a.diff-col4>li {
    width: 25%
}

@media only screen and (max-width:767px) {

    .list-a.diff-col4>li,
    .list-order-a.diff-col4>li,
    .list-notes-a.diff-col4>li,
    .list-link-a.diff-col4>li,
    .list-error-a.diff-col4>li {
        width: 100%
    }
}

.list-desc-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-desc-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-desc-a+p,
.list-desc-a+[class^=list-],
.list-desc-a+[class*=" list-"] {
    margin-top: 28px !important
}

.list-desc-a>dt {
    margin-bottom: 4px
}

.list-desc-a>dd+dt {
    margin-top: 20px
}

.list-a>li {
    position: relative;
    padding-left: 17px
}

.list-a>li:before {
    display: block;
    position: absolute;
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #87867e;
    left: 0;
    top: .65em
}

@media only screen and (max-width:480px) {
    .list-a>li:before {
        top: .5em
    }
}

.list-a[class*=diff-col]>li {
    padding-left: 57px
}

@media only screen and (max-width:767px) {
    .list-a[class*=diff-col]>li {
        padding-left: 17px
    }
}

.list-a[class*=diff-col]>li:before {
    left: 40px
}

@media only screen and (max-width:767px) {
    .list-a[class*=diff-col]>li:before {
        left: 0
    }
}

.list-order-a {
    counter-reset: num
}

.list-order-a>li {
    counter-increment: num;
    display: table;
    width: 100%
}

.list-order-a>li>.item {
    display: table-cell;
    width: 100%;
    padding-left: 12px
}

.list-order-a>li::before {
    display: table-cell;
    text-align: right;
    white-space: nowrap;
    content: counter(num, decimal) "."
}

.list-order-a.diff-upper-roman>li:before {
    content: counter(num, upper-roman)
}

.list-notes-a>li {
    display: table;
    width: 100%;
    font-size: 1.4rem
}

:lang(en) .list-notes-a>li {
    font-size: 1.6rem
}

.list-notes-a>li>.mark {
    display: table-cell;
    white-space: nowrap;
    padding-right: 12px;
    vertical-align: top
}

.list-notes-a>li>.item {
    display: table-cell;
    width: 100%;
    vertical-align: top
}

.list-desc-a>dt {
    font-weight: 700
}

:lang(en) .list-desc-a>dt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.list-desc-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px
}

.list-desc-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-desc-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-desc-b+p,
.list-desc-b+[class^=list-],
.list-desc-b+[class*=" list-"] {
    margin-top: 28px !important
}

.list-desc-b>dt {
    color: #57564f;
    font-weight: 700;
    margin-left: 16px
}

:lang(en) .list-desc-b>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.list-desc-b>dd {
    color: #57564f;
    margin-left: 16px
}

.list-desc-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-desc-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-desc-c+p,
.list-desc-c+[class^=list-],
.list-desc-c+[class*=" list-"] {
    margin-top: 28px !important
}

.list-desc-c>dt {
    display: inline-block;
    border: 1px solid #57564f;
    min-width: 90px;
    padding: 5px 4px;
    text-align: center;
    color: #57564f;
    margin-bottom: 16px
}

.list-desc-c>dd+dt {
    margin-top: 32px
}

.list-link-a>li>a {
    position: relative;
    display: inline-block;
    padding-left: 21px;
    text-decoration: none;
    color: #0000cc;
}

.list-link-a>li>a::before {
    display: inline-block;
    content: "";
    border-top: 2px solid #656766;
    border-right: 2px solid #656766;
    margin: -5px 14px 0 -23px;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.list-link-a>li>a:hover,
.list-link-a>li>a:active,
.list-link-a>li>a:focus {
    text-decoration: underline;
}

.list-link-a>li>ul,
.list-link-a>li>ol,
.list-link-a>li>.item>ul,
.list-link-a>li>.item>ol,
.list-link-a>li>p+*,
.list-link-a>li>p+[class^=list-],
.list-link-a>li>p+[class*=" list-"] {
    padding-left: 41px
}

@media only screen and (max-width:767px) {

    .list-link-a>li>ul,
    .list-link-a>li>ol,
    .list-link-a>li>.item>ul,
    .list-link-a>li>.item>ol,
    .list-link-a>li>p+*,
    .list-link-a>li>p+[class^=list-],
    .list-link-a>li>p+[class*=" list-"] {
        padding-left: 21px
    }
}

.list-link-a>li>ul.diff-indent,
.list-link-a>li>ol.diff-indent,
.list-link-a>li>.item>ul.diff-indent,
.list-link-a>li>.item>ol.diff-indent,
.list-link-a>li>p+*.diff-indent,
.list-link-a>li>p+[class^=list-].diff-indent,
.list-link-a>li>p+[class*=" list-"].diff-indent {
    padding-left: 21px
}

.list-link-a.diff-anchor {
    padding-left: 0
}

.list-link-a.diff-anchor>li {
    padding-left: 3px
}

.list-link-a.diff-anchor>li>a::before {
    margin-top: -8px;
    transform: rotate(135deg);
}

.list-link-a[class*=diff-col]>li {
    padding-left: 43px
}

@media only screen and (max-width:767px) {
    .list-link-a[class*=diff-col]>li {
        padding-left: 3px
    }
}

.list-link-a.diff-inline {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -12px;
    margin-left: -46px;
    padding-left: 0
}

.list-link-a.diff-inline>li {
    margin-top: 0;
    padding-left: 49px;
    margin-bottom: 12px
}

.list-link-b-wrapper {
    background: #fff;
    padding: 26px 20px 70px;
    position: relative
}

.list-link-b-wrapper+.list-link-b-wrapper {
    margin-top: 24px
}

@media only screen and (max-width:767px) {
    .list-link-b-wrapper+.list-link-b-wrapper {
        margin-top: 16px;
        background: none
    }
}

.diff-sitemap .list-link-b-wrapper {
    padding: 0;
    height: auto !important
}

@media only screen and (max-width:767px) {
    .list-link-b-wrapper {
        height: auto !important;
        padding: 12px 15px 11px
    }
}

.list-link-b-wrapper>*:last-child {
    margin-bottom: 0
}

.list-link-b>li a {
    position: relative;
    display: inline-block;
    padding-left: 21px;
    text-decoration: none
}

.list-link-b>li a::before {
    display: inline-block;
    content: "";
    border-top: 2px solid #656766;
    border-right: 2px solid #656766;
    margin: -5px 14px 0 -23px;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.list-link-b>li a:hover,
.list-link-b>li a:active,
.list-link-b>li a:focus {
    text-decoration: underline;
    color: #57564f
}

.list-link-b>li .first-wrapper>a {
    font-size: 2rem;
    font-weight: 700
}

:lang(ja) .diff-sitemap .list-link-b>li .first-wrapper>a {
    font-weight: 400
}

:lang(en) .list-link-b>li .first-wrapper>a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .list-link-b>li .first-wrapper>a {
        padding-left: 0;
        font-size: 1.6rem;
        text-decoration: underline
    }

    .list-link-b>li .first-wrapper>a::before {
        display: none
    }
}

@media only screen and (max-width:767px) {
    .list-link-b>li .first-wrapper {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.list-link-b>li .toggle-hook {
    display: none
}

@media only screen and (max-width:767px) {
    [data-script-enabled=true] .list-link-b>li .toggle-hook {
        display: block;
        position: relative;
        width: 26px;
        height: 24px;
        overflow: hidden;
        margin-left: 10px
    }

    [data-script-enabled=true] .list-link-b>li .toggle-hook::before {
        display: block;
        position: absolute;
        content: "";
        top: 50%;
        right: 2px;
        border-top: 2px solid #a40e1c;
        border-right: 2px solid #a40e1c;
        width: 10px;
        height: 10px;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        margin-top: -7px;
        transition: -webkit-transform .2s;
        transition: transform .2s
    }
}

@media only screen and (max-width:767px) {
    .list-link-b>li.is-open .toggle-hook::before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        margin-top: -3px
    }
}

.list-link-b>li .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

.list-link-b>li ul:first-child {
    margin-top: 10px;
    padding-top: 24px;
    border-top: 1px solid #c6c6c0
}

.diff-sitemap .list-link-b>li ul:first-child {
    border-top: 0;
    margin-top: 0
}

.diff-sitemap .list-link-b>li ul {
    padding-left: 18px;
    padding-top: 18px
}

@media only screen and (max-width:767px) {
    .diff-sitemap .list-link-b>li ul {
        padding-left: 0
    }
}

.diff-sitemap .list-link-b>li ul ul {
    padding-top: 12px
}

.diff-sitemap .list-link-b>li ul>li {
    font-size: 1.4rem
}

:lang(en) .diff-sitemap .list-link-b>li ul>li {
    font-size: 1.6rem
}

.list-link-b>li ul>li+li {
    margin-top: 12px
}

.list-link-b>li .list-link-a.right {
    position: absolute;
    right: 20px;
    bottom: 24px
}

@media only screen and (max-width:767px) {
    .list-link-b>li .list-link-a.right {
        position: static;
        margin-top: 24px
    }
}

@media only screen and (max-width:480px) {
    .list-error-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 21px
    }
}

.list-error-a>li {
    color: #cf122e;
    position: relative;
    padding-left: 36px;
    font-weight: 700
}

:lang(en) .list-error-a>li {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.list-error-a>li::before {
    display: block;
    position: absolute;
    content: "";
    background-position: -56px 0;
    width: 20px;
    height: 20px;
    left: 0;
    top: .25em
}

@media only screen and (max-width:480px) {
    .list-error-a>li::before {
        top: .1em
    }
}

.list-qa-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-qa-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-qa-a>dt {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 32px;
    position: relative;
    padding-left: 50px;
    line-height: 1.4
}

:lang(en) .list-qa-a>dt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .list-qa-a>dt {
        font-size: 1.8rem;
        padding-left: 45px;
        margin-bottom: 24px
    }
}

.list-qa-a>dt::before {
    display: inline-block;
    content: "";
    width: 30px;
    height: 30px;
    background: #cf122e;
    color: #fff;
    content: 'Q';
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    margin: 0 20px 3px -50px;
    font-size: 2rem;
    vertical-align: middle
}

@media only screen and (max-width:767px) {
    .list-qa-a>dt::before {
        margin: 0 15px -5px -45px
    }
}

.list-qa-a>dd {
    position: relative;
    padding-left: 50px;
    padding-bottom: 36px
}

@media only screen and (max-width:767px) {
    .list-qa-a>dd {
        padding-left: 45px;
        padding-bottom: 28px
    }
}

.list-qa-a>dd:last-child {
    padding-bottom: 0
}

.list-qa-a>dd::before {
    display: inline-block;
    content: "";
    width: 30px;
    height: 30px;
    background: #fff;
    color: #cf122e;
    content: 'A';
    font-weight: 700;
    text-align: center;
    font-size: 2rem;
    line-height: 1.3;
    margin: 0 20px -7px -50px;
    vertical-align: middle;
    border: solid 2px #cf122e;
}

@media only screen and (max-width:767px) {
    .list-qa-a>dd::before {
        margin: 0 15px -7px -45px
    }
}

.list-qa-a>dd+dt {
    padding-top: 36px;
    border-top: 1px solid #c6c6c0
}

@media only screen and (max-width:767px) {
    .list-qa-a>dd+dt {
        padding-top: 28px
    }
}

.list-label-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -8px;
    margin-bottom: -8px
}

.list-label-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 14px
}

.list-label-a>li {
    background: #eee;
    font-size: 1.4rem;
    color: #57564f;
    min-width: 90px;
    text-align: center;
    padding: 5px 14px;
    line-height: 1.2;
    margin-left: 8px;
    margin-bottom: 8px;
    font-weight: 700
}

:lang(en) .list-label-a>li {
    font-weight: 400;
    font-family: Arial, sans-serif
}

:lang(ja) .diff-news-temp .list-label-a>li {
    font-size: 1.2rem
}

.list-contact-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-bottom: -10px
}

.list-contact-a.diff-equality {
    margin-bottom: -24px
}

.list-contact-a.diff-equality>li {
    width: 33.3333%;
    margin-bottom: 24px
}

@media only screen and (max-width:767px) {
    .list-contact-a.diff-equality>li {
        width: 100%
    }
}

.list-contact-a>li {
    padding-left: 10px;
    margin-bottom: 10px;
    line-height: 1.3;
    font-size: 1.6rem
}

:lang(en) .list-contact-a>li {
    font-size: 1.8rem
}

.lyt-contact-a .list-contact-a>li {
    width: 100%
}

@media only screen and (max-width:767px) {
    .list-contact-a>li {
        width: 100%
    }
}

.lyt-contact-a .list-contact-a>li.type-tel .contact-inner::before {
    background-position: -56px -25px;
    width: 20px;
    height: 20px;
    margin-top: -10px
}

.list-contact-a>li.type-tel a::before {
    background-position: -56px -25px;
    width: 20px;
    height: 20px;
    margin-top: -10px
}

.list-contact-a>li.type-mail {
    word-break: break-all
}

.lyt-contact-a .list-contact-a>li.type-mail .contact-inner::before {
    background-position: -69px -75px;
    width: 20px;
    height: 16px;
    margin-top: -8px
}

.list-contact-a>li.type-mail a::before {
    background-position: -69px -75px;
    width: 20px;
    height: 16px;
    margin-top: -8px
}

.lyt-contact-a .list-contact-a>li.type-inquiry .contact-inner::before {
    background-position: -50px -50px;
    width: 20px;
    height: 20px;
    margin-top: -10px
}

.list-contact-a>li.type-inquiry a::before {
    background-position: -50px -50px;
    width: 20px;
    height: 20px;
    margin-top: -10px
}

.list-contact-a>li:not([class*=type-]) a {
    border: 1px solid #cf122e;
    padding: 14px 24px;
    color: #cf122e;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

.list-contact-a>li:not([class*=type-]) a::before {
    top: 50%;
    left: inherit;
    right: 12px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px
}

.list-contact-a a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    position: relative;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    padding: 14px 24px 14px 58px;
    text-decoration: none
}

:lang(en) .list-contact-a a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.lyt-contact-a .list-contact-a a {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 24px 24px 24px 58px
}

@media only screen and (max-width:767px) {
    .lyt-contact-a .list-contact-a a {
        padding-left: 34px
    }
}

.lyt-contact-a .list-contact-a a::before {
    display: none
}

@media only screen and (max-width:767px) {
    .list-contact-a a {
        height: auto !important
    }
}

.list-contact-a a::before {
    display: block;
    position: absolute;
    content: "";
    left: 24px;
    top: 50%
}

.lyt-contact-a .list-contact-a .contact-inner {
    font-size: 2.8rem;
    position: relative;
    padding-left: 32px;
    margin-left: -32px
}

@media only screen and (max-width:767px) {
    .lyt-contact-a .list-contact-a .contact-inner {
        font-size: 2rem
    }
}

.lyt-contact-a .list-contact-a .contact-inner::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 50%
}

.list-contact-a .supple-a {
    font-size: 1.4rem;
    display: inline
}

@media only screen and (max-width:767px) {
    .lyt-contact-a .list-contact-a .supple-a {
        display: block;
        text-align: center
    }
}

.list-contact-a .supple-b {
    font-size: 1.2rem;
    margin-top: 6px
}

.list-contact-a .notes-a {
    font-size: 1.2rem;
    margin-top: 12px;
    line-height: 1.6
}

.list-case-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -40px;
    margin-bottom: -40px
}

@media only screen and (max-width:767px) {
    .list-case-a {
        display: block;
        margin: 0
    }
}

.list-case-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-case-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-case-a>li {
    padding-left: 40px;
    margin-bottom: 40px;
    width: 50%
}

@media only screen and (max-width:767px) {
    .list-case-a>li {
        margin: 0;
        padding: 0;
        width: 100%
    }

    .list-case-a>li+li {
        margin-top: 52px
    }
}

.list-case-a>li:nth-child(odd) {
    position: relative
}

.list-case-a>li:nth-child(odd)::before {
    display: block;
    position: absolute;
    content: "";
    width: 28px;
    height: 28px;
    border-top: 4px solid #706f67;
    border-right: 4px solid #706f67;
    right: -26px;
    top: 50%;
    margin-top: -14px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

@media only screen and (max-width:767px) {
    .list-case-a>li:nth-child(odd)::before {
        right: 50%;
        bottom: -31px;
        top: inherit;
        margin-right: -14px;
        margin-top: 0;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg)
    }
}

.list-case-a .before,
.list-case-a .after {
    padding: 24px 40px;
    height: 100%
}

@media only screen and (max-width:767px) {

    .list-case-a .before,
    .list-case-a .after {
        padding: 16px 24px;
        height: auto
    }
}

.list-case-a .before>dt,
.list-case-a .after>dt {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 12px
}

:lang(en) .list-case-a .before>dt,
:lang(en) .list-case-a .after>dt {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {

    .list-case-a .before>dt,
    .list-case-a .after>dt {
        font-size: 2rem
    }
}

.list-case-a .before {
    background: #eee
}

.list-case-a .after {
    background: #fff3f4
}

.list-news-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-news-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-news-a>li {
    border-bottom: 1px solid #c6c6c0
}

.list-news-a .news-content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 22px 18px
}

@media only screen and (max-width:767px) {
    .list-news-a .news-content {
        display: block;
        padding: 20px 10px
    }
}

.list-news-a .news-content>*+* {
    margin-left: 38px;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

@media only screen and (max-width:767px) {
    .list-news-a .news-content>*+* {
        margin-left: 0;
        margin-top: 10px
    }
}

.list-news-a .news-content .date {
    white-space: nowrap
}

.list-news-a .news-content .icon-area {
    max-width: 123px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column
}

@media only screen and (max-width:767px) {
    .list-news-a .news-content .icon-area {
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        max-width: inherit;
        margin-bottom: -4px;
        margin-left: -4px
    }
}

.list-news-a .news-content .icon-area>* {
    display: block;
    /*  margin-top: 2px --- Ricoh --- */
    margin-top: 4px
}

@media only screen and (max-width:767px) {
    .list-news-a .news-content .icon-area>* {
        margin-top: 0;
        margin-bottom: 4px;
        margin-left: 4px
    }
}

.list-news-a .news-content .icon-area>*+* {
    margin-top: 4px
}

@media only screen and (max-width:767px) {
    .list-news-a .news-content .icon-area>*+* {
        margin-top: 0
    }
}

.list-news-a .news-content .news {
    width: 100%
}

.list-news-a a {
    text-decoration: none
}

.list-news-a a:hover,
.list-news-a a:active,
.list-news-a a:focus {
    color: #000
}

.list-news-a a:hover .news>li,
.list-news-a a:active .news>li,
.list-news-a a:focus .news>li {
    text-decoration: underline
}

.list-news-a.diff-hover a {
    transition: background .2s
}

.list-news-a.diff-hover a:hover,
.list-news-a.diff-hover a:active,
.list-news-a.diff-hover a:focus {
    background: #eee
}

.list-step-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .list-step-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.list-step-a>li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 16px;
    padding-bottom: 16px;
    position: relative
}

@media only screen and (max-width:767px) {
    .list-step-a>li {
        display: block;
        margin-bottom: 28px;
        padding-bottom: 0
    }
}

.list-step-a>li:last-child {
    margin-bottom: 0;
    padding-bottom: 0
}

.list-step-a>li:last-child::before {
    display: none
}

.list-step-a .step-txt {
    color: #cf122e;
    white-space: nowrap;
    font-size: 2rem;
    font-weight: 700;
    min-width: 86px;
    border-right: solid 2px #cf122e;
}

@media only screen and (max-width:767px) {
    .list-step-a .step-txt {
        border: 0;
    }
}

:lang(en) .list-step-a .step-txt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .list-step-a .step-txt {
        text-align: center
    }
}

.list-step-a .step-txt-inner {
    position: relative
}

@media only screen and (max-width:767px) {
    .list-step-a .step-txt-inner {
        display: inline-block;
        margin-bottom: 36px
    }
}

@media only screen and (max-width:767px) {
    .list-step-a .step-txt-inner::before {
        display: block;
        position: absolute;
        content: "";
        left: 50%;
        margin-left: -15px;
        bottom: -14px;
        width: 30px;
        height: 3px;
        background: #cf122e
    }
}

.list-step-a .step-content {
    padding-left: 20px;
}

.list-step-a .step-content>dt {
    font-weight: 700;
    font-size: 2rem;
    margin-bottom: 8px;
    padding-top: 2px
}

:lang(en) .list-step-a .step-content>dt {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

@media only screen and (max-width:767px) {
    .list-step-a .step-content>dt {
        font-size: 1.8rem
    }
}

.list-accordion-a>li {
    border-bottom: 1px solid #c6c6c0;
    padding: 17px 0
}

.list-accordion-a>li>*:first-child {
    color: #57564f;
    font-weight: 700
}

:lang(en) .list-accordion-a>li>*:first-child {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.list-accordion-a>li>.toggle-hook {
    padding: 0;
    display: block;
    width: 100%;
    text-align: left
}

.list-accordion-a>li>.toggle-content {
    margin-top: 14px;
    padding-left: 34px
}

@media only screen and (max-width:767px) {
    .list-accordion-a>li>.toggle-content {
        padding-left: 0
    }
}

[data-script-enabled="true"] [data-script-enabled="true"] .list-accordion-a>li.is-open>.toggle-content {
    display: block
}

[data-script-enabled=true] .list-accordion-a>li.is-open>.toggle-hook::after {
    display: none
}

[data-script-enabled=true] .list-accordion-a>li.is-close>.toggle-hook::after {
    width: 2px;
    height: 20px;
    margin-top: -9px;
    left: 9px
}

[data-script-enabled=true] .list-accordion-a>li>.toggle-hook {
    padding: 0 0 0 34px;
    position: relative
}

[data-script-enabled=true] .list-accordion-a>li>.toggle-hook::before,
[data-script-enabled=true] .list-accordion-a>li>.toggle-hook::after {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: .6em;
    background: #706f67;
    width: 20px;
    height: 2px
}

[data-script-enabled=true] .list-accordion-a>li .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

[data-script-enabled=true] .list-accordion-a>li>.toggle-content {
    display: none
}

.tab-a {
    border-bottom: 1px solid #c6c6c0
}

.tab-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 50px
}

@media only screen and (max-width:480px) {
    .tab-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 32px
    }
}

.tab-a .lists {
    height: 195px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media only screen and (min-width:1600px) {
    .tab-a .lists {
        background-size: 100% auto !important
    }
}

@media only screen and (max-width:767px) {
    .tab-a .lists {
        display: block;
        height: auto;
        background-position: center top;
        padding-top: 85px;
        border-bottom: 0
    }
}

@media only screen and (max-width:480px) {
    .tab-a .lists {
        background-size: auto 80px;
        padding-top: 55px
    }
}

.tab-a .tab-list-a-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    width: 100%
}

@media only screen and (max-width:1280px) {
    .tab-a .tab-list-a-wrapper {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .tab-a .tab-list-a-wrapper {
        padding-left: 16px;
        padding-right: 16px
    }
}

.tab-a .tab-list-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -8px;
    border-bottom: solid 4px #cf122e;
}

@media only screen and (max-width:767px) {
    .tab-a .tab-list-a {
        display: block;
        margin-left: 0;
        border-bottom: 0;
    }
}

.tab-a .tab-list-a>li {
    width: 25%;
}

@media only screen and (max-width:767px) {
    .tab-a .tab-list-a>li {
        width: 100%;
        padding-left: 0;
        margin-bottom: 2px
    }

    .tab-a .tab-list-a>li:last-child {
        margin-bottom: 0
    }
}

.tab-a .tab-list-a>li.is-active a {
    border: 1px solid #cf122e;
    border-bottom: 0;
    background: #cf122e;
    font-weight: 700;
    color: #fff;
    position: relative
}

@media only screen and (max-width:767px) {
    .tab-a .tab-list-a>li.is-active a {
        border-bottom: 1px solid #cf122e
    }
}

.tab-a .tab-list-a>li.is-active a::before {
    display: block;
    position: absolute;
    content: "";
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #cf122e
}

@media only screen and (max-width:767px) {
    .tab-a .tab-list-a>li.is-active a::before {
        display: none
    }
}

:lang(en) .tab-a .tab-list-a>li.is-active a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.tab-a .tab-list-a a {
    background: #f3f3f3;
    color: #464646;
    border-left: solid 1px #fff;
    border-right: solid 1px #dcdcdc;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    padding: 14px 10px;
    text-align: center;
    text-decoration: none;
    height: 100%
}

@media only screen and (max-width:767px) {
    .tab-a .tab-list-a a {
        padding: 10px;
        height: auto !important
    }
}

.tab-a .tab-list-a a:hover,
.tab-a .tab-list-a a:active,
.tab-a .tab-list-a a:focus {
    text-decoration: underline
}

[data-browser=IE11] .tab-a .tab-list-a .tab-text {
    pointer-events: none
}

.tab-a .tabs-a {
    max-width: 1280px;
    margin: 0 auto
}

@media only screen and (max-width:1280px) {
    .tab-a .tabs-a {
        padding-left: 8px;
        padding-right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .tab-a .tabs-a {
        padding-left: 16px;
        padding-right: 16px
    }
}

.tab-a .tabs-a>.tab-panel {
    padding: 40px
}

[data-script-enabled=true] .tab-a .tabs-a>.tab-panel {
    display: none
}

.tab-a .tabs-a>.tab-panel.is-active {
    display: block
}

@media only screen and (max-width:767px) {
    .tab-a .tabs-a>.tab-panel {
        padding: 26px 20px
    }
}

.tab-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 50px
}

@media only screen and (max-width:480px) {
    .tab-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 32px
    }
}

.tab-b .tab-list-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: -2px
}

@media only screen and (max-width:767px) {
    .tab-b .tab-list-b {
        display: block;
        margin-left: 0
    }
}

.tab-b .tab-list-b>li {
    padding-left: 2px;
    min-width: 105px
}

@media only screen and (max-width:767px) {
    .tab-b .tab-list-b>li {
        width: 100%;
        padding-left: 0;
        margin-bottom: 2px
    }

    .tab-b .tab-list-b>li:last-child {
        margin-bottom: 0
    }
}

.tab-b .tab-list-b>li.is-active a {
    border: 1px solid #cf122e;
    background: #cf122e;
    font-weight: 700;
    color: #fff
}

:lang(en) .tab-b .tab-list-b>li.is-active a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.tab-b .tab-list-b a {
    background: #f3f3f3;
    color: #464646;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    padding: 8px 10px;
    text-align: center;
    text-decoration: none;
    height: 100%
}

@media only screen and (max-width:767px) {
    .tab-b .tab-list-b a {
        height: auto !important
    }
}

.tab-b .tab-list-b a:hover,
.tab-b .tab-list-b a:active,
.tab-b .tab-list-b a:focus {
    text-decoration: underline
}

[data-browser=IE11] .tab-b .tab-list-b .tab-text {
    pointer-events: none
}

.tab-b .tabs-b>.tab-panel {
    padding-top: 18px
}

[data-script-enabled=true] .tab-b .tabs-b>.tab-panel {
    display: none
}

.tab-b .tabs-b>.tab-panel.is-active {
    display: block
}

.tab-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 50px
}

@media only screen and (max-width:480px) {
    .tab-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 32px
    }
}

.tab-c .tab-list-c {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -18px;
    margin-bottom: -14px
}

@media only screen and (max-width:767px) {
    .tab-c .tab-list-c {
        margin-left: -14px
    }
}

.tab-c .tab-list-c>li {
    font-size: 1.4rem;
    padding-left: 18px;
    padding-bottom: 14px
}

@media only screen and (max-width:767px) {
    .tab-c .tab-list-c>li {
        padding-left: 14px
    }
}

.tab-c .tab-list-c>li.is-active a {
    font-weight: 700;
    color: #cf122e;
    text-decoration: none
}

:lang(en) .tab-c .tab-list-c>li.is-active a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.tab-c .tab-list-c a {
    color: #57564f;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    padding: 0 4px 2px;
    text-align: center;
    text-decoration: none;
    height: 100%
}

@media only screen and (max-width:767px) {
    .tab-c .tab-list-c a {
        height: auto !important
    }
}

.tab-c .tab-list-c a:hover,
.tab-c .tab-list-c a:active,
.tab-c .tab-list-c a:focus {
    text-decoration: underline
}

[data-browser=IE11] .tab-c .tab-list-c .tab-text {
    pointer-events: none
}

.tab-c .tabs-c>.tab-panel {
    padding: 40px
}

[data-script-enabled=true] .tab-c .tabs-c>.tab-panel {
    display: none
}

.tab-c .tabs-c>.tab-panel.is-active {
    display: block
}

@media only screen and (max-width:767px) {
    .tab-c .tabs-c>.tab-panel {
        padding: 26px 20px
    }
}

.tab-d {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:767px) {
    .tab-d {
        display: block
    }
}

.tab-d+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 50px
}

@media only screen and (max-width:480px) {
    .tab-d+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 32px
    }
}

.tab-d .lists {
    min-width: 291px;
    max-width: 291px;
}

@media only screen and (max-width:767px) {
    .tab-d .lists {
        max-width: inherit;
        min-width: inherit;
        display: block;
        border-right: 0
    }
}

.tab-d .tab-list-d-wrapper {
    width: 100%;
    height: 100%;
    padding: 0 0 16px 0;
    min-width: 290px;
    border-right: solid 4px #cf122e;
}

@media only screen and (max-width:767px) {
    .tab-d .tab-list-d-wrapper {
        height: auto;
        padding: 0;
        min-width: inherit;
        border-right: 0;
    }
}

.tab-d .tab-list-d>li:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:767px) {
    .tab-d .tab-list-d>li {
        margin-bottom: 2px
    }

    .tab-d .tab-list-d>li:last-child {
        margin-bottom: 0
    }
}

.tab-d .tab-list-d>li.is-active a {
    /*  border: 1px solid #cf122e;  */
    border-right: 0;
    background: #cf122e;
    font-weight: 700;
    color: #fff;
    position: relative
}

@media only screen and (max-width:767px) {
    .tab-d .tab-list-d>li.is-active a {
        border-right: 1px solid #cf122e
    }
}

.tab-d .tab-list-d>li.is-active a::before {
    display: block;
    position: absolute;
    content: "";
    right: -1px;
    top: 0;
    width: 1px;
    height: 100%;
    background: #cf122e
}

@media only screen and (max-width:767px) {
    .tab-d .tab-list-d>li.is-active a::before {
        display: none
    }
}

:lang(en) .tab-d .tab-list-d>li.is-active a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.tab-d .tab-list-d a {
    background: #f3f3f3;
    color: #464646;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 100%;
    padding: 14px 10px;
    text-align: right;
    text-decoration: none;
    border-bottom: 1px solid #dcdcdc;
    margin-bottom: 1px;
}

@media only screen and (max-width:767px) {
    .tab-d .tab-list-d a {
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 10px
    }
}

.tab-d .tab-list-d a:hover,
.tab-d .tab-list-d a:active,
.tab-d .tab-list-d a:focus {
    text-decoration: underline
}

[data-browser=IE11] .tab-d .tab-list-d .tab-text {
    pointer-events: none
}

.tab-d .tabs-d>.tab-panel {
    padding: 4px 40px
}

[data-script-enabled=true] .tab-d .tabs-d>.tab-panel {
    display: none
}

.tab-d .tabs-d>.tab-panel.is-active {
    display: block
}

@media only screen and (max-width:767px) {
    .tab-d .tabs-d>.tab-panel {
        padding: 26px 20px
    }
}

a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none
}

@media only screen and (max-width:1000px) {
    .js-nav-fixed {
        display: none
    }
}

.nav-a {
    background: #dbdbdb;
    opacity: 0.9;
    position: relative;
    z-index: 0;
    top: inherit;
    transition: top .2s
}

@media only screen and (max-width:1000px) {
    .nav-a {
        display: none
    }
}

.nav-a::before {
    display: block;
    position: absolute;
    content: "";
    top: 100%;
    left: 0;
    width: 100%;
    height: 5px;
    z-index: -1;
    pointer-events: none
}

.is-fixed .nav-a {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 201;
    width: 100%
}

.is-fixed .nav-a::before {
    background: linear-gradient(rgba(0, 0, 0, .16), transparent)
}

.nav-a .nav-a-inner {
    max-width: 1280px;
    margin: 0 auto
}

@media only screen and (max-width:1280px) {
    .nav-a .nav-a-inner {
        padding: 0 8px
    }
}

@media only screen and (max-width:1000px) {
    .nav-a .nav-a-inner {
        padding: 0 16px
    }
}

.nav-a ul {
    display: table;
    width: 100%
}

.nav-a ul>li {
    font-size: 1.6rem;
    line-height: 1.4;
    position: relative;
    text-align: center;
    display: table-cell
}

.nav-a ul>li::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 1px;
    height: 32px;
    margin-top: -16px;
    background: #b1b1ac
}

.nav-a ul>li::after {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: -1px;
    width: 1px;
    height: 32px;
    margin-top: -16px;
    background: #b1b1ac
}

.nav-a ul>li.is-current a {
    font-weight: 700;
    color: #cf122e;
}

:lang(en) .nav-a ul>li.is-current a {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.nav-a ul a {
    text-decoration: none;
    padding: 21px 34px;
    display: table;
    width: 100%
}

.nav-a ul a:hover,
.nav-a ul a:active,
.nav-a ul a:focus {
    color: #cf122e;
}

.nav-a ul a span {
    display: table-cell;
    vertical-align: middle
}

@media only screen and (max-width:1000px) {
    .js-nav-fixed.diff-style-a {
        display: block
    }
}

.nav-b {
    position: relative;
    z-index: 0;
    top: inherit;
    transition: top .2s
}

.nav-b::before {
    display: block;
    position: absolute;
    content: "";
    top: 100%;
    left: 0;
    width: 100%;
    height: 5px;
    z-index: -1;
    pointer-events: none
}

.is-fixed .nav-b {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 201;
    width: 100%
}

.is-fixed .nav-b::before {
    background: linear-gradient(rgba(0, 0, 0, .16), transparent)
}

.nav-b .nav-b-inner {
    max-width: 1280px;
    margin: 0 auto;
    background: #dbdbdb;
    opacity: 0.9;
    padding: 20px 0
}

@media only screen and (max-width:1000px) {
    .nav-b .nav-b-inner {
        margin-right: 16px;
        margin-left: 16px
    }
}

.is-fixed .nav-b .nav-b-inner {
    max-width: inherit;
    margin: 0;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch
}

.nav-b ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -24px
}

@media only screen and (max-width:767px) {
    .nav-b ul {
        display: block;
        margin-bottom: 0
    }
}

.is-fixed .nav-b ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-bottom: 0
}

.is-fixed .nav-b ul>li {
    white-space: nowrap;
    border-bottom: 0;
    padding: 0 30px;
    margin: 0
}

.is-fixed .nav-b ul>li::before {
    display: block
}

.is-fixed .nav-b ul>li:last-child::before {
    display: none
}

.nav-b ul>li {
    line-height: 1.4;
    position: relative;
    text-align: center;
    padding: 0 30px;
    margin-bottom: 24px
}

@media only screen and (max-width:767px) {
    .nav-b ul>li {
        border-bottom: 1px solid #b1b1ac;
        padding: 0 4px 12px;
        margin: 0 16px 12px;
        text-align: left
    }

    .nav-b ul>li:last-child {
        border-bottom: 0;
        padding-bottom: 0;
        margin-bottom: 0
    }
}

.nav-b ul>li::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    width: 1px;
    height: 32px;
    margin-top: -16px;
    background: #b1b1ac
}

@media only screen and (max-width:767px) {
    .nav-b ul>li::before {
        display: none
    }
}

.nav-b ul a {
    text-decoration: none;
    position: relative;
    padding-left: 21px;
    display: inline-block
}

.nav-b ul a::before {
    display: inline-block;
    content: "";
    border-top: 2px solid #656766;
    border-right: 2px solid #656766;
    margin: -5px 10px 0 -23px;
    vertical-align: middle;
    width: 8px;
    height: 8px;
    transform: rotate(135deg)
}

:lang(en) .nav-b ul a::before {
    top: .4em
}

@media only screen and (max-width:480px) {
    :lang(en) .nav-b ul a::before {
        top: .3em
    }
}

.nav-structure-a {
    display: none;
    position: relative;
    text-align: right;
    max-width: 1280px;
    margin: 0 auto
}

[data-script-enabled=true] .nav-structure-a {
    display: block;
    z-index: 100
}

@media only screen and (max-width:1280px) {
    .nav-structure-a {
        padding: 0 8px
    }
}

@media only screen and (max-width:1000px) {
    .nav-structure-a {
        padding: 0 16px
    }
}

.nav-structure-a .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

.nav-structure-a>.menu-btn {
    padding: 8px 46px 8px 22px;
    text-align: center;
    text-decoration: none !important;
    display: inline-block;
    line-height: 1.4;
    position: relative;
    transition: background .2s;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    color: #cf122e !important;
    background: #fff;
    border: 1px solid #cf122e;
    white-space: nowrap
}

@media only screen and (max-width:767px) {
    .nav-structure-a>.menu-btn {
        width: 100%;
        padding: 11px 46px
    }
}

.nav-structure-a>.menu-btn:hover,
.nav-structure-a>.menu-btn:active,
.nav-structure-a>.menu-btn:focus {
    opacity: .6;
}

.nav-structure-a.is-close>.menu-btn::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 20px;
    height: 14px;
    margin-top: -7px;
    background: linear-gradient(#cf122e, #cf122e 2px, transparent 2px, transparent 6px, #cf122e 6px, #cf122e 8px, transparent 8px, transparent 12px, #cf122e 12px)
}

[data-script-enabled=true] .nav-structure-a.is-open>ul.toggle-content {
    display: block
}

.nav-structure-a.is-open>.menu-btn::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 2px;
    height: 23px;
    margin-top: -11px;
    background: #cf122e;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.nav-structure-a.is-open>.menu-btn::after {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 2px;
    height: 23px;
    background: #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -11px
}

.nav-structure-a>ul {
    box-shadow: 0 0 10px rgba(0, 0, 0, .3);
    width: 340px;
    position: absolute;
    right: 0;
    z-index: 1;
    text-align: left;
    margin-top: 16px
}

[data-script-enabled=true] .nav-structure-a>ul {
    display: none
}

@media only screen and (max-width:1280px) {
    .nav-structure-a>ul {
        right: 8px
    }
}

@media only screen and (max-width:1000px) {
    .nav-structure-a>ul {
        right: 16px
    }
}

@media only screen and (max-width:767px) {
    .nav-structure-a>ul {
        width: 100%;
        position: static;
        box-shadow: none
    }
}

.nav-structure-a>ul>li a {
    text-decoration: none;
    position: relative;
    display: block;
    padding: 11px 32px 11px 16px;
    border-bottom: 1px solid #c6c6c0;
    background: #f3f3f3;
}

.nav-structure-a>ul>li a:hover {
    background: #dedede;
}

.nav-structure-a>ul>li a::before {
    display: block;
    position: absolute;
    content: "";
    transition: -webkit-transform .2s;
    transition: transform .2s;
    top: 50%;
    right: 15px;
    width: 10px;
    height: 10px;
    margin-top: -6px;
    border-top: 2px solid #656766;
    border-right: 2px solid #656766;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.nav-structure-a>ul>li.is-open>a {
    color: #fff;
    background: #cf122e
}

.nav-structure-a>ul>li.is-open>a::before {
    margin-top: -5px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-color: #fff
}

.nav-structure-a>ul>li.is-close>a::before {
    margin-top: -9px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.nav-structure-a>ul>li>ul>li {
    font-size: 1.4rem
}

.nav-structure-a>ul>li>ul>li a {
    padding: 13px 32px 12px 38px
}

.nav-structure-a>ul>li>ul>li a::before {
    width: 8px;
    height: 8px
}

.nav-structure-a>ul>li>ul>li.is-open>a {
    color: #fff;
    background: #706f67
}

.nav-structure-a>ul>li>ul>li.is-open>a::before {
    margin-top: -3px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-color: #fff
}

.nav-structure-a>ul>li>ul>li.is-close>a::before {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

.nav-structure-a>ul>li>ul>li>ul>li>a {
    background: rgba(255, 255, 255, .96)
}

.nav-pager-a {
    position: relative;
    padding: 0 100px
}

@media only screen and (max-width:767px) {
    .nav-pager-a {
        padding: 0
    }
}

.nav-pager-a>ul {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ul {
        position: static;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 24px
    }
}

.nav-pager-a>ul>li {
    position: absolute
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ul>li {
        position: static;
        -webkit-flex: 1;
        -ms-flex: 1;
        flex: 1
    }
}

.nav-pager-a>ul .prev {
    left: 0;
    top: 0
}

.nav-pager-a>ul .prev a {
    padding: 10px 22px 10px 34px
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ul .prev a {
        padding-top: 7px;
        padding-bottom: 7px
    }
}

.nav-pager-a>ul .prev a:before {
    right: inherit;
    left: 12px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

.nav-pager-a>ul .next {
    right: 0;
    top: 0
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ul .next {
        text-align: right
    }
}

.nav-pager-a>ul .next a {
    padding-top: 10px;
    padding-bottom: 10px
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ul .next a {
        padding-top: 7px;
        padding-bottom: 7px
    }
}

.nav-pager-a>ol {
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -15px;
    margin-bottom: -15px
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ol {
        margin-left: -13px;
        margin-bottom: -15px
    }
}

.nav-pager-a>ol>li {
    display: inline-block;
    font-size: 1.4rem;
    padding-left: 15px;
    padding-bottom: 15px
}

@media only screen and (max-width:767px) {
    .nav-pager-a>ol>li {
        padding-left: 13px;
        padding-bottom: 15px
    }
}

.nav-pager-a>ol>li>a,
.nav-pager-a>ol>li>em {
    padding: 10px 0;
    display: block;
    background: #eee;
    color: #666;
    text-decoration: none;
    width: 44px;
    height: 44px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
    line-height: 1.8
}

@media only screen and (max-width:767px) {

    .nav-pager-a>ol>li>a,
    .nav-pager-a>ol>li>em {
        width: 37px;
        height: 37px;
        line-height: 1.4
    }
}

.nav-pager-a>ol>li>em {
    background: #706f67;
    color: #fff
}

.lyt-btn-a {
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px;
    margin-bottom: -16px
}

@media only screen and (max-width:480px) {
    .lyt-btn-a {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.lyt-btn-a+* {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-btn-a+* {
        margin-top: 36px
    }
}

.lyt-btn-a>li {
    margin-left: 16px;
    margin-bottom: 16px
}

.lyt-btn-a .btn-a,
.lyt-btn-a .btn-b,
.lyt-btn-a .btn-c {
    font-size: 2.4rem;
    min-width: 400px;
    padding: 10px 44px 10px 24px
}

@media only screen and (max-width:480px) {

    .lyt-btn-a .btn-a,
    .lyt-btn-a .btn-b,
    .lyt-btn-a .btn-c {
        min-width: inherit;
        width: 100%;
        font-size: 1.8rem;
        padding: 16px 24px 15px
    }
}

.lyt-btn-a .btn-b {
    padding: 16px 32px 15px 24px
}

@media only screen and (max-width:480px) {
    .lyt-btn-a .btn-b {
        padding: 16px 40px 15px 24px
    }
}

.lyt-btn-a .btn-b::before {
    margin-bottom: -2px
}

.lyt-btn-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px;
    margin-bottom: -16px
}

.lyt-btn-b.diff-center {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media only screen and (max-width:480px) {
    .lyt-btn-b {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.lyt-btn-b+* {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-btn-b+* {
        margin-top: 36px
    }
}

.lyt-btn-b>li {
    padding-left: 16px;
    margin-bottom: 16px
}

@media only screen and (max-width:480px) {

    .lyt-btn-b .btn-a,
    .lyt-btn-b .btn-b {
        width: 100%
    }
}

.lyt-btn-c {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px;
    margin-bottom: -16px
}

.lyt-btn-c.diff-center {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media only screen and (max-width:480px) {
    .lyt-btn-c {
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.lyt-btn-c+* {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-btn-c+* {
        margin-top: 36px
    }
}

.lyt-btn-c>li {
    padding-left: 16px;
    margin-bottom: 16px
}

.lyt-btn-c .btn-a,
.lyt-btn-c .btn-b {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media only screen and (max-width:767px) {

    .lyt-btn-c .btn-a,
    .lyt-btn-c .btn-b {
        height: auto !important
    }
}

.lyt-btn-c.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:767px) {
    .lyt-btn-c.diff-col2>* {
        width: 100%
    }
}

.lyt-btn-c.diff-col3>* {
    width: 33.33333%
}

@media only screen and (max-width:767px) {
    .lyt-btn-c.diff-col3>* {
        width: 100%
    }
}

.lyt-btn-c.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:767px) {
    .lyt-btn-c.diff-col4>* {
        width: 100%
    }
}

.btn-a,
.btn-b {
    padding: 8px 34px 8px 22px;
    text-align: center;
    text-decoration: none !important;
    display: inline-block;
    line-height: 1.4;
    position: relative;
    transition: background .2s;
}

@media only screen and (max-width:480px) {

    .btn-a,
    .btn-b {
        padding: 12px 34px 12px 22px
    }
}

.btn-a::before,
.btn-b::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #cf122e;
    border-right: 2px solid #cf122e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -4px
}

.btn-a .icon-a,
.btn-b .icon-a {
    display: none
}

.btn-a[href$=".pdf"]::before,
.btn-a[target=_blank]::before,
.btn-a[formtarget=_blank]::before,
.btn-b[href$=".pdf"]::before,
.btn-b[target=_blank]::before,
.btn-b[formtarget=_blank]::before {
    display: none
}

.btn-a[href$=".pdf"] .icon-a,
.btn-a[target=_blank] .icon-a,
.btn-a[formtarget=_blank] .icon-a,
.btn-b[href$=".pdf"] .icon-a,
.btn-b[target=_blank] .icon-a,
.btn-b[formtarget=_blank] .icon-a {
    position: absolute;
    right: 12px;
    top: 50%;
    margin: -5px 0 0;
    display: inline-block
}

.btn-a[href$=".pdf"] .icon-a,
.btn-b[href$=".pdf"] .icon-a {
    margin-top: -8px
}

.btn-a {
    color: #cf122e !important;
    background: #fff;
    border: 1px solid #cf122e;
}

.btn-a::before {
    border-color: #cf122e;
}

.btn-a:hover,
.btn-a:active,
.btn-a:focus {
    opacity: 0.6;
}

.btn-a.is-disabled,
.btn-a:disabled {
    background: #dad9d6;
    color: #57564f !important;
    border: 1px solid #b1b1ac;
    box-shadow: none;
    pointer-events: none
}

.btn-a.is-disabled::before,
.btn-a:disabled::before {
    border-color: #706f67
}

.btn-b {
    color: #fff !important;
    background: #cf122e;
    border: 1px solid #cf122e;
}

.btn-b::before {
    border-color: #fff
}

.btn-b.diff-tel::before {
    background-position: -81px -50px;
    width: 20px;
    height: 20px
}

.btn-b.diff-tel.is-disabled::before,
.btn-b.diff-tel:disabled::before {
    background-position: 0 -50px;
    width: 20px;
    height: 20px
}

.btn-b.diff-mail::before {
    background-position: -106px 0;
    width: 20px;
    height: 16px
}

.btn-b.diff-mail.is-disabled::before,
.btn-b.diff-mail:disabled::before {
    background-position: -44px -75px;
    width: 20px;
    height: 16px
}

.btn-b.diff-login::before {
    background-position: -28px 0;
    width: 23px;
    height: 20px
}

.btn-b.diff-login.is-disabled::before,
.btn-b.diff-login:disabled::before {
    background-position: 0 0;
    width: 23px;
    height: 20px
}

.btn-b:hover,
.btn-b:active,
.btn-b:focus {
    opacity: 0.6;
}

.btn-b.is-disabled,
.btn-b:disabled {
    background: #dad9d6;
    color: #57564f !important;
    border: 1px solid #b1b1ac;
    box-shadow: none;
    pointer-events: none
}

.btn-b.is-disabled::before,
.btn-b:disabled::before {
    border-color: #706f67
}

.box-a {
    border: 1px solid #c6c6c0;
    padding: 30px 40px
}

@media only screen and (max-width:480px) {
    .box-a {
        padding: 24px
    }
}

.box-a>*:first-child {
    margin-top: 0
}

.box-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .box-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.box-b {
    background: #eee;
    border: 1px solid #c6c6c0;
    padding: 24px 40px 30px
}

@media only screen and (max-width:480px) {
    .box-b {
        padding: 16px 24px 20px
    }
}

.box-b>*:first-child {
    margin-top: 0
}

.box-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .box-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.box-b .lyt-contact-a .box-hdg-a {
    text-align: center
}

.box-b .box-hdg-a {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 12px
}

:lang(en) .box-b .box-hdg-a {
    font-size: 2.4rem;
    margin-bottom: 0;
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.box-b .box-hdg-b {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 14px
}

:lang(en) .box-b .box-hdg-b {
    font-size: 1.8rem;
    font-weight: 400;
    font-family: Arial, sans-serif
}

.box-b .box-hdg-c {
    font-size: 1.4rem;
    font-weight: 400;
    margin-bottom: 12px
}

.box-b .list-desc-b>dt {
    color: #000
}

.box-b .info-a {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 6px
}

:lang(en) .box-b .info-a {
    font-size: 1.8rem;
    font-weight: 400;
    font-family: Arial, sans-serif
}

.box-b .info-b {
    font-size: 1.4rem;
    margin-top: 0 !important
}

:lang(en) .box-b .info-b {
    font-size: 1.6rem
}

.main-contents .box-b *+.list-contact-a {
    margin-top: 16px !important
}

.box-register-a {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto
}

.box-register-a+* {
    margin-top: 16px
}

.box-register-a>*:first-child {
    margin-top: 0
}

.js-tab-register .tab-list .is-active a {
    color: #cf122e;
    font-family: Arial, sans-serif
}

.js-tab-register .tab-panel+.tab-panel {
    margin-top: 20px
}

[data-script-enabled=true] .js-tab-register .tab-panel {
    display: none;
    margin-top: 0
}

.js-tab-register .tab-panel.is-active {
    display: block;
    overflow: hidden
}

.box-share-a {
    border: 1px solid #c6c6c0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden
}

@media only screen and (max-width:767px) {
    .box-share-a {
        display: block;
        padding: 30px 40px
    }
}

.box-share-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .box-share-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.box-share-a .box-hdg-a {
    color: #57564f;
    font-size: 1.6rem;
    width: 500px;
    text-align: right;
    padding: 36px 74px 36px 0;
    position: relative
}

@media only screen and (max-width:1280px) {
    .box-share-a .box-hdg-a {
        width: calc(500vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .box-share-a .box-hdg-a {
        width: auto;
        text-align: center;
        padding: 0;
        margin-bottom: 24px
    }
}

.box-share-a .box-hdg-a::before {
    display: block;
    position: absolute;
    content: "";
    right: 41px;
    top: 50%;
    width: 200px;
    height: 200px;
    border-top: 1px solid #c6c6c0;
    border-right: 1px solid #c6c6c0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -100px
}

@media only screen and (max-width:767px) {
    .box-share-a .box-hdg-a::before {
        display: none
    }
}

.box-share-a .list-share-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -15px;
    margin-left: -40px;
    padding-left: 96px
}

@media only screen and (max-width:1280px) {
    .box-share-a .list-share-a {
        padding-left: calc(96vw*100/1280);
        margin-left: calc(-40vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .box-share-a .list-share-a {
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: -27px;
        padding-left: 0
    }
}

.box-share-a .list-share-a>li {
    margin-bottom: 15px;
    padding-left: 40px
}

@media only screen and (max-width:1280px) {
    .box-share-a .list-share-a>li {
        padding-left: calc(40vw*100/1280)
    }
}

@media only screen and (max-width:767px) {
    .box-share-a .list-share-a>li {
        padding-left: 27px
    }
}

.lyt-visual-item-b {
    max-width: 1280px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-b {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

.lyt-visual-item-b .panel {
    max-width: 400px;
    min-height: 420px;
    background: rgba(0, 0, 0, .7);
    color: #fff;
    position: relative;
    height: 100%;
    padding: 30px;
    margin-right: 60px
}

@media only screen and (max-width:1000px) {
    .lyt-visual-item-b .panel {
        margin-right: 0
    }
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-b .panel {
        max-width: inherit;
        width: 100%;
        min-height: inherit;
        background: #57564f;
        padding: 16px;
        height: auto
    }
}

.lyt-visual-item-b .panel::before {
    display: block;
    position: absolute;
    content: "";
    top: 20px;
    right: 20px;
    background: url(/common/img/v5/icons/icon-bq-01.png) no-repeat;
    width: 49px;
    height: 44px
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-b .panel::before {
        display: none
    }
}

.lyt-visual-item-b .panel .txt-block {
    line-height: 2
}

.lyt-visual-item-b .panel .txt-block>*+* {
    margin-top: 10px !important
}

.lyt-visual-item-b .panel .txt-block+* {
    margin-top: 20px
}

.lyt-visual-item-b .txt-a {
    font-weight: 700
}

:lang(en) .lyt-visual-item-b .txt-a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.lyt-visual-item-b .txt-b {
    font-size: 1.4rem
}

.lyt-visual-item-b .visual {
    min-height: 420px;
    position: absolute;
    left: 0;
    top: 0
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-b .visual {
        position: static;
        min-height: 100%
    }
}

.lyt-visual-item-b .visual img {
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: 0 auto;
    z-index: -1;
    max-width: inherit
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-b .visual img {
        max-width: 100%;
        position: static;
        height: auto
    }
}

.lyt-visual-item-c {
    /*    background: url(/tmp/bg-products-01.jpg) no-repeat center top #36373b */
}

@media only screen and (min-width:1600px) {
    .lyt-visual-item-c {
        background-size: 100% auto !important
    }
}

@media only screen and (max-width:1280px) {
    .lyt-visual-item-c {
        max-height: inherit
    }
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c {
        background-position: left top;
        background-size: auto 100%
    }
}

.lyt-visual-item-c .hdg-a {
    color: #fff;
    padding-bottom: 0;
    margin-bottom: 0
}

.lyt-visual-item-c .hdg-a .hdg-a-inner {
    width: 50%;
    display: block
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .hdg-a .hdg-a-inner {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .hdg-a {
        padding-right: 16px
    }
}

.lyt-visual-item-c .hdg-a+.item {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .hdg-a+.item .visual {
        padding-top: 0
    }
}

.lyt-visual-item-c .item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto
}

@media only screen and (max-width:1280px) {
    .lyt-visual-item-c .item {
        padding: 0 8px
    }
}

@media only screen and (max-width:1000px) {
    .lyt-visual-item-c .item {
        padding: 0 16px
    }
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .item {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        padding: 0
    }
}

.lyt-visual-item-c .item>* {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .item>* {
        -webkit-flex: auto;
        -ms-flex: auto;
        flex: auto
    }
}

.lyt-visual-item-c .panel {
    padding: 20px 0
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .panel {
        background: #eee;
        padding: 20px 16px;
        width: 100%
    }
}

.lyt-visual-item-c .panel .catch {
    color: #fff;
    font-size: 1.8rem
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .panel .catch {
        color: #000;
        font-size: 1.6rem
    }
}

@media only screen and (max-width:767px) {
    .lyt-visual-item-c .visual {
        min-height: 100%;
        padding-top: 40px;
        width: 100%;
        padding-left: 16px;
        padding-right: 16px
    }
}

.lyt-col-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-col-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.lyt-col-a>.col {
    width: 100%
}

.lyt-col-a[class*=diff-col] {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -38px;
    margin-bottom: -38px !important
}

.lyt-col-a[class*=diff-col].diff-margin-a {
    margin-left: -16px;
    margin-bottom: -16px !important
}

@media only screen and (max-width:767px) {
    .lyt-col-a[class*=diff-col].diff-margin-a {
        margin-left: 0
    }
}

.lyt-col-a[class*=diff-col].diff-margin-a>* {
    padding-left: 16px;
    padding-bottom: 16px
}

@media only screen and (max-width:767px) {
    .lyt-col-a[class*=diff-col].diff-margin-a>* {
        padding-left: 0;
        padding-bottom: 0;
        margin-bottom: 16px
    }
}

@media only screen and (max-width:767px) {
    .lyt-col-a[class*=diff-col] {
        display: block;
        margin-left: 0;
        margin-bottom: -16px !important
    }
}

.lyt-col-a[class*=diff-col]>* {
    padding-left: 38px;
    padding-bottom: 38px
}

@media only screen and (max-width:767px) {
    .lyt-col-a[class*=diff-col]>* {
        padding-left: 0;
        padding-bottom: 0;
        margin-bottom: 16px
    }
}

.lyt-col-a.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:767px) {
    .lyt-col-a.diff-col2>* {
        width: 100%
    }
}

.lyt-col-a.diff-col3>* {
    width: 33.333333%
}

@media only screen and (max-width:767px) {
    .lyt-col-a.diff-col3>* {
        width: 100%
    }
}

.lyt-col-a.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:1000px) {
    .lyt-col-a.diff-col4>* {
        width: 50%
    }
}

@media only screen and (max-width:767px) {
    .lyt-col-a.diff-col4>* {
        width: 100%
    }
}

.lyt-col-a.diff-col5>* {
    width: 20%
}

@media only screen and (max-width:1000px) {
    .lyt-col-a.diff-col5>* {
        width: 50%
    }
}

@media only screen and (max-width:767px) {
    .lyt-col-a.diff-col5>* {
        width: 100%
    }
}

.lyt-col-a.diff-widget .widget-header+* {
    margin-top: 0 !important
}

@media only screen and (max-width:1279px) {
    .lyt-col-a.diff-widget {
        display: none
    }
}

.lyt-idx-a {
    text-align: center
}

.lyt-idx-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 16px
}

.lyt-idx-a+[class*=lyt-btn-] {
    margin-top: 32px
}

.lyt-idx-a>* {
    display: inline-block;
    text-align: left
}

.lyt-idx-a>* a {
    position: relative;
    display: block;
    text-decoration: none;
    transition: opacity .3s
}

.lyt-idx-a>* a:hover,
.lyt-idx-a>* a:active,
.lyt-idx-a>* a:focus {
    opacity: 0.6;
}

.lyt-idx-a>* img:not(.icon-a) {
    width: 100%
}

.lyt-idx-a.diff-hover-zoom>* a {
    box-shadow: 0 0 40px rgba(0, 0, 0, .26);
    overflow: hidden
}

.lyt-idx-a.diff-hover-zoom>* a>img {
    transition: -webkit-transform .2s;
    transition: transform .3s
}

.lyt-idx-a.diff-hover-zoom>* a:hover,
.lyt-idx-a.diff-hover-zoom>* a:active,
.lyt-idx-a.diff-hover-zoom>* a:focus {
    opacity: 1;
}

.lyt-idx-a.diff-hover-zoom>* a:hover>img,
.lyt-idx-a.diff-hover-zoom>* a:active>img,
.lyt-idx-a.diff-hover-zoom>* a:focus>img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.lyt-idx-a .desc-box {
    position: absolute;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .7);
    width: 100%;
    color: #fff;
    line-height: 1.5;
    padding: 10px 32px 10px 16px
}

@media only screen and (max-width:1000px) {
    .lyt-idx-a .desc-box {
        position: relative;
        left: auto;
        bottom: auto
    }
}

.lyt-idx-a .desc-box::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px
}

.lyt-idx-a[class*=diff-col] {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -30px;
    margin-bottom: -30px
}

@media only screen and (max-width:480px) {
    .lyt-idx-a[class*=diff-col] {
        display: block;
        margin-left: 0;
        margin-bottom: -16px
    }
}

.lyt-idx-a[class*=diff-col]>* {
    padding-left: 30px;
    padding-bottom: 30px
}

@media only screen and (max-width:480px) {
    .lyt-idx-a[class*=diff-col]>* {
        padding-left: 0;
        padding-bottom: 0;
        margin-bottom: 16px
    }
}

.lyt-idx-a.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:480px) {
    .lyt-idx-a.diff-col2>* {
        width: 100%
    }
}

.lyt-idx-a.diff-col3>* {
    width: 33.333333%
}

@media only screen and (max-width:480px) {
    .lyt-idx-a.diff-col3>* {
        width: 100%
    }
}

.lyt-idx-a.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:480px) {
    .lyt-idx-a.diff-col4>* {
        width: 100%
    }
}

.lyt-idx-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px;
    margin-bottom: -16px
}

.lyt-idx-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-idx-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.lyt-idx-b>* {
    padding-left: 16px;
    padding-bottom: 16px
}

@media only screen and (max-width:767px) {
    .lyt-idx-b>*>.lyt-idx-b {
        margin-top: -8px
    }
}

.lyt-idx-b>* a {
    display: block;
    text-decoration: none;
    border: 1px solid #c6c6c0;
    transition: opacity .3s;
}

.lyt-idx-b>* a:hover {
    opacity: .6;
}

.lyt-idx-b>* img:not(.icon-a) {
    width: 100%
}

.lyt-idx-b .text-box {
    background: #fff;
    width: 100%;
    padding: 14px 32px 14px 16px;
    position: relative
}

.lyt-idx-b .text-box::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 12px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #656766;
    border-right: 2px solid #656766;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -5px
}

.lyt-idx-b .text-box.diff-type-a {
    padding: 35px 32px 35px 24px
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box.diff-type-a {
        padding: 18px 32px 18px 24px
    }
}

.lyt-idx-b .text-box.diff-type-a .title {
    font-size: 2.4rem
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box.diff-type-a .title {
        font-size: 1.8rem
    }
}

.lyt-idx-b .text-box.diff-type-b {
    padding: 35px 35px 35px 24px
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box.diff-type-b {
        padding: 18px 32px 18px 24px
    }
}

.lyt-idx-b .text-box.diff-type-b .title {
    font-size: 2rem
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box.diff-type-b .title {
        font-size: 1.6rem
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box.diff-type-b .desc {
        font-size: 1.4rem
    }
}

.lyt-idx-b .text-box .title {
    font-weight: 700;
    line-height: 1.5
}

.lyt-idx-b a:hover .text-box .title {
    text-decoration: underline;
}

:lang(en) .lyt-idx-b .text-box .title {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.lyt-idx-b .text-box .title+.desc {
    margin-top: 14px
}

@media only screen and (max-width:767px) {
    .lyt-idx-b .text-box .desc.diff-sp-hide {
        display: none
    }
}

.lyt-idx-b.diff-lyt-a a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.lyt-idx-b.diff-lyt-a img:not(.icon-a) {
    width: auto;
    max-width: inherit
}

@media only screen and (max-width:1000px) {
    .lyt-idx-b.diff-lyt-a img:not(.icon-a) {
        width: 100%
    }
}

.lyt-idx-b.diff-lyt-a .text-box.diff-type-a {
    padding: 27px 32px 27px 24px
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-lyt-a .text-box.diff-type-a {
        padding: 18px 32px 18px 24px
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-lyt-a .text-box .desc {
        display: block
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-sp-col2 {
        margin-left: -8px;
        margin-bottom: -8px
    }

    .lyt-idx-b.diff-sp-col2>* {
        padding-left: 8px;
        padding-bottom: 8px
    }

    .lyt-idx-b.diff-sp-col2 .text-box {
        padding: 11px 32px 11px 16px
    }
}

.lyt-idx-b.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col2>* {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col2.diff-sp-col2>* {
        width: 50%
    }
}

.lyt-idx-b.diff-col3>* {
    width: 33.333333%
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col3>* {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col3.diff-sp-col2>* {
        width: 50%
    }
}

.lyt-idx-b.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col4>* {
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-b.diff-col4.diff-sp-col2>* {
        width: 50%
    }
}

.lyt-idx-c {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 -16px -16px
}

.lyt-idx-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-idx-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

@media only screen and (max-width:767px) {
    .lyt-idx-c {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 -8px -8px
    }
}

.lyt-idx-c>* {
    margin: 0 0 16px 16px
}

@media only screen and (max-width:767px) {
    .lyt-idx-c>* {
        margin: 0 0 8px 8px
    }
}

.lyt-idx-c .large-panel {
    max-width: 848px
}

.lyt-idx-c .small-panel {
    max-width: 415px
}

@media only screen and (max-width:767px) {
    .lyt-idx-c .small-panel {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        max-width: inherit;
        margin: 0 0 -8px
    }

    .lyt-idx-c .small-panel>* {
        width: 50%;
        padding: 0 0 8px 8px
    }

    .lyt-idx-c .small-panel [class*=lyt-btn-] {
        display: none
    }
}

.lyt-idx-c .small-panel>*+* {
    margin-top: 16px
}

@media only screen and (max-width:767px) {
    .lyt-idx-c .small-panel>*+* {
        margin-top: 0
    }
}

.lyt-idx-c a {
    display: block;
    position: relative
}

.lyt-idx-c a [class*=lyt-btn-] {
    position: absolute;
    bottom: 10px;
    right: 10px
}

.lyt-idx-c .visual img {
    width: 100%;
    display: block
}

.lyt-movie-a {
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding-top: 45%
}

.lyt-movie-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 40px
}

@media only screen and (max-width:480px) {
    .lyt-movie-a {
        padding-top: 56%
    }
}

.lyt-movie-a iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0
}

.lyt-iframe-a {
    overflow-x: auto
}

.lyt-iframe-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 32px
}

@media only screen and (max-width:480px) {
    .lyt-iframe-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 24px
    }
}

.lyt-iframe-a iframe {
    border: 0;
    width: 100% !important
}

.lyt-iframe-a.js-iframe-height {
    overflow-y: hidden
}

.lyt-iframe-a.js-iframe-height iframe {
    height: 100% !important;
    overflow-y: hidden;
    vertical-align: bottom;
    box-sizing: content-box
}

.lyt-map-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 32px
}

@media only screen and (max-width:480px) {
    .lyt-map-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 24px
    }
}

.lyt-map-a>iframe {
    border: 0;
    width: 100%;
    max-height: 600px;
    height: 46.875vw
}

@media only screen and (max-width:480px) {
    .lyt-map-a>iframe {
        max-height: 360px;
        height: 112.5vw
    }
}

#gmaps-content {
    max-height: 600px;
    height: 46.875vw;
    width: 100%
}

@media only screen and (max-width:480px) {
    #gmaps-content {
        max-height: 360px;
        height: 112.5vw
    }
}

#gmaps-content+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 32px
}

@media only screen and (max-width:480px) {
    #gmaps-content+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 24px
    }
}

.lyt-item-a {
    display: table;
    width: 100%
}

@media only screen and (max-width:767px) {
    .lyt-item-a {
        table-layout: fixed
    }
}

.lyt-item-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-item-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.lyt-item-a>* {
    display: table-cell;
    vertical-align: top;
    direction: ltr
}

.lyt-item-a>.item {
    width: 100%
}

@media only screen and (max-width:767px) {
    .lyt-item-a>.item {
        padding-top: 14px
    }
}

.lyt-item-a>.item>*:first-child {
    margin-top: 0
}

.lyt-item-a>.item>*:last-child {
    margin-bottom: 0
}

.lyt-item-a>.img {
    text-align: center
}

.lyt-item-a>.img>.img-inner {
    display: table;
    width: 200px
}

@media only screen and (max-width:1000px) {
    .lyt-item-a>.img>.img-inner {
        max-width: 300px
    }
}

@media only screen and (max-width:767px) {
    .lyt-item-a>.img>.img-inner {
        display: block;
        width: auto;
        max-width: inherit
    }
}

.lyt-item-a>.img img {
    max-width: inherit
}

@media only screen and (max-width:767px) {
    .lyt-item-a>.img img {
        max-width: 100%
    }
}

.lyt-item-a>.img iframe {
    max-width: 400px;
    max-height: 247px;
    width: 31.25vw;
    height: 19.296875vw;
    border: 0
}

@media only screen and (max-width:767px) {
    .lyt-item-a>.img iframe {
        width: 100%;
        height: 61.79921vw;
        max-height: 474px;
        max-width: inherit
    }
}

.lyt-item-a>.img .caption {
    display: block;
    margin-top: 8px;
    font-size: 1.4rem
}

@media only screen and (max-width:767px) {
    .lyt-item-a>.img {
        display: table-header-group
    }
}

.lyt-item-a.is-img-l {
    direction: rtl
}

.lyt-item-a.is-img-l .img {
    padding-right: 40px
}

@media only screen and (max-width:767px) {
    .lyt-item-a.is-img-l .img {
        padding-right: 0
    }
}

.lyt-item-a.is-img-r .img {
    padding-left: 40px
}

@media only screen and (max-width:767px) {
    .lyt-item-a.is-img-r .img {
        padding-left: 0
    }
}

.lyt-item-b::before,
.lyt-item-b::after {
    display: table;
    content: ""
}

.lyt-item-b::after {
    clear: both
}

.lyt-item-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-item-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.lyt-item-b>.item {
    width: 100%
}

@media only screen and (max-width:767px) {
    .lyt-item-b>.item {
        padding-top: 14px
    }
}

.lyt-item-b>.item>*:first-child {
    margin-top: 0
}

.lyt-item-b>.item>*:last-child {
    margin-bottom: 0
}

.lyt-item-b .img {
    text-align: center
}

.lyt-item-b .img>.img-inner {
    display: table;
    width: 200px
}

@media only screen and (max-width:1000px) {
    .lyt-item-b .img>.img-inner {
        max-width: 300px
    }
}

@media only screen and (max-width:767px) {
    .lyt-item-b .img>.img-inner {
        display: block;
        width: auto;
        max-width: inherit
    }
}

.lyt-item-b .img img {
    max-width: inherit
}

@media only screen and (max-width:767px) {
    .lyt-item-b .img img {
        max-width: 100%
    }
}

.lyt-item-b .img iframe {
    max-width: 400px;
    max-height: 247px;
    width: 31.25vw;
    height: 19.296875vw;
    border: 0
}

@media only screen and (max-width:767px) {
    .lyt-item-b .img iframe {
        width: 100%;
        height: 61.79921vw;
        max-height: 474px;
        max-width: inherit
    }
}

.lyt-item-b .img .caption {
    display: block;
    margin-top: 8px;
    font-size: 1.4rem
}

@media only screen and (max-width:767px) {
    .lyt-item-b .img {
        margin: 0 auto;
        float: none;
        text-align: center
    }
}

.lyt-item-b.is-img-l .item {
    width: 100%
}

.lyt-item-b.is-img-l .img {
    float: left;
    padding-right: 40px
}

@media only screen and (max-width:767px) {
    .lyt-item-b.is-img-l .img {
        float: none;
        padding-right: 0
    }
}

.lyt-item-b.is-img-r .item {
    width: 100%
}

.lyt-item-b.is-img-r .img {
    float: right;
    padding-left: 40px
}

@media only screen and (max-width:767px) {
    .lyt-item-b.is-img-r .img {
        float: none;
        padding-left: 0
    }
}

.lyt-img-a {
    text-align: center;
    display: none;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -16px;
    margin-bottom: -16px
}

@media only screen and (max-width:1279px) {
    .lyt-img-a {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex
    }
}

.lyt-img-a>li {
    margin-left: 16px;
    margin-bottom: 16px
}

.lyt-img-b {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center
}

.lyt-img-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .lyt-img-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

.lyt-img-b+p,
.lyt-img-b+[class^=list-],
.lyt-img-b+[class*=" list-"] {
    margin-top: 28px !important
}

.lyt-img-b>* {
    width: 100%
}

.lyt-img-b .caption {
    display: block;
    font-size: 1.6rem;
    margin-top: 12px;
    line-height: 1.2
}

:lang(ja) .diff-news-temp .lyt-img-b .caption {
    font-size: 1.4rem
}

.lyt-img-b[class*=diff-col] {
    margin-left: -16px;
    margin-bottom: -24px !important
}

.lyt-img-b[class*=diff-col]>* {
    padding-left: 16px;
    margin-bottom: 24px;
    margin-top: 0 !important
}

.lyt-img-b[class*=diff-col].diff-sp-col2 {
    margin-left: -8px;
    margin-bottom: -8px !important
}

@media only screen and (max-width:767px) {
    .lyt-img-b[class*=diff-col].diff-sp-col2>* {
        padding-left: 8px;
        margin-bottom: 8px;
        width: 50%
    }
}

.lyt-img-b.diff-col2>* {
    width: 50%
}

@media only screen and (max-width:767px) {
    .lyt-img-b.diff-col2>* {
        width: 100%
    }
}

.lyt-img-b.diff-col3>* {
    width: 33.33333%
}

@media only screen and (max-width:767px) {
    .lyt-img-b.diff-col3>* {
        width: 100%
    }
}

.lyt-img-b.diff-col4>* {
    width: 25%
}

@media only screen and (max-width:767px) {
    .lyt-img-b.diff-col4>* {
        width: 100%
    }
}

.lyt-release-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 32px
}

@media only screen and (max-width:480px) {
    .lyt-release-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

:lang(ja) .diff-news-temp .lyt-release-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

@media only screen and (max-width:767px) {
    :lang(ja) .diff-news-temp .lyt-release-a {
        display: block
    }
}

:lang(ja) .diff-news-temp .lyt-release-a>* {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1
}

:lang(ja) .diff-news-temp .lyt-release-a .release {
    text-align: right;
    font-size: 1.4rem;
    color: #57564f
}

@media only screen and (max-width:767px) {
    :lang(ja) .diff-news-temp .lyt-release-a .release {
        margin-top: 12px
    }
}

:lang(ja) .diff-news-temp .lyt-release-a .release>*+* {
    margin-top: 0 !important
}

:lang(ja) .diff-news-temp .lyt-release-a .list-share-a {
    right: inherit;
    left: 0
}

.lyt-share-a {
    position: relative;
    display: none;
    min-height: 32px;
    text-align: right
}

@media only screen and (max-width:767px) {
    .lyt-share-a {
        text-align: left
    }
}

[data-script-enabled=true] .lyt-share-a {
    display: block
}

.lyt-share-a .share-btn {
    padding: 0 0 0 25px;
    font-size: 1.4rem;
    position: relative;
    margin-bottom: 16px;
    min-height: 25px
}

:lang(ja) .diff-news-temp .lyt-share-a .share-btn {
    font-size: 1.2rem
}

.lyt-share-a .share-btn::before {
    display: block;
    position: absolute;
    content: ""
}

.lyt-share-a .share-btn .toggle-txt {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    font-size: 1rem;
    opacity: 0
}

.lyt-share-a .list-share-a {
    display: none;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: -15px;
    margin-left: -20px
}

@media only screen and (max-width:767px) {
    .lyt-share-a .list-share-a {
        position: static;
        -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.lyt-share-a .list-share-a>li {
    margin-bottom: 15px;
    padding-left: 20px
}

.lyt-share-a.is-close .share-btn::before {
    background-position: 0 -75px;
    width: 16px;
    height: 21px;
    top: 50%;
    left: 0;
    margin-top: -10.5px
}

.lyt-share-a.is-close .list-share-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.lyt-share-a.is-open .share-btn::before {
    top: 50%;
    left: 8px;
    width: 2px;
    height: 23px;
    margin-top: -11px;
    background: #706f67;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.lyt-share-a.is-open .share-btn::after {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    left: 8px;
    width: 2px;
    height: 23px;
    margin-top: -11px;
    background: #706f67;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.lyt-evenly-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.lyt-evenly-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 32px
}

@media only screen and (max-width:480px) {
    .lyt-evenly-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 28px
    }
}

@media only screen and (max-width:767px) {
    .lyt-evenly-a {
        display: block
    }
}

.lyt-evenly-a>* {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-top: 0 !important
}

@media only screen and (max-width:767px) {
    .lyt-evenly-a>*+* {
        margin-top: 16px !important
    }
}

.lyt-readmore-a .more-hook-wrapper {
    display: none
}

[data-script-enabled=true] .lyt-readmore-a .more-hook-wrapper {
    display: block
}

[data-script-enabled="true"] .lyt-readmore-a .more-hook-wrapper[class*="lyt-btn-"] {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.lyt-readmore-a .more-hook::before {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-top: -6px
}

[data-script-enabled=true] .lyt-readmore-a .more-content {
    display: none
}

.lyt-contact-a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

@media only screen and (max-width:767px) {
    .lyt-contact-a {
        display: block
    }
}

.lyt-contact-a>.col {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding-right: 34px
}

@media only screen and (max-width:767px) {
    .lyt-contact-a>.col {
        padding-right: 0;
        padding-bottom: 24px
    }
}

.lyt-contact-a>.col+.col {
    border-left: 1px solid #c6c6c0;
    padding-left: 34px
}

@media only screen and (max-width:767px) {
    .lyt-contact-a>.col+.col {
        padding-left: 0;
        padding-top: 24px;
        border-left: 0;
        border-top: 1px solid #c6c6c0
    }
}

.lyt-contact-a>.col:last-child {
    padding-right: 0
}

.lyt-slider-a .slides {
    padding: 0 5px
}

.lyt-slider-b-wrapper {
    padding-bottom: 30px
}

@media only screen and (max-width:1000px) {
    .lyt-slider-b-wrapper {
        margin-bottom: 40px
    }
}

.lyt-slider-b-nav {
    max-width: 1280px;
    margin: 16px auto 0
}

@media only screen and (max-width:1000px) {
    .lyt-slider-b-nav {
        display: none !important
    }
}

.lyt-slider-b-nav .slick-track {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-left: -12px;
    width: auto !important
}

.lyt-slider-b-nav .nav {
    padding-left: 12px;
    width: 25% !important;
    position: relative
}

.lyt-slider-b-nav .nav.slick-slide.is-active .visual::after {
    border: 8px solid #fff
}

.lyt-slider-b-nav .nav button {
    display: block
}

.lyt-slider-b-nav .nav .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    display: block;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    width: 90%;
    padding-left: 10px;
    line-height: 1.2;
    font-weight: 700
}

:lang(en) .lyt-slider-b-nav .nav .caption {
    /*  font-weight: 400; --- Ricoh --- */
    font-family: Arial, sans-serif
}

.lyt-slider-b-nav .nav .visual {
    position: relative;
    z-index: -1;
    display: block
}

.lyt-slider-b-nav .nav .visual::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7)
}

.lyt-slider-b-nav .nav .visual::after {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transition: border .1s
}

.lyt-slider-b-nav .nav .visual img {
    width: 100%
}

.lyt-slider-c {
    margin-bottom: 40px
}

@media only screen and (max-width:767px) {
    .lyt-slider-c {
        background: #cf122e;
        padding-bottom: 30px
    }
}

.lyt-slider-d {
    max-width: 508px;
    width: calc(508vw*100/1280)
}

@media only screen and (max-width:767px) {
    .lyt-slider-d {
        width: 100%;
        max-width: inherit;
        margin-bottom: 32px
    }
}

.lyt-slider-d .slides {
    text-align: center
}

.lyt-slider-d img {
    display: inline-block !important;
    max-width: 100% !important
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
    z-index: 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;
    top: 0;
    left: 0;
    display: block;
    margin: 0 auto
}

.lyt-slider-d .slick-track {
    background: linear-gradient(rgba(255, 255, 255, .04), rgba(0, 0, 0, .04));
    padding-bottom: 23px
}

@media only screen and (max-width:767px) {
    .lyt-slider-d .slick-track {
        padding-bottom: 13px
    }
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: ''
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide .img-inner img {
    display: inline-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
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-prev,
.slick-next {
    pointer-events: auto;
    color: transparent;
    position: absolute;
    display: block;
    padding: 0;
    cursor: pointer;
    width: 20px;
    height: 20px;
    z-index: 1;
    font-size: 1rem
}

@media only screen and (max-width:767px) {

    .slick-prev,
    .slick-next {
        width: 16px;
        height: 16px
    }
}

.lyt-slider-a .slick-prev,
.lyt-slider-a .slick-next {
    bottom: 20px
}

.lyt-slider-a .slick-prev {
    left: 50%;
    margin-left: -230px
}

@media only screen and (max-width:767px) {
    .lyt-slider-a .slick-prev {
        left: 0;
        margin-left: 0
    }
}

.lyt-slider-b .slick-prev {
    top: 50%;
    left: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: none !important
}

@media only screen and (max-width:1000px) {
    .lyt-slider-b .slick-prev {
        display: block !important
    }
}

.lyt-slider-c .slick-prev {
    right: 50%;
    margin-right: -422px;
    top: 16px;
    width: 26px;
    height: 26px
}

@media only screen and (max-width:1300px) {
    .lyt-slider-c .slick-prev {
        right: 218px;
        margin-right: 0
    }
}

@media only screen and (max-width:1000px) {
    .lyt-slider-c .slick-prev {
        right: 189px
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-prev {
        width: 16px;
        height: 16px;
        left: 22px;
        right: inherit;
        top: inherit;
        bottom: 30px
    }
}

.lyt-slider-d .slick-prev {
    top: 50%;
    left: 15px;
    width: 26px;
    height: 26px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.lyt-slider-a .slick-next {
    right: 50%;
    margin-right: -230px
}

@media only screen and (max-width:767px) {
    .lyt-slider-a .slick-next {
        right: 0;
        margin-right: 0
    }
}

.lyt-slider-b .slick-next {
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: none !important
}

@media only screen and (max-width:1000px) {
    .lyt-slider-b .slick-next {
        display: block !important
    }
}

.lyt-slider-c .slick-next {
    right: 50%;
    margin-right: -422px;
    bottom: 23px;
    width: 26px;
    height: 26px
}

@media only screen and (max-width:1300px) {
    .lyt-slider-c .slick-next {
        right: 218px;
        margin-right: 0
    }
}

@media only screen and (max-width:1000px) {
    .lyt-slider-c .slick-next {
        right: 189px
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-next {
        width: 16px;
        height: 16px;
        right: 22px;
        top: inherit;
        bottom: 30px
    }
}

.lyt-slider-d .slick-next {
    top: 50%;
    right: 15px;
    width: 26px;
    height: 26px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.slick-prev::before {
    display: block;
    position: absolute;
    content: "";
    width: 24px;
    height: 22px;
    background: center/contain url(/common/img/v5/arrows/arrow_double_gray.png) no-repeat;
    right: 0;
    top: 0
}

@media only screen and (max-width:767px) {
    .slick-prev::before {
        border-width: 3px;
        width: 16px;
        height: 16px;
        top: -2px;
    }
}

.lyt-slider-b .slick-prev::before {
    border-color: #fff transparent transparent #fff
}

.lyt-slider-c .slick-prev::before {
    background-image: url(/common/img/v5/arrows/arrow_double_white.png);
    width: 22px;
    height: 24px;
    transform: rotate(90deg);
    top: -5px;
}

@media only screen and (max-width:1000px) {
    .lyt-slider-c .slick-prev::before {
        top: -12px;
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-prev::before {
        width: 16px;
        height: 16px;
        transform: rotate(0deg);
        top: -2px;
    }
}

.lyt-slider-d .slick-prev::before {
    border-color: #b1b1ac transparent transparent #b1b1ac;
    width: 26px;
    height: 26px
}

.slick-next::before {
    display: block;
    position: absolute;
    content: "";
    width: 24px;
    height: 22px;
    background: center/cover url(/common/img/v5/arrows/arrow_double_gray.png) no-repeat;
    transform: rotate(180deg);
    right: 0;
    top: 0
}

@media only screen and (max-width:767px) {
    .slick-next::before {
        border-width: 3px;
        width: 16px;
        height: 16px;
        top: -2px;
    }
}

.lyt-slider-b .slick-next::before {
    border-color: #fff transparent transparent #fff
}

.lyt-slider-c .slick-next::before {
    background-image: url(/common/img/v5/arrows/arrow_double_white.png);
    transform: rotate(270deg);
    width: 22px;
    height: 24px;
    top: 14px;
}

@media only screen and (max-width:1000px) {
    .lyt-slider-c .slick-next::before {
        top: 21px;
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-next::before {
        width: 16px;
        height: 16px;
        transform: rotate(180deg);
        top: -2px;
    }
}

.lyt-slider-d .slick-next::before {
    border-color: #b1b1ac transparent transparent #b1b1ac;
    width: 26px;
    height: 26px
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25
}

.slick-dots {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex
}

.lyt-slider-a .slick-dots {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 420px;
    margin: 60px auto -20px;
    padding: 0 30px
}

@media only screen and (max-width:767px) {
    .lyt-slider-a .slick-dots {
        max-width: inherit;
        padding: 0 30px;
        margin: 24px 0 -20px
    }
}

.lyt-slider-b .slick-dots {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 420px;
    margin: 16px auto -20px;
    display: none !important
}

@media only screen and (max-width:1000px) {
    .lyt-slider-b .slick-dots {
        display: -webkit-flex !important;
        display: -ms-flexbox !important;
        display: flex !important;
        position: absolute;
        top: 100%;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-b .slick-dots {
        max-width: inherit
    }
}

.lyt-slider-c .slick-dots {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    right: 50%;
    bottom: 50%;
    margin-right: -640px;
    padding-right: 16px;
    -webkit-transform: translateY(50%);
    transform: translateY(50%)
}

@media only screen and (max-width:1300px) {
    .lyt-slider-c .slick-dots {
        right: 0;
        margin-right: 0
    }
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-dots {
        position: static;
        -webkit-transform: none;
        transform: none;
        -webkit-flex-direction: row;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 0 30px;
        margin: 24px 0 0 -20px
    }
}

.lyt-slider-d .slick-dots {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 420px;
    margin: 16px auto -20px;
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:767px) {
    .lyt-slider-d .slick-dots {
        max-width: inherit
    }
}

.slick-dots li {
    width: 16px;
    height: 16px
}

.lyt-slider-a .slick-dots li,
.lyt-slider-b .slick-dots li,
.lyt-slider-d .slick-dots li {
    margin: 0 0 20px 20px
}

.lyt-slider-a .slick-dots li:first-child,
.lyt-slider-b .slick-dots li:first-child,
.lyt-slider-d .slick-dots li:first-child {
    margin-left: 0
}

.lyt-slider-c .slick-dots li {
    margin-top: 16px
}

.lyt-slider-c .slick-dots li:first-child {
    margin-top: 0
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-dots li {
        margin-top: 0;
        margin-left: 20px
    }
}

.slick-dots li button {
    font-size: 1rem;
    display: block;
    cursor: pointer;
    position: relative;
    width: 16px;
    height: 16px;
    color: transparent
}

.slick-dots li button::before {
    position: absolute;
    top: 1px;
    left: 0;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 2px;
    background: #c9c9c9
}

.lyt-slider-c .slick-dots li button::before {
    background: #fff
}

.slick-dots li.slick-active button:before {
    top: 0px;
    width: 12px;
    height: 12px;
    background: #cf122e;
}

.lyt-slider-c .slick-dots li button:before {
    top: 0;
    left: 1px;
    background-color: #a10D21;
    opacity: 0.8;
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-dots li button:before {
        top: 1px;
        left: 0;
    }
}

.lyt-slider-c .slick-dots li.slick-active button:before {
    left: 0;
    background-color: #fff;
    opacity: 0.8;
}

@media only screen and (max-width:767px) {
    .lyt-slider-c .slick-dots li.slick-active button:before {
        top: 0px;
    }
}

.slick-pause,
.slick-playing {
    font-size: 0;
    position: relative;
    width: 14px;
    height: 15px;
    display: inline-block;
    margin: 20px 15px 0;
    vertical-align: top
}

@media only screen and (max-width:480px) {

    .slick-pause,
    .slick-playing {
        margin-top: 12px
    }
}

.slick-pause button,
.slick-playing button {
    width: 12px;
    height: 15px;
    outline: none
}

.slick-playing button::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 5px;
    height: 15px;
    background: #cdcdcd;
    pointer-events: none
}

.slick-playing button::after {
    display: block;
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 5px;
    height: 15px;
    background: #cdcdcd;
    pointer-events: none
}

.slick-pause button::before {
    display: block;
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    border-color: transparent transparent transparent #cdcdcd;
    border-width: 7.5px 14px;
    border-style: solid;
    pointer-events: none
}

.slick-pause>a,
.slick-playing>a {
    pointer-events: auto;
    background: rgba(255, 255, 255, .9);
    right: 0;
    bottom: 0;
    width: 32px;
    height: 32px;
    padding: 9px 11px;
    cursor: pointer
}

#colorbox,
#cboxOverlay,
#cboxWrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    -webkit-transform: translate3d(0, 0, 0)
}

#cboxWrapper {
    max-width: none;
    width: 100% !important;
    cursor: pointer;
    outline: 0
}

#cboxOverlay {
    position: fixed;
    width: 100%;
    height: 100%
}

#cboxMiddleLeft,
#cboxBottomLeft {
    clear: left
}

#cboxContent {
    position: relative;
    width: 100% !important;
    height: 56vw !important;
    max-height: 560px
}

#cboxLoadedContent {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    width: 100% !important;
    height: 56vw !important;
    max-height: 560px
}

#cboxTitle {
    margin: 0;
    display: none
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
    cursor: pointer
}

.cboxPhoto {
    display: block;
    float: left;
    max-width: none;
    margin: auto;
    border: 0;
    -ms-interpolation-mode: bicubic;
    display: none
}

.cboxIframe {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0
}

#cboxOverlay {
    background: rgba(0, 0, 0, .86)
}

#colorbox {
    outline: 0;
    left: inherit !important;
    width: 100% !important;
    overflow: inherit !important;
    max-width: 840px;
    right: 50% !important;
    -webkit-transform: translateX(50%);
    transform: translateX(50%)
}

@media only screen and (max-width:1000px) {
    #colorbox {
        width: 100% !important;
        height: 56vw !important
    }
}

#cboxTopLeft {
    display: none !important
}

#cboxTopRight {
    display: none !important
}

#cboxBottomLeft {
    display: none !important
}

#cboxBottomRight {
    display: none !important
}

#cboxMiddleLeft {
    display: none !important
}

#cboxMiddleRight {
    display: none !important
}

#cboxTopCenter {
    display: none !important
}

#cboxBottomCenter {
    display: none !important
}

#cboxContent {
    cursor: pointer;
    padding: 30px 10px 0;
    outline: 0
}

#cboxError {
    padding: 50px;
    border: 1px solid #ccc
}

#cboxTitle {
    position: absolute;
    bottom: 4px;
    left: 0;
    width: 100%;
    color: #949494;
    text-align: center;
    display: none !important
}

#cboxCurrent {
    display: none !important;
    position: absolute;
    bottom: 4px;
    left: 58px;
    color: #949494
}

#cboxLoadingOverlay {
    display: none !important
}

#cboxLoadingGraphic {
    display: none !important
}

#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
    overflow: visible;
    width: auto;
    margin: 0;
    padding: 0;
    background: none;
    border: 0
}

#cboxClose {
    display: none;
    color: #fff;
    position: absolute;
    right: 0;
    top: 0;
    padding-right: 40px
}

#cboxClose::before {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 2px;
    height: 23px;
    margin-top: -12px;
    background: #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

#cboxClose::after {
    display: block;
    position: absolute;
    content: "";
    top: 50%;
    right: 20px;
    width: 2px;
    height: 23px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-top: -12px
}

#cboxSlideshow {
    display: none !important;
    position: absolute;
    right: 30px;
    bottom: 4px;
    color: #0092ef
}

#modalPrevWrap,
#modalNextWrap {
    display: none !important;
    position: absolute;
    top: 30px;
    z-index: 20000
}

.tbl-scroll-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .tbl-scroll-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.tbl-scroll-a+[class^=tbl-],
.tbl-scroll-a+[class*=" tbl-"] {
    margin-top: 40px
}

@media only screen and (max-width:767px) {
    .tbl-scroll-a {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch
    }

    .tbl-scroll-a>table {
        width: 768px !important
    }
}

.tbl-a {
    table-layout: fixed
}

.tbl-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .tbl-a+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.tbl-a+[class^=tbl-],
.tbl-a+[class*=" tbl-"] {
    margin-top: 40px
}

.tbl-a th,
.tbl-a td {
    padding: 10px 16px;
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
}

.tbl-a tr>*:first-child {
    border-right: 1px solid #999;
}

.tbl-a tr>*:nth-child(n+2) {
    border-left: 1px solid #999;
}

.tbl-a tr>*:last-child {
    border-right: none;
}


.tbl-a th.diff-bg-a,
.tbl-a td.diff-bg-a {
    background: #fff3f4;
}

.tbl-a th>img,
.tbl-a td>img {
    vertical-align: middle
}

.tbl-a thead th,
.tbl-a thead td {
    background: #c9c9c9;
    text-align: center;
    font-weight: 700
}

:lang(en) .tbl-a thead th,
:lang(en) .tbl-a thead td {
    font-weight: 400;
    font-family: Arial, sans-serif
}

.tbl-a thead tr:first-child>*:first-child {
    width: 240px
}

@media only screen and (max-width:767px) {
    .tbl-a thead tr:first-child>*:first-child {
        width: 180px
    }
}

@media only screen and (max-width:480px) {
    .tbl-a thead tr:first-child>*:first-child {
        width: 100px
    }
}

.tbl-a tbody th,
.tbl-a tbody .th {
    background: #dedede;
    font-weight: 400;
    text-align: left;
    width: 240px;
    vertical-align: top
}

@media only screen and (max-width:767px) {

    .tbl-a tbody th,
    .tbl-a tbody .th {
        width: 180px
    }
}

@media only screen and (max-width:480px) {

    .tbl-a tbody th,
    .tbl-a tbody .th {
        width: 100px
    }
}

.tbl-a tbody td {
    background: #fff
}

.tbl-a.diff-equality thead tr:first-child>*:first-child {
    width: auto
}

.tbl-a.diff-equality tbody th,
.tbl-a.diff-equality tbody .th {
    width: auto
}

@media only screen and (max-width:767px) {
    .tbl-a.diff-sp-col1 {
        display: block
    }

    .tbl-a.diff-sp-col1 tbody {
        display: block
    }

    .tbl-a.diff-sp-col1 tbody tr {
        display: block
    }

    .tbl-a.diff-sp-col1 tbody tr:last-child td:last-child {
        border-bottom: 1px solid #b1b1ac
    }

    .tbl-a.diff-sp-col1 tbody th,
    .tbl-a.diff-sp-col1 tbody .th {
        display: block;
        width: 100%;
        border-bottom: 0
    }

    .tbl-a.diff-sp-col1 tbody td {
        display: block;
        width: 100%;
        border-bottom: 0
    }
}

.tbl-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .tbl-b+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.tbl-b+[class^=tbl-],
.tbl-b+[class*=" tbl-"] {
    margin-top: 40px
}

@media only screen and (max-width:767px) {
    .tbl-b {
        display: block
    }
}

.tbl-b th,
.tbl-b td {
    padding: 18px 8px;
    vertical-align: top
}

@media only screen and (max-width:767px) {

    .tbl-b th,
    .tbl-b td {
        padding: 18px 0
    }
}

.tbl-b th>img,
.tbl-b td>img {
    vertical-align: middle
}

@media only screen and (max-width:767px) {
    .tbl-b tbody {
        display: block
    }
}

@media only screen and (max-width:767px) {
    .tbl-b tbody tr {
        display: block
    }
}

.tbl-b tbody tr:first-child th,
.tbl-b tbody tr:first-child td {
    padding-top: 0
}

@media only screen and (max-width:767px) {
    .tbl-b tbody tr:first-child th {
        padding-top: 14px
    }
}

.tbl-b tbody th,
.tbl-b tbody .th {
    text-align: left;
    width: 156px;
    border-bottom: 1px solid #999;
}

@media only screen and (max-width:1000px) {

    .tbl-b tbody th,
    .tbl-b tbody .th {
        width: 126px
    }
}

@media only screen and (max-width:767px) {

    .tbl-b tbody th,
    .tbl-b tbody .th {
        display: block;
        width: 100%;
        border-bottom: 0;
        padding-bottom: 0
    }
}

.tbl-b tbody td {
    border-bottom: 1px solid #999;
}

@media only screen and (max-width:767px) {
    .tbl-b tbody td {
        display: block;
        width: 100%;
        padding-top: 6px !important
    }
}

.tbl-c {
    table-layout: fixed
}

.tbl-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
    margin-top: 34px
}

@media only screen and (max-width:480px) {
    .tbl-c+*:not([class^="hdg-"]):not([class*=" hdg-"]) {
        margin-top: 36px
    }
}

.tbl-c+[class^=tbl-],
.tbl-c+[class*=" tbl-"] {
    margin-top: 40px
}

.tbl-c th,
.tbl-c td {
    padding: 18px 24px;
    vertical-align: top;
    border-bottom: 1px solid #c6c6c0;
    border-right: 1px solid #c6c6c0
}

.tbl-c th:last-child,
.tbl-c td:last-child {
    border-right: 0
}

.tbl-c th>img,
.tbl-c td>img {
    vertical-align: middle
}

.tbl-c thead th,
.tbl-c thead td {
    background: #dad9d6;
    vertical-align: middle
}

.tbl-c .price {
    text-align: right;
    white-space: nowrap
}

:placeholder-shown {
    color: #706f67
}

::-webkit-input-placeholder {
    color: #706f67;
    opacity: 1
}

::-moz-placeholder {
    color: #706f67;
    opacity: 1
}

::-moz-placeholder {
    color: #706f67;
    opacity: 1
}

:-ms-input-placeholder {
    color: #706f67
}

[data-browser=Edge] ::-webkit-input-placeholder {
    opacity: 1 !important;
    color: #706f67
}

.form-hdg-error-a {
    font-size: 2rem;
    color: #cf122e;
    margin-bottom: 14px;
    line-height: 1.4;
    font-weight: 700
}

:lang(en) .form-hdg-error-a {
    font-weight: 400;
    font-family: Arial, sans-serif
}

@media only screen and (max-width:480px) {
    .form-hdg-error-a {
        font-size: 1.6rem
    }
}

.form-text-a {
    width: 100%;
    padding: 8px 24px;
    font-size: 2rem;
    background: #fff;
    border: 1px solid #BBB;
    min-height: 54px
}

@media only screen and (max-width:480px) {
    .form-text-a {
        font-size: 1.8rem
    }
}

.box-register-a .form-text-a {
    margin-bottom: 16px
}

.form-text-a.diff-error {
    background: #faf1f2;
    border-color: #cf122e
}

.form-cb-a {
    cursor: pointer;
    display: inline-block;
    padding-left: 33px;
    position: relative
}

.form-cb-a>[type=checkbox] {
    position: absolute;
    top: 4px;
    left: 4px;
    width: 10px;
    height: 10px;
    outline: none;
    opacity: 0
}

.form-cb-a>[type=checkbox]+span::before {
    display: block;
    position: absolute;
    content: "";
    top: 3px;
    left: 0;
    width: 21px;
    height: 21px;
    background: #fff;
    box-shadow: 1px 1px 3px -1px #c6c6c0 inset;
    border: 1px solid #b1b1ac
}

:lang(en) .form-cb-a>[type=checkbox]+span::before {
    top: 6px
}

@media only screen and (max-width:480px) {
    :lang(en) .form-cb-a>[type=checkbox]+span::before {
        top: 3px
    }
}

.form-cb-a>[type=checkbox]:focus+span::before {
    outline: 1px solid #b1b1ac
}

.form-cb-a>[type=checkbox]+span::after {
    display: block;
    position: absolute;
    content: "";
    top: 8px;
    left: 5px;
    opacity: 0;
    width: 12px;
    height: 7px;
    border-bottom: 2px solid #cf122e;
    border-left: 2px solid #cf122e;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition: opacity .2s ease
}

:lang(en) .form-cb-a>[type=checkbox]+span::after {
    top: 11px
}

@media only screen and (max-width:480px) {
    :lang(en) .form-cb-a>[type=checkbox]+span::after {
        top: 8px
    }
}

.form-cb-a>[type=checkbox]+span {
    display: block;
    padding-top: 2px
}

.form-cb-a>[type=checkbox]:checked+span::after {
    transition: opacity .2s ease;
    opacity: 1
}

.form-cb-a>[type=checkbox]:disabled+span::before {
    background: #dad9d6;
    box-shadow: none
}

.form-radio-a {
    cursor: pointer;
    display: inline-block;
    padding-left: 33px;
    position: relative
}

.form-radio-a>[type=radio] {
    position: absolute;
    top: 4px;
    left: 4px;
    width: 10px;
    height: 10px;
    outline: none;
    opacity: 0
}

.form-radio-a>[type=radio]+span::before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 1px 1px 3px -1px #c6c6c0 inset;
    border: 1px solid #b2b2ad
}

.form-radio-a>[type=radio]+span::after {
    opacity: 0;
    display: block;
    position: absolute;
    content: "";
    top: 6px;
    left: 6px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #cf122e;
    transition: opacity .2s ease
}

.form-radio-a>[type=radio]:checked+span::after {
    transition: opacity .2s ease;
    opacity: 1
}

.form-radio-a>[type=radio]:disabled+span::before {
    background: #dad9d6;
    box-shadow: none
}

.list-form-a {
    margin-bottom: -12px
}

.box-register-a .list-form-a {
    margin-bottom: 16px
}

.list-form-a>li {
    margin-bottom: 12px
}

.list-form-a.diff-inline {
    margin-left: -45px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.list-form-a.diff-inline>li {
    margin-left: 45px
}

.infoArea {
    padding: 0em 2%
}

.info {
    max-width: 1280px;
    margin: 2em auto;
    padding: 0.5em 1em;
    border: solid 1px #c00;
    border-radius: 6px;
    text-align: center;
}

.info p {
    font-family: Arial !important;
    font-size: 18px !important;
    margin-top: 0 !important;
}

.info_inner {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: nowrap;
    width: fit-content;
    margin: 0 auto;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .info_inner {
        gap:10px
    }
    .info p {
        font-size: 16px !important;
    }
    .info_ttl {
        text-align: left;
    }
}

.info_heading {
    flex-shrink: 0;
    color: #c00;
    font-weight: bold;
}

.hdg-info_separator {
    flex-shrink: 0;
    width: 1px;
    background-color: #c00
}

.info_detailBtn {
    display: inline-block;
    margin-left: 10px;
    padding: .4em .6em;
    border-radius: 4px;
    background-color: #c00;
    color: #fff;
    font-size: 70%;
    line-height: 1;
    text-decoration: none;
    vertical-align: text-bottom
}

.info_detailBtn:hover {
    opacity: 0.6
}

.center {
    text-align: center !important
}

.right {
    text-align: right !important
}

.left {
    text-align: left !important
}

.fs-14 {
    font-size: 1.4rem
}

.fs-20 {
    font-size: 2rem
}

.fs-28 {
    font-size: 2.8rem
}

@media only screen and (max-width:767px) {
    .disp-pc {
        display: none !important
    }
}

@media only screen and (min-width:768px) {
    .disp-sp {
        display: none !important
    }
}

.w-2 {
    width: 2%
}

.w-4 {
    width: 4%
}

.w-6 {
    width: 6%
}

.w-8 {
    width: 8%
}

.w-10 {
    width: 10%
}

.w-12 {
    width: 12%
}

.w-14 {
    width: 14%
}

.w-16 {
    width: 16%
}

.w-18 {
    width: 18%
}

.w-20 {
    width: 20%
}

.w-22 {
    width: 22%
}

.w-24 {
    width: 24%
}

.w-26 {
    width: 26%
}

.w-28 {
    width: 28%
}

.w-30 {
    width: 30%
}

.w-32 {
    width: 32%
}

.w-34 {
    width: 34%
}

.w-36 {
    width: 36%
}

.w-38 {
    width: 38%
}

.w-40 {
    width: 40%
}

.w-42 {
    width: 42%
}

.w-44 {
    width: 44%
}

.w-46 {
    width: 46%
}

.w-48 {
    width: 48%
}

.w-50 {
    width: 50%
}

.w-52 {
    width: 52%
}

.w-54 {
    width: 54%
}

.w-56 {
    width: 56%
}

.w-58 {
    width: 58%
}

.w-60 {
    width: 60%
}

.w-62 {
    width: 62%
}

.w-64 {
    width: 64%
}

.w-66 {
    width: 66%
}

.w-68 {
    width: 68%
}

.w-70 {
    width: 70%
}

.w-72 {
    width: 72%
}

.w-74 {
    width: 74%
}

.w-76 {
    width: 76%
}

.w-78 {
    width: 78%
}

.w-80 {
    width: 80%
}

.w-82 {
    width: 82%
}

.w-84 {
    width: 84%
}

.w-86 {
    width: 86%
}

.w-88 {
    width: 88%
}

.w-90 {
    width: 90%
}

.w-92 {
    width: 92%
}

.w-94 {
    width: 94%
}

.w-96 {
    width: 96%
}

.w-98 {
    width: 98%
}

.w-100 {
    width: 100%
}

html:lang(ru) body,
html:lang(ru) body *,
html:lang(ru) input,
html:lang(ru) select,
html:lang(ru) button,
html:lang(ru) textarea {
    font-family: Arial, Verdana, Lucida Grande, sans-serif !important
}

[data-browser=IE11] .second-nav-link-wrapper {
    flex-basis: auto;
}