@charset "UTF-8";
/**
* share.css
* modified : 2017.06.28
*/
/*========================================

 .s5-returnToTop

========================================*/
.s5-returnToTop {
    height: 0;
    position: relative;
    z-index: 2;
    margin: 50px 0 0;
}

.s5-returnToTop__inner1 {
    display: none;
    position: fixed;
    bottom: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
}

.s5-returnToTop__inner2 {
    position: relative;
    max-width: 1260px;
    height: 0;
    margin: 0 auto;
}

.s5-returnToTop__button {
    position: absolute;
    cursor: pointer;
    width: 40px;
    height: 32px;
    right: 20px;
    top: -72px;
    background: url(/share5/images/s5-returnToTop/icon_01.png) no-repeat;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: top .3s;
    transition: top .3s;
    opacity: .5;
}

.s5-returnToTop__button img {
    width: 100%;
    height: auto;
    opacity: .5;
}

@media screen and (max-width: 639px) {
    .s5-returnToTop__button {
        top: -46px;
        width: 32px;
        height: 26px;
        background-size: 32px 26px;
    }
}

@media screen and (max-width: 639px) {
    .s5-returnToTop.s5-returnToTop--withFOCUSPurchaseFloated .s5-returnToTop__button {
        top: -122px;
    }
}

/*========================================

 .s5-icon-window

========================================*/
.s5-icon-window {
    width: 11px;
    height: 9px;
    vertical-align: middle;
    line-height: 1;
    vertical-align: middle;
    display: inline-block;
    margin: -2px 3px 0 0;
    background: url(/share5/images/s5-icon/sprite_01.png) no-repeat;
}

.s5-icon-window.s5-icon-window--light {
    background-position: 0 -24px;
}

.s5-icon-window.s5-icon-window--lightDark {
    background-position: 0 -24px;
}

/**
 * default.css
 * modified : 2017.09.06
 */
/*========================================

  Reset

========================================*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

fieldset, img {
    border: 0;
    vertical-align: top;
}

address, caption, cite, code, dfn, em, strong, th, var {
    font-style: normal;
    font-weight: normal;
}

ul {
    zoom: 1;
}

ul:after {
    clear: both;
    display: block;
    content: "";
    height: 0;
}

li {
    list-style: none;
}

caption, th {
    text-align: left;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

q:before, q:after {
    content: '';
}

abbr, acronym {
    border: 0;
    font-variant: normal;
}

sup {
    vertical-align: text-top;
}

sub {
    vertical-align: text-bottom;
}

input, textarea, select {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
}

input, textarea, select {
    *font-size: 100%;
}

legend {
    color: #000;
}

del, ins {
    text-decoration: none;
}

a {
    outline: none;
}

a, a:link, a:active, a:visited, a:hover {
    color: #000;
    text-decoration: none;
}

header, footer, nav, article, section {
    display: block;
}

/*========================================

  body

========================================*/
body {
    position: relative;
    margin: 0;
    padding: 0;
    min-width: 1200px;
    min-height: 100%;
    font-family: '\30E1\30A4\30EA\30AA',Meiryo, '\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF', Verdana,sans-serif;
    background: #fff;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
}

.sans-serif {
    font-family: '\30E1\30A4\30EA\30AA',Meiryo, '\FF2D\FF33\20\FF30\30B4\30B7\30C3\30AF', Verdana,sans-serif;
}

.serif {
    font-family: 'Yu Mincho',YuMincho,'\6E38\660E\671D', 'HGS\660E\671DE','HGP\660E\671DE','HG\660E\671DE',serif;
}

.hover {
    transition: opacity 0.2s;
    -webkit-transition: opacity 0.2s;
}

a.hover {
    display: inline-block;
}

.hover:hover {
    opacity: 0.7;
}

.clearfix {
    *zoom: 1;
}

.clearfix:after {
    clear: both;
    display: block;
    content: "";
}

.pc {
    display: block;
}

.sp {
    display: none;
}

@media (max-width: 640px) {
    body {
        min-width: 320px;
    }
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
}

/*========================================

  break

========================================*/
.b64 {
    display: none;
}

.b48 {
    display: none;
}

.b36 {
    display: none;
}

.b32 {
    display: none;
}

@media (max-width: 640px) {
    .b64 {
        display: block;
    }
    .nb64 {
        display: none;
    }
}

@media (max-width: 480px) {
    .b48 {
        display: block;
    }
    .nb48 {
        display: none;
    }
}

@media (max-width: 359px) {
    .b36 {
        display: block;
    }
    .nb36 {
        display: none;
    }
}

@media (max-width: 320px) {
    .b32 {
        display: block;
    }
    .nb32 {
        display: none;
    }
}

/*========================================

  .mod-

========================================*/
.mod-img {
    line-height: 0;
}

.mod-img img {
    width: 100%;
    height: auto;
}

.mod-img__sample a {
    display: block;
    box-sizing: border-box;
    border: 6px solid #fff;
    box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.2);
    transition: opacity 0.2s;
    -webkit-transition: opacity 0.2s;
}

.mod-img__sample a:hover {
    opacity: 0.7;
}

.mod-img__w948 {
    margin: 0 auto;
    width: 948px;
}

.mod-img__w786 {
    margin: 0 auto;
    width: 798px;
}

.mod-img__w519 {
    margin: 0 auto;
    width: 531px;
}

.mod-img__w384 {
    margin: 0 auto;
    width: 396px;
}

.mod-img__right {
    float: right;
    margin-right: 5px;
}

.mod-img__zoom {
    position: relative;
}

.mod-img__zoom:after {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 18px;
    height: 18px;
    background-image: url(../img/icn_zoom.svg);
    background-repeat: no-repeat;
    background-size: 18px 18px;
    content: '';
}

.mod-img__cap {
    display: block;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.1;
    text-align: right;
}

.mod-img__cap strong {
    color: #ff0000;
}

.mod-container {
    margin: 0 auto;
    max-width: 1720px;
}

.mod-wrapper {
    margin: 0 auto;
    max-width: 1200px;
    width: 93.75%;
}

.mod-inner {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 950px;
    width: 93.75%;
}

.mod-wrapper:after,
.mod-inner:after,
.mod-clearfix:after {
    clear: both;
    display: block;
    content: '';
}

.mod-txt {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    letter-spacing: -0.03em;
}

.mod-txt + .mod-txt {
    margin-top: 30px;
}

.mod-btn {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    padding: 14px 30px 12px;
    font-size: 13px;
    line-height: 1.2;
    color: #fff !important;
    text-align: center;
    background-color: #3f3f3f;
    transition: opacity 0.2s;
    -webkit-transition: opacity 0.2s;
}

.mod-btn:before {
    position: absolute;
    top: 50%;
    left: 16px;
    margin-top: -3.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 4px;
    border-color: transparent transparent transparent #fff;
    content: '';
}

.mod-btn:hover {
    opacity: 0.7;
    text-decoration: none;
}

.mod-btn__example {
    background-color: #3f3f3f;
}

.mod-btn__detail {
    background-color: #007aff !important;
}

.mod-inner {
    max-width: 1192px;
}

@media (max-width: 640px) {
    .mod-img__sample a {
        border-width: 4px;
    }
    .mod-img__w948,
    .mod-img__w786,
    .mod-img__w519,
    .mod-img__w384 {
        width: auto;
    }
    .mod-img__cap {
        margin-top: 10px;
        font-size: 11px;
    }
    .mod-wrapper,
    .mod-inner {
        width: 90.625%;
    }
    .mod-txt {
        font-size: 0.938rem;
        line-height: 1.8;
    }
    .mod-btn {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .mod-btn {
        font-size: 13px;
    }
}

@media (max-width: 359px) {
    .mod-txt {
        font-size: 0.875rem;
    }
    .mod-btn {
        font-size: 12px;
    }
}

/*========================================

  .btn

========================================*/
.btn {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    padding: 14px 30px 12px;
    font-size: 13px;
    line-height: 1.2;
    color: #fff !important;
    text-align: center;
    background-image: url(../img/arrow_btn.svg);
    background-repeat: no-repeat;
    background-position: 16px 50%;
    background-color: #3f3f3f;
    transition: opacity 0.2s;
    -webkit-transition: opacity 0.2s;
}

.btn:hover {
    opacity: 0.7;
}

.btn.example {
    background-color: #3f3f3f;
}

.btn.detail {
    background-color: #1890fa;
}

@media (max-width: 640px) {
    .btn {
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .btn {
        font-size: 13px;
    }
}

@media (max-width: 359px) {
    .btn {
        font-size: 12px;
    }
}

/*========================================

  header

========================================*/
header {
    background: #1a1a1a;
}

header img {
    width: 100%;
    height: auto;
}

header .mod-wrapper {
    display: table;
}

header .logo {
    display: table-cell;
    padding: 26px 0;
    line-height: 0;
}

header .logo a {
    display: block;
    width: 100px;
}

header div.owner {
    display: table-cell;
    vertical-align: top;
    padding: 14px 0 0;
    width: 353px;
    line-height: 0;
    font-size: 100%;
    font-weight: normal;
}

@media (max-width: 960px) {
    header div.owner {
        vertical-align: middle;
        padding: 0;
        width: 300px;
    }
}

@media (max-width: 640px) {
    header .logo {
        padding: 25px 0;
    }
    header .logo a {
        min-width: 80px;
        width: 17%;
    }
    header div.owner {
        vertical-align: middle;
        padding: 0;
        width: 50%;
    }
}

/*========================================

  .mainvisual

========================================*/
.mainvisual {
    overflow: hidden;
    margin: 0 auto;
}

.mainvisual h1 {
    margin: 0 auto;
    max-width: 1200px;
    line-height: 0;
}

.mainvisual h1 img {
    margin: 0 0 0 -21.667%;
    /*max-width: 1720px;*/
    width: 143.3334%;
    height: auto;
}

@media (max-width: 640px) {
    .mainvisual h1 img {
        margin: 0 0 0 -47%;
        width: 190%;
    }
}

@media (min-width: 1720px) {
    .mainvisual h1 {
        max-width: none;
    }
    .mainvisual h1 img {
        margin: 0;
        width: 100%;
        height: auto;
    }
}

/*--------------------------------------------------
  nav
--------------------------------------------------*/
nav {
    margin: 0 auto;
    line-height: 0;
    text-align: center;
    background: #282828;
    border-top: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
}

nav ul {
    display: block;
    margin: 0 auto;
    max-width: 1192px;
}

nav ul:after {
    clear: both;
    display: block;
    content: "";
}

nav li {
    float: left;
    position: relative;
    margin: 0 0 0 0;
    width: 33.221477%;
    background: #fff;
    border-right: 1px solid #aaa;
}

nav li.cnt-01 {
    margin-left: 0;
    border-left: 1px solid #aaa;
}

@media (max-width: 640px) {
    nav li.cnt-01 {
        margin-left: 9.5%;
    }
}

@media (max-width: 480px) {
    nav li.cnt-01 {
        margin-left: 0px;
    }
}

nav li.cnt-01, nav li.cnt-05 {
    /*width: 396px;*/
    width: 33.221477%;
}

nav li a {
    position: relative;
    display: block;
    padding: 50px 0 0;
    width: 100%;
    height: 60px;
    color: #fff !important;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    -webkit-transition: opacity 0.2s;
    -moz-transition: opacity 0.2s;
    transition: opacity 0.2s;
    background-color: #282828;
    font-size: 125%;
}

nav li a:hover {
    opacity: 0.7;
}

html.no-opacity nav li a:hover {
    filter: alpha(opacity=70);
}

nav li.cnt-01 a {
    background-image: url(../img/nav_01.png);
}

nav li.cnt-02 a {
    background-image: url(../img/nav_01.png);
}

nav li.cnt-03 a {
    background-image: url(../img/nav_01.png);
}

@media (max-width: 640px) {
    nav {
        border-top: none;
        border-bottom: none;
    }
    nav li {
        float: none;
        margin: 0 !important;
        padding: 0;
        width: auto !important;
        background: #000;
        border-top: 1px solid #444;
        border-right: none;
    }
    nav li.cnt-01 {
        border-left: none;
    }
    nav li a {
        position: relative;
        padding: 12px 0 13px;
        font-size: 87.5%;
        line-height: 1.2;
        text-align: left;
        text-indent: 0;
        color: #fff !important;
        background: none !important;
        height: auto;
    }
    nav li a:before {
        content: '';
        display: inline-block;
        vertical-align: middle;
        margin-right: 7px;
        width: 24px;
        height: 24px;
        background-image: url(../img/arrow.svg);
        background-repeat: no-repeat;
        background-size: 100% auto;
    }
    nav li a:hover {
        opacity: 1.0;
    }
}

/*========================================

  article

========================================*/
article {
    margin: 0 auto;
}

.article-heading {
    padding: 17px 0;
    background: #999999;
}

.article-heading__txt {
    position: relative;
    display: block;
    box-sizing: border-box;
    margin: 0 auto;
    padding-left: 32px;
    font-size: 175%;
    line-height: 1.2;
    color: #fff;
    max-width: 950px;
    width: 94.0594059%;
}

.article-heading__txt:before {
    content: '';
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 0;
    margin-top: -16px;
    width: 24px;
    height: 32px;
    background-image: url(../img/arrow_ttl.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
}

.article-heading__txt span {
    position: relative;
    top: 2px;
}

article .inner,
.wrapper .inner {
    box-sizing: border-box;
    position: relative;
    margin: 0 auto;
    max-width: 950px;
    width: 94.0594059%;
}

@media (max-width: 640px) {
    .article-heading__txt {
        padding-left: 22px;
        font-size: 4.375vw;
        width: 90.625%;
    }
    .article-heading__txt:before {
        margin-top: -10px;
        width: 15px;
        height: 20px;
    }
}

@media (max-width: 480px) {
    .article-heading__txt {
        font-size: 5.4vw;
    }
}

/*========================================

  #Intro

========================================*/
#Intro {
    padding-bottom: 100px;
    background-image: url("../img/intro_bg.jpg");
    background-position: center 0;
    background-repeat: no-repeat;
    background-size: cover;
}

.intro-ttl {
    margin: 0px;
    padding-top: 70px;
    font-size: 200%;
    text-shadow: 0px 0px 16px #000, 0px 0px 8px #000, 0px 0px 8px #000;
    color: #fff;
    text-align: center;
}

.intro-ttl br {
    display: none;
}

.intro-txt {
    margin-top: 35px;
    font-size: 131.3%;
    line-height: 1.9;
    text-shadow: 0px 0px 16px #000, 0px 0px 8px #000, 0px 0px 8px #000;
    color: #fff;
    text-align: center;
}

@media (max-width: 640px) {
    #Intro {
        padding-bottom: 9.375vw;
        background-size: auto 100%;
    }
    .intro-ttl {
        margin: 0px;
        padding-top: 9.375vw;
        margin-left: -5.1724137%;
        width: 110.345%;
        font-size: 6vw;
        line-height: 1.4;
    }
    .intro-ttl:first-letter {
        margin-left: 1.6rem;
    }
    .intro-ttl br {
        display: block;
    }
    .intro-txt {
        margin-top: 3.125vw;
        font-size: calc(37.5% + 2.18vw);
        font-size: -webkit-calc(37.5% + 2.18vw);
        text-align: left;
    }
    .intro-txt br {
        display: none;
    }
}

@media (max-width: 480px) {
    .intro-heading {
        font-size: 6.6vw;
    }
    .intro-txt {
        font-size: calc(37.5% + 2.91vw);
        font-size: -webkit-calc(37.5% + 2.91vw);
    }
}

/*----------------------------------------
  .intro-frame
----------------------------------------*/
.intro-frame {
    position: relative;
    margin-top: 60px;
    padding: 0;
    color: #fff;
    background: #393939;
    background: rgba(57, 57, 57, 0.8);
}

.intro-frame__inner {
    display: table;
    padding: 0;
}

.intro-frame__inner:after {
    clear: both;
    display: block;
    content: '';
}

.intro-frame__heading {
    display: table-cell;
    vertical-align: middle;
    width: 162px;
    padding: 0 0 0 52px;
    margin: 0 27px 0 0;
    font-size: 131.3%;
    line-height: 1.1;
}

.intro-frame__heading-job {
    font-size: 66.7%;
    line-height: 1.8;
}

intro-frame__heading-name {
    font-size: 100%;
}

.intro-frame__txt {
    display: table-cell;
    vertical-align: middle;
    padding: 0 52px 0 0;
    width: 625px;
    font-size: 87.5%;
    line-height: 1.7;
}

.intro-frame__img {
    display: table-cell;
    width: 308px;
}

.intro-frame__img img {
    display: block;
}

@media (max-width: 640px) {
    .intro-frame {
        margin-top: 6.25vw;
    }
    .intro-frame__inner {
        display: block;
        width: auto;
        padding: 18px;
    }
    .intro-frame__heading {
        display: block;
        padding: 0;
        margin-bottom: 16px;
        text-align: center;
    }
    .intro-frame__heading span {
        display: inline;
    }
    .intro-frame__txt {
        display: block;
        width: 100%;
        padding: 0 0 20px 0;
    }
    .intro-frame__img {
        display: block;
        width: 100%;
        text-align: center;
    }
    .intro-frame__img img {
        display: inline;
        width: 80%;
    }
}

@media (max-width: 480px) {
    .intro-frame__inner {
        padding: 20px 15px;
        border-width: 3px;
    }
    .intro-frame__heading {
        margin: 0;
        font-size: 125%;
        font-size: 5.0vw;
    }
    .intro-frame__txt {
        margin: 15px 0 0;
        font-size: 3.3vw;
        width: auto;
    }
}

/*========================================

  .one-point

========================================*/
.one-point {
    position: relative;
    box-sizing: border-box;
    padding: 30px 30px;
    background: #ececec;
}

.one-point__product {
    display: table;
}

.one-point__product__pic {
    display: table-cell;
    width: 154px;
}

.one-point__product__pic a img {
    padding: 10px 20px;
}

.one-point__product__txt {
    display: table-cell;
    padding-left: 20px;
}

#Lens .one-point {
    padding: 0px;
}

.one-point:after {
    position: absolute;
    z-index: 5;
    right: 0;
    bottom: 0;
    width: 18px;
    height: 18px;
    background-image: url(../img/onepoint_end.png);
    background-repeat: no-repeat;
    content: '';
}

.one-point__strong {
    display: inline-block;
    text-align: center;
    margin-bottom: 25px;
    padding: 4px 0 4px;
    min-width: 162px;
    font-size: 0.75rem;
    line-height: 1.0;
    color: #fff;
    background: #b45151;
    font-weight: 700;
}

.one-point__heading {
    margin-bottom: 10px;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 1.4;
    color: #b45151;
}

.one-point .mod-btn {
    width: 100%;
    margin-top: 20px;
}

#Lens .one-point__heading {
    padding: 0px 30px;
}

#Lens aside.one-point p.mod-txt {
    padding: 0px 30px 30px;
}

.manual-onepoint {
    padding: 38px 24px 26px;
}

.manual-onepoint__strong {
    position: absolute;
    top: 0;
    left: 0;
    margin-bottom: 0;
    padding: 6px 10px;
    min-width: auto;
}

.manual-onepoint__heading {
    color: #000;
}

.manual-onepoint__strong--01 {
    background: #ea5504;
}

.manual-onepoint__strong--02 {
    background: #aab200;
}

.manual-onepoint__strong--03 {
    background: #3466c7;
}

.manual-onepoint__strong--04 {
    background: #d08d18;
}

.manual-onepoint__strong--05 {
    background: #45894f;
}

@media (max-width: 640px) {
    .manual-onepoint {
        padding: 35px 4.6875vw 4.6875vw;
    }
    .one-point__product__pic {
        width: 48%;
    }
    .one-point__product__pic a img {
        width: 100%;
        height: auto;
        padding: 0;
    }
}

/*========================================

  #Manual

========================================*/
.manual-intro {
    text-align: center;
    margin-top: 30px;
}

.manual-txt__marker--01 {
    background-color: #eecdcd;
}

.manual-txt__marker--02 {
    background-color: #e8ecae;
}

.manual-txt__marker--03 {
    background-color: #cbd2ee;
}

.manual-txt__marker--04 {
    background-color: #f4e0b8;
}

.manual-txt__marker--05 {
    background-color: #c6e2cb;
}

.manual-wrap section.orange,
.manual-wrap section.indigo {
    padding-top: 100px;
}

.manual-wrap section.indigo {
    padding-bottom: 120px;
}

.manual-wrap section.green {
    padding-top: 0px;
}

@media (max-width: 640px) {
    .manual-intro {
        text-align: left;
        margin: 4.6875vw auto 0;
        width: 95%;
    }
    .manual-wrap section.orange,
    .manual-wrap section.indigo {
        padding-top: 60px;
    }
    .manual-wrap section.indigo {
        padding-bottom: 72px;
    }
}

/*----------------------------------------
  .manual-ttl
----------------------------------------*/
.green h2,
.deepgreen h2 {
    margin-bottom: 100px;
    padding: 13px 0;
    font-size: 256.3%;
    font-weight: 500;
    line-height: 2;
    text-align: center;
    letter-spacing: 0.1em;
    color: #fff;
    background-color: #383838;
    display: block;
    width: 100%;
    border-top: 1px solid #aaa;
    border-bottom: 1px solid #aaa;
}

h3.title {
    margin-bottom: 40px;
    font-size: 276.3%;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
}

.green h3.title {
    color: #008806;
}

.orange h3.title {
    color: #ea5504;
}

.deepgreen h3.title {
    color: #1a520c;
}

.indigo h3.title {
    color: #000d8f;
}

img.manual-ttl__01 {
    max-width: 230px;
}

img.manual-ttl__02 {
    max-width: 310px;
}

img.manual-ttl__03 {
    display: block;
    margin: 4px auto 0;
    max-width: 363px;
}

@media (max-width: 640px) {
    .manual-ttl {
        padding: 4.375vw 0;
    }
    .manual-ttl:after {
        top: 3px;
        right: 3px;
        bottom: 3px;
        left: 3px;
    }
    img.manual-ttl__01 {
        width: 32.8125vw;
    }
    img.manual-ttl__02 {
        width: 45.3125vw;
    }
    img.manual-ttl__03 {
        margin: 6px auto 0;
        width: 56.71875vw;
    }
    h3.title {
        font-size: 186.3%;
    }
    .green h2,
    .deepgreen h2 {
        margin-bottom: 50px;
        font-size: 166.3%;
    }
}

/*----------------------------------------
  .manual-section
----------------------------------------*/
.manual-section {
    margin-top: 80px;
}

.manual-heading {
    margin: 0 auto 40px;
    max-width: 810px;
    font-size: 0;
}

.manual-heading__img {
    display: inline-block;
    vertical-align: middle;
    width: 310px;
}

.manual-heading__txt {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 20px;
    width: 480px;
}

.manual-heading__txt p {
    text-align: right;
    letter-spacing: -0.06em;
}

@media (max-width: 640px) {
    .manual-section {
        margin-top: 8.625vw;
    }
    .manual-heading {
        margin: 0 auto 20px;
    }
    .manual-heading__img {
        display: block;
        margin: 0 auto;
        padding-right: 5.625vw;
        width: 48.4375vw;
    }
    .manual-heading__txt {
        display: block;
        margin: 3.125vw auto 0;
        width: 90%;
    }
    .manual-heading__txt p {
        text-align: center;
        font-size: 0.875rem;
        line-height: 1.6;
    }
}

@media (max-width: 359px) {
    .manual-heading__txt p {
        font-size: 0.813rem;
        line-height: 1.5;
    }
}

.manual-wrap-point {
    padding-bottom: 60px;
    margin-bottom: 60px;
    border-bottom: 1px dotted;
}

/*----------------------------------------
  .sec-04
----------------------------------------*/
.manual-lesson {
    position: relative;
    margin: 100px auto 0;
    padding: 0 0 57px 0;
    max-width: 950px;
    background: #ececec;
}

.manual-lesson .sec-inner {
    position: relative;
    padding: 0 6.5263157%;
    width: auto;
}

.manual-lesson .header {
    float: left;
    /*width: 510px;*/
    width: 61.7433414%;
}

.manual-lesson .header em {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    margin-bottom: 20px;
    padding: 12px 15px;
    width: auto;
    font-size: 150%;
    font-weight: normal;
    line-height: 1;
    color: #fff;
    background: #ea5504;
}

.manual-lesson .header img {
    display: block;
    position: absolute;
    z-index: 9999;
    top: -78px;
    right: 58px;
}

.manual-lesson h3 {
    margin-top: 90px;
    padding-bottom: 15px;
    font-size: 225%;
    line-height: 1.4;
    letter-spacing: -0.05em;
    color: #ea5504;
}

.manual-lesson .ttl-img {
    float: right;
    /*margin: -79px -31px 0 0;*/
    margin: -9.5641646% -3.7530266% 0 0;
    max-width: 326px;
    width: 39.4673123%;
}

.manual-lesson p.txt {
    margin-top: 0;
    line-height: 1.8;
}

@media (max-width: 640px) {
    .manual-lesson {
        margin: 60px auto 0;
        padding: 30px 0;
    }
    .manual-lesson .sec-inner {
        padding: 0 20px;
    }
    .manual-lesson .header {
        float: none;
        width: auto;
    }
    .manual-lesson .header em {
        position: relative;
        width: auto;
        font-size: 125%;
        line-height: 40px;
        text-align: center;
    }
    .manual-lesson .header img {
        display: block;
        position: relative;
        top: 0;
        right: 0;
        width: 100%;
    }
    .manual-lesson h3 {
        margin-top: 20px;
        font-size: 150%;
    }
    .manual-lesson .ttl-img {
        float: none;
        margin: 0 auto;
        width: 85%;
    }
}

/* .example
----------------------------------------*/
.manual-lesson .example {
    margin: 35px auto 20px;
    padding: 0 64px;
}

.manual-lesson .example .item {
    float: left;
    margin-left: 0;
    max-width: 336px;
    line-height: 1.4;
}

.manual-lesson .example .item:first-child {
    margin-right: 2.836789%;
}

.manual-lesson .example strong {
    display: block;
    margin-top: 15px;
    font-weight: bold;
}

.manual-lesson .example span {
    display: block;
    margin-top: 10px;
    font-size: 0.875em;
    line-height: 1.5;
}

.manual-lesson .commentary {
    padding: 32px 40px;
    border: 1px solid #ea5504;
}

.manual-lesson .commentary p {
    line-height: 2;
}

.manual-lesson .commentary p.note {
    margin-top: 10px;
    font-size: 0.8rem;
    line-height: 1.8;
}

.manual-lesson .commentary strong {
    display: block;
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 1.125rem;
    color: #ea5504;
}

.manual-lesson .HDR {
    margin-top: 50px;
}

.manual-lesson .HDR strong {
    display: block;
    margin-bottom: 5px;
    color: #ea5504;
    font-weight: bold;
}

.manual-lesson .HDR .txt {
    line-height: 1.8;
}

@media (max-width: 640px) {
    .manual-lesson .commentary {
        padding: 16px 20px;
    }
    .manual-lesson .example {
        margin: 20px auto;
        padding: 0;
    }
    .manual-lesson .example .item {
        float: none;
        margin: 0 0;
        padding: 20px 0;
        max-width: inherit;
        width: auto;
        border-bottom: 1px dotted #ddd;
    }
    .manual-lesson .example .item:first-child {
        margin-left: 0;
    }
    .manual-lesson .example .item img {
        width: 100%;
    }
    .manual-lesson .HDR {
        margin-top: 30px;
    }
}

/*----------------------------------------
  .manual-exp
----------------------------------------*/
h3.manual-ttl.mod-img.serif {
    color: #fff;
    font-size: 2em;
    display: block;
    padding: 30px 0 30px 0;
    background: #C9680D;
    font-weight: bold;
}

h3.manual-ttl.mod-img.serif span.sub {
    display: block;
    padding-top: 30px;
    font-size: 0.7em;
}

h3.manual-ttl.mod-img.serif:after {
    border: 2px solid #E1D0AD;
}

.manual-exp {
    position: relative;
    box-sizing: border-box;
    margin: 60px auto 0;
    padding: 52px 65px 80px;
    max-width: 1080px;
    background: #fff;
}

.manual-exp.acafe {
    margin: 60px auto 0;
    padding: 0;
    max-width: 950px;
    background: none;
}

.manual-exp__line {
    margin-top: 60px;
}

.manual-exp__line:after {
    clear: both;
    display: block;
    content: '';
}

.manual-exp__leftbox {
    float: left;
    width: 520px;
    width: 54.736842%;
}

.manual-exp__rightbox {
    float: right;
    width: 404px;
    width: 42.5263157%;
}

.manual-exp__heading {
    position: relative;
    margin-bottom: 15px;
    padding-left: 45px;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: -0.02em;
}

.manual-exp__heading:before {
    position: absolute;
    display: inline-block;
    top: 5px;
    left: 0;
    margin-right: 15px;
    padding-bottom: 22px;
    width: 29px;
    background-repeat: no-repeat;
    background-position: left top;
    content: '';
}

.manual-exp__check--01:before {
    background-image: url(../img/manual_check_01.svg);
}

.manual-exp__check--02:before {
    background-image: url(../img/manual_check_02.svg);
}

.manual-exp__check--03:before {
    background-image: url(../img/manual_check_03.svg);
}

.manual-exp__check--04:before {
    background-image: url(../img/manual_check_04.svg);
}

.manual-exp__check--05:before {
    background-image: url(../img/manual_check_05.svg);
}

h5.manual-exp__heading {
    font-weight: 500;
}

.manual-section h4 {
    display: block;
    margin-bottom: 50px;
    font-size: 225%;
    text-align: center;
}

.manual-exp .manual-pratic h5 {
    margin-bottom: 32px;
    font-size: 1.5rem;
    text-align: center;
    color: #555;
}

.manual-exp .manual-pratic h6 {
    margin-bottom: 30px;
    color: #007aff;
    font-size: 2.25rem;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.1em;
}

.orange .manual-exp .manual-pratic h6 {
    color: #ea5504;
}

.deepgreen .manual-exp .manual-pratic h6 {
    color: #1a520c;
}

.indigo .manual-exp .manual-pratic h6 {
    color: #000d8f;
}

.manual-exp .manual-pratic .Lens h6,
.manual-exp .manual-pratic .Acc h6 {
    margin-bottom: 0;
    color: #555;
    font-size: 2.25em;
    letter-spacing: -0.06em;
}

.manual-exp .manual-pratic section {
    margin-top: 32px;
    margin-bottom: 80px;
}

.manual-exp .manual-pratic section:last-child {
    margin-bottom: 0;
}

.manual-exp .manual-pratic .mod-txt {
    width: 792px;
    margin: 40px auto 0;
    line-height: 2;
}

@media (max-width: 640px) {
    h3.manual-ttl.mod-img.serif span {
        display: block;
        padding-top: 30px;
    }
    .manual-exp {
        margin-top: 9.375vw;
        margin-left: -1.5625vw;
        padding: 4.6875vw 6.25vw 7.8125vw;
        width: 93.75vw;
    }
    .manual-exp__strong {
        position: static;
        display: block;
        text-align: center;
        margin-bottom: 25px;
        font-size: 2rem;
        line-height: 1.0;
    }
    .manual-exp__line {
        margin-top: 50px;
    }
    .manual-exp__leftbox {
        float: none;
        width: auto;
    }
    .manual-exp__rightbox {
        float: none;
        margin-top: 20px;
        width: auto;
    }
    .manual-exp__heading {
        text-align: center;
        margin-bottom: 15px;
        padding-left: 0;
    }
    .manual-section h4 {
        font-size: 167%;
        margin-bottom: 40px;
        margin-top: 20px;
    }
    .manual-exp__heading:before {
        position: static;
        display: block;
        margin: 0 auto 10px;
    }
    .manual-exp .manual-pratic .mod-txt {
        width: auto;
    }
    .manual-exp .manual-pratic h6 {
        font-size: 1.5rem !important;
        line-height: 1.5;
        letter-spacing: 0;
    }
    .mod-img ol.sp {
        background: #efefef;
        padding: 10px;
    }
    .mod-img ol.sp li {
        list-style-type: decimal;
        line-height: 1.5;
        margin-left: 1.5em;
    }
}

/*----------------------------------------
  .manual-exp
----------------------------------------*/
.manual-useful {
    position: relative;
    box-sizing: border-box;
    margin-top: 50px;
    padding: 40px 30px 20px;
    font-size: 0;
    background: #ececec;
}

.manual-useful__strong {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    padding: 4px 5px;
    font-size: 1.0rem;
    line-height: 1.0;
    color: #fff;
}

.manual-useful__strong--01 {
    background: #ba4b4b;
}

.manual-useful__strong--02 {
    background: #aab200;
}

.manual-useful__strong--03 {
    background: #3466c7;
}

.manual-useful__strong--04 {
    background: #d08d18;
}

.manual-useful__strong--05 {
    background: #45894f;
}

.manual-useful__link {
    margin-top: 4px;
    font-size: 1.063rem;
    line-height: 1.4;
    letter-spacing: -0.04em;
}

.manual-useful__link a + a {
    margin-left: 30px;
}

.manual-useful__link a:hover {
    text-decoration: underline;
}

.manual-useful__link a:before {
    position: relative;
    display: inline-block;
    top: -1px;
    margin-right: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #000;
    content: '';
}

.manual-useful__link img {
    vertical-align: middle;
    margin-left: 10px;
    width: 100%;
    height: auto;
}

.manual-useful__left,
.manual-useful__right {
    display: inline-block;
    vertical-align: top;
    width: 49.5%;
}

.manual-useful__right {
    margin-left: 1%;
}

.manual-useful__emount {
    text-indent: -10px;
    color: #00329a;
}

.manual-useful__amount {
    text-indent: -10px;
    color: #e8380d;
}

@media (max-width: 640px) {
    .manual-useful {
        padding: 35px 4.6875vw 4.6875vw;
    }
    .manual-useful__link {
        font-size: 0.875rem;
    }
    .manual-useful__link a + a {
        margin-left: 0;
    }
    .manual-useful__link a:after {
        display: block;
        content: '';
    }
    .manual-useful__left,
    .manual-useful__right {
        display: block;
        width: auto;
    }
    .manual-useful__right {
        margin: 15px 0 0;
    }
}

/*----------------------------------------
  .manual-exp .program
----------------------------------------*/
.manual-exp .program h5 {
    margin-bottom: 23px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

.manual-exp .program .mod-img.leftfix {
    float: left;
    width: 47.5%;
}

.manual-exp .program .mod-img.rightfix {
    float: right;
    width: 47.5%;
    line-height: 1.5em;
    text-align: right;
}

.manual-exp .program .mod-img.rightfix small {
    font-size: 0.8em;
    display: block;
}

.manual-exp .program .mod-btn {
    margin: 30px auto;
    display: block;
    max-width: 600px;
    background: #ff5a00;
    font-size: 1.25em;
}

.manual-exp .program p {
    text-align: center;
    margin-top: 30px;
}

@media (max-width: 640px) {
    .manual-exp.acafe {
        width: auto;
    }
    .manual-exp .program {
        margin-top: 50px;
    }
    .manual-exp .program h4 {
        font-size: 1.875rem;
    }
    .manual-exp .program h5 {
        margin-bottom: 15px;
        font-size: 1.125rem;
    }
    .manual-exp .program h4 + section {
        margin-top: 30px;
    }
    .manual-exp .program .mod-btn {
        display: block;
        margin-top: 20px;
        max-width: none;
    }
}

/*========================================

  #Lens

========================================*/
#Lens {
    padding-bottom: 100px;
}

.lens-ttl {
    margin-bottom: 35px;
    padding-top: 90px;
    font-size: 256.3%;
    font-weight: 400;
    line-height: 1.2;
    color: #985353;
    text-align: center;
}

.lens-ttl__tag {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
    padding: 9px 12px 8px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    background: #b45151;
}

.lens-ttl__txt {
    display: inline-block;
    vertical-align: middle;
}

.lens-ttl__sub {
    font-size: 175%;
    line-height: 1.4;
    color: #b45151;
}

.lens-layout {
    margin-top: 50px;
}

.lens-layout:after {
    clear: both;
    display: block;
    content: '';
}

.lens-layout__leftbox {
    float: left;
    width: 505px;
}

.lens-layout__rightbox {
    float: right;
    width: 404px;
}

@media (max-width: 640px) {
    .lens-section {
        margin-top: 80px;
    }
    .article-heading + .lens-section {
        margin-top: 40px;
    }
    .lens-ttl {
        margin-bottom: 20px;
        padding-top: 0;
        font-size: 5.625vw;
        font-feature-settings: 'palt';
    }
    .lens-ttl__tag {
        margin-right: 0;
        margin-bottom: 10px;
        padding: 7px 24px 6px;
        font-size: 14px;
    }
    .lens-ttl__txt {
        display: block;
    }
    .lens-img a {
        border-width: 4px;
    }
    .lens-img__right {
        float: none;
        margin-top: 30px;
        margin-right: 0;
    }
    .lens-img__cap {
        margin-top: 10px;
        font-size: 11px;
    }
    .lens-layout {
        margin-top: 30px;
    }
    .lens-layout__leftbox,
    .lens-layout__rightbox {
        float: none;
        width: auto;
    }
}

@media (max-width: 480px) {
    .lens-ttl {
        font-size: 8.2vw;
    }
}

/*----------------------------------------
  .Lens .mount
----------------------------------------*/
.Lens .mount {
    margin-top: 60px;
    width: 456px;
}

.Lens .e-mount {
    float: left;
}

.Lens .a-mount {
    float: right;
}

.Lens .mount .item {
    position: relative;
    display: block;
    margin-top: 55px;
}

.Lens .mount .item:first-child {
    margin-top: 0;
}

.Lens .mount .item-inner:after {
    clear: both;
    display: block;
    content: '';
}

.Lens .mount .item-use {
    position: absolute;
    text-align: center;
    top: -24px;
    width: 100%;
    font-size: 15px;
    line-height: 15px;
}

.Lens .mount .item-txtbox {
    float: left;
    max-width: 240px;
}

.Lens .mount .item-tag {
    box-sizing: border-box;
    text-align: center;
    display: inline-block;
    min-width: 130px;
    padding: 12px 0 11px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.15;
    border-width: 2px;
    border-style: solid;
}

.Lens .e-mount .item-tag {
    color: #00329a;
    border-color: #00329a;
}

.Lens .a-mount .item-tag {
    color: #e8380d;
    border-color: #e8380d;
}

.Lens .a-mount .e-mount .item-tag {
    color: #00329a;
    border-color: #00329a;
}

.Lens .mount .item-txtbox strong {
    display: block;
    margin-top: 15px;
    font-size: 21px;
    line-height: 1.1;
}

.Lens .mount .item-txtbox span {
    display: block;
    margin-top: 5px;
    font-size: 15px;
    line-height: 1.1;
}

.Lens .mount .item-txtbox .item-btn {
    margin-top: 20px;
    font-size: 0;
}

.Lens .mount .item-img {
    float: right;
    display: table;
    margin-right: 10px;
    height: 100%;
}

.Lens .mount .item-img span {
    display: table-cell;
    vertical-align: middle;
}

.Lens .mount .item-btn {
    margin-top: 20px;
    font-size: 0;
}

.Lens .mount .mod-btn {
    width: 218px;
}

.Lens .mount .mod-btn__detail {
    margin-left: 20px;
}

.Lens .mount .mod-btn.campaign {
    margin-top: 15px;
    width: 100%;
    background-color: #ff5a00;
}

.Lens .mount .mod-btn.campaign span {
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 3px 10px;
    font-weight: 700;
    color: #ff5a00;
    background-color: #fff;
}

#SEL1635Z .item-img {
    max-width: 198px;
}

#SEL1635Z .item-inner {
    padding-bottom: 23px;
}

#SEL2470Z .item-img {
    max-width: 195px;
}

#SAL1635Z2 .item-img {
    max-width: 207px;
}

#SEL24F18Z .item-img {
    max-width: 144px;
}

#SEL1635GM .item-img {
    max-width: 238px;
}

#SEL1635GM .item-inner {
    padding-bottom: 8px;
}

#SAL24F20Z .item-img {
    max-width: 184px;
}

#SEL70200G .item-img {
    max-width: 235px;
}

#SEL70300G .item-img {
    max-width: 195px;
}

#SAL55200-2 .item-img {
    max-width: 150px;
}

#SAL70400G2 .item-img {
    max-width: 240px;
}

@media (max-width: 640px) {
    .Lens .mount {
        margin-top: 0;
        width: auto;
    }
    .Lens .e-mount {
        float: none;
    }
    .Lens .a-mount {
        float: none;
    }
    .Lens .mount .item {
        position: relative;
        margin-top: 60px !important;
    }
    .Lens .e-mount .item:first-child {
        margin-top: 40px !important;
    }
    .Lens .mount .item-txtbox {
        width: 48.5%;
    }
    .Lens .mount .item-img {
        width: 48%;
        margin-right: 0px;
    }
    .Lens .mount .item-img span {
        width: 48.5%;
    }
    .Lens .mount .mod-btn {
        width: 48.5%;
    }
    .Lens .mount .mod-btn__detail {
        margin-left: 3%;
    }
    .Lens .mount .mod-btn.campaign {
        margin-top: 3%;
        font-size: 13px;
    }
    #SEL1635Z .item-inner,
    #SEL1635GM .item-inner,
    #SEL70300G .item-inner {
        padding-bottom: 0;
    }
}

/*----------------------------------------
  .Acc .mount
----------------------------------------*/
.Acc .mount {
    margin-top: 60px;
    width: 456px;
}

.Acc .e-mount {
    float: left;
}

.Acc .a-mount {
    float: right;
}

.Acc .mount .item {
    position: relative;
    display: block;
    margin-top: 55px;
}

.Acc .mount .item:first-child {
    margin-top: 0;
}

.Acc .mount .item-inner:after {
    clear: both;
    display: block;
    content: '';
}

.Acc .mount .item-use {
    position: absolute;
    text-align: center;
    top: -24px;
    width: 100%;
    font-size: 15px;
    line-height: 15px;
}

.Acc .mount .item-txtbox {
    float: left;
    max-width: 200px;
}

.Acc .mount .item-tag {
    box-sizing: border-box;
    text-align: center;
    display: inline-block;
    min-width: 130px;
    padding: 12px 0 11px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.15;
    border-width: 2px;
    border-style: solid;
}

.Acc .e-mount .item-tag {
    color: #00329a;
    border-color: #00329a;
}

.Acc .a-mount .item-tag {
    color: #e8380d;
    border-color: #e8380d;
}

.Acc .a-mount .e-mount .item-tag {
    color: #00329a;
    border-color: #00329a;
}

.Acc .mount .item-txtbox strong {
    display: block;
    margin-top: 0px;
    font-size: 21px;
    line-height: 1.1;
}

.Acc .mount .item-txtbox span {
    display: block;
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.5;
}

.Acc .mount .item-txtbox .item-btn {
    margin-top: 20px;
    font-size: 0;
}

.Acc .mount .item-img {
    float: right;
    display: table;
    margin-right: 10px;
    height: 100%;
}

.Acc .mount .item-img span {
    display: table-cell;
    vertical-align: middle;
}

.Acc .mount .item-btn {
    margin-top: 0px;
    font-size: 0;
}

.Acc .mount .mod-btn {
    width: 218px;
}

.Acc .mount .mod-btn__detail {
    margin-left: 0px;
}

.Acc .mount .mod-btn.campaign {
    margin-top: 15px;
    width: 100%;
    background-color: #ff5a00;
}

.Acc .mount .mod-btn.campaign span {
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 3px 10px;
    font-weight: 700;
    color: #ff5a00;
    background-color: #fff;
}

#RMT-P1BT .item-img,
#VCT-P300 .item-img,
#RM-VPR1 .item-img {
    max-width: 200px;
}

@media (max-width: 640px) {
    .Acc .mount {
        margin-top: 0;
        width: auto;
    }
    .Acc .e-mount {
        float: none;
    }
    .Acc .a-mount {
        float: none;
    }
    .Acc .mount .item {
        position: relative;
        margin-top: 60px !important;
    }
    .Acc .e-mount .item:first-child {
        margin-top: 40px !important;
    }
    .Acc .mount .item-txtbox {
        width: 48.5%;
    }
    .Acc .mount .item-img {
        width: 48%;
        margin-right: 0px;
    }
    .Acc .mount .item-img span {
        width: 48.5%;
    }
    .Acc .mount .mod-btn {
        width: 48.5%;
    }
    .Acc .mount .mod-btn.campaign {
        margin-top: 3%;
        font-size: 13px;
    }
    #SEL1635Z .item-inner,
    #SEL1635GM .item-inner,
    #SEL70300G .item-inner {
        padding-bottom: 0;
    }
}

/*----------------------------------------
  #Lens .fe-banner
----------------------------------------*/
#Lens .fe-banner {
    margin: 60px auto;
}

#Lens .fe-banner a {
    overflow: hidden;
}

@media (max-width: 640px) {
    #Lens .fe-banner {
        margin-top: 9.375%;
    }
    #Lens .fe-banner img {
        max-width: 760px;
        width: 100%;
    }
}

/*----------------------------------------
  #Lens .chance
----------------------------------------*/
#Lens .chance {
    margin-top: 90px;
}

#Lens .chance h4 {
    font-size: 2.438rem;
    line-height: 1.3;
    color: #b45151;
}

#Lens .chance section {
    margin-top: 60px;
    font-size: 0;
}

#Lens .chance h5 {
    margin-bottom: 23px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

#Lens .chance .txt-box.leftfix {
    float: left;
    width: 440px;
}

#Lens .chance .mod-img.rightfix {
    float: right;
    width: 463px;
}

#Lens .chance .mod-btn {
    margin-top: 25px;
}

@media (max-width: 640px) {
    #Lens .chance {
        margin-top: 50px;
    }
    #Lens .chance h4 {
        font-size: 1.875rem;
    }
    #Lens .chance h5 {
        margin-bottom: 15px;
        font-size: 1.125rem;
    }
    #Lens .chance h4 + section {
        margin-top: 30px;
    }
    #Lens .chance .txt-box.leftfix {
        float: none;
        width: auto;
    }
    #Lens .chance .mod-img.rightfix {
        float: none;
        margin: 20px 0;
        width: auto;
    }
    #Lens .chance .mod-btn {
        display: block;
        margin-top: 20px;
    }
}

/* .cashback
----------------------------------------*/
#Lens .cashback .mod-img {
    display: block;
    margin: 30px 0 0;
}

@media (max-width: 640px) {
    #Lens .cashback .mod-img {
        margin: 20px 0 0;
    }
}

/*========================================

  #Acc

========================================*/
#Acc {
    padding-bottom: 100px;
    background: #fff;
}

#Acc .heading {
    background: #ea5504;
}

#Acc .intro {
    margin-top: 80px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
}

#Acc .inner {
    font-size: 0;
}

#Acc section {
    vertical-align: top;
    margin-top: 50px;
}

#Acc h4 {
    font-size: 1.063rem;
    font-weight: 400;
    line-height: 1.4;
}

#Acc .item-img {
    text-align: center;
    display: table;
    margin: 0 auto;
    width: 100%;
    line-height: 0;
}

#Acc .item-img span {
    display: table-cell;
    vertical-align: middle;
}

#Acc .item-img img {
    width: 100%;
    height: auto;
}

#Acc .item-tag {
    display: inline-block;
    padding: 4px 13px 3px;
    font-size: 0.813rem;
    line-height: 1.0;
    letter-spacing: -0.05em;
    color: #fff;
}

#Acc .item-tag__e {
    background: #00329a;
}

#Acc .item-tag__a {
    background: #e60020;
}

#Acc .item-tag__sp {
    text-indent: -99999em;
    background-color: transparent;
}

#Acc hr {
    margin-top: 50px;
    width: 950px;
    height: 1px;
    background-color: #000;
    border: none;
}

@media (max-width: 640px) {
    #Acc {
        padding-bottom: 50px;
    }
    #Acc .intro {
        margin-top: 30px;
        font-size: 1.125rem;
    }
    #Acc section {
        margin-top: 30px;
    }
    #Acc h4 {
        font-size: 1.0rem !important;
    }
    #Acc .item-tag {
        padding: 4px 15px 4px;
    }
    #Acc hr {
        margin-top: 40px;
        width: 100%;
    }
    #Acc .item-tag__sp {
        text-indent: 0;
    }
    #Acc .item-tag__sp.item-tag__e {
        background: #00329a;
    }
    #Acc .item-tag__sp.item-tag__a {
        background: #e60020;
    }
}

/*----------------------------------------
  #Acc .acc-lens
----------------------------------------*/
#Acc .acc-lens {
    font-size: 0;
}

#Acc .acc-lens h4 {
    font-size: 1.125rem;
}

#Acc .acc-01 {
    display: inline-block;
    vertical-align: top;
    margin: 20px 0 40px;
    width: 465px;
}

#Acc .acc-01b {
    margin-left: 20px;
}

#Acc .acc-01 p {
    margin-top: 8px;
    font-size: 0.813rem;
    line-height: 1.4;
}

#Acc .acc-01 p strong {
    font-weight: 700;
}

#Acc .acc-lens .item {
    display: inline-block;
    vertical-align: top;
    margin-left: 20px;
    width: 303px;
}

#Acc .acc-lens .acc-01 + .item {
    margin-left: 0;
}

#Acc .acc-lens .item-name {
    margin: 10px 0;
}

#Acc .acc-lens .item-name1 {
    font-size: 1.438rem;
    line-height: 1.3;
}

#Acc .acc-lens .item-name2 {
    margin: 2px 0 0;
    font-size: 0.938rem;
    line-height: 1.0;
}

#Acc .acc-lens .item-txt {
    margin-top: 10px;
    font-size: 0.875rem;
    line-height: 1.5;
}

#Acc .acc-lens .item .mod-btn {
    margin-top: 15px;
    width: 100%;
}

#Acc #SEL18200LE .item-img {
    max-width: 186px;
}

#Acc #SEL24240 .item-img {
    max-width: 223px;
}

#Acc #SAL18250 .item-img {
    max-width: 182px;
}

@media (max-width: 640px) {
    #Acc .acc-01 {
        display: block;
        margin: 20px 0;
        width: auto;
    }
    #Acc .acc-01b {
        margin-left: 0;
    }
    #Acc .acc-lens .item {
        display: block;
        margin-top: 50px;
        margin-left: 0;
        width: auto;
    }
    #Acc .acc-lens .item-name {
        width: 48.5%;
        float: left;
    }
    #Acc .item-img {
        float: right;
        width: 48.5%;
    }
    #Acc .acc-lens .item-txt {
        float: left;
    }
}

/*----------------------------------------
  #Acc .sec-02
----------------------------------------*/
#Acc .sec-02__heading {
    position: relative;
    padding-left: 1.1em;
    font-weight: 500;
    line-height: 1.2;
}

#Acc .sec-02__heading span {
    position: absolute;
    left: 0;
    top: 0;
}

#Acc .sec-02 {
    margin-top: 50px;
}

#Acc .sec-02 h3 {
    font-size: 106.3%;
    letter-spacing: -0.04em;
}

#Acc .sec-02 .line {
    margin: 60px 0 0 -26px;
}

#Acc .sec-02 .line:first-child {
    margin-top: 0;
}

#Acc .sec-02 .item {
    float: left;
    margin-left: 26px;
    width: 218px;
}

#Acc .sec-02 #LCS-BP3.item {
    width: 462px;
}

#Acc .sec-02 .item .mod-img {
    margin: 10px auto;
    display: table;
    height: 192px;
}

#Acc .sec-02 #RMT-VP1K.item .mod-img {
    height: 177px;
}

#Acc .sec-02 .item .img-wrap {
    display: table-cell;
    vertical-align: middle;
}

#Acc .sec-02 .item .name {
    font-size: 81.3%;
    line-height: 1.2;
}

#Acc .sec-02 .item .model {
    margin-top: 5px;
    font-size: 156.3%;
    line-height: 1.2;
}

#Acc .sec-02 .item .mod-btn {
    display: block;
    margin-top: 5px;
    max-width: 218px;
}

@media (max-width: 640px) {
    #Acc .sec-02__heading br {
        display: none;
    }
    #Acc .sec-02 .line {
        margin: 0;
    }
    #Acc .sec-02 .item {
        float: none;
        margin: 30px 0 0 !important;
        padding-bottom: 30px;
        width: auto !important;
        border-bottom: 1px solid #ddd;
    }
    #Acc .sec-02 .item:last-child {
        border-bottom: none;
    }
    #Acc .sec-02 .item .mod-img {
        margin: 15px auto;
        width: 80%;
        height: auto !important;
    }
    #Acc .sec-02 .item .mod-btn {
        max-width: inherit;
    }
}

/*========================================

  #Sub

========================================*/
#Sub {
    padding-bottom: 100px;
    background: #fff;
}

#Sub .article-heading {
    background: #0249cc;
}

#Sub section h4 {
    margin: 70px 0 15px;
    font-size: 2.375rem;
    line-height: 1.4;
    letter-spacing: -0.02em;
    color: #333;
}

#Sub .sub-img {
    float: right;
    width: 395px;
}

#Sub .txt-box {
    float: left;
    width: 520px;
}

#Sub .txt-box em {
    display: block;
    margin-top: 20px;
    font-size: 0.875rem;
    line-height: 1.2;
}

#Sub .txt-box .name {
    margin-top: 5px;
    font-size: 1.5rem;
    line-height: 1.2;
}

#Sub .mod-btn {
    width: 330px;
}

#Sub .sub-01 {
    margin-top: 40px;
}

#Sub .sub-01 .mod-btn {
    margin-top: 35px;
}

#Sub .sub-02 {
    margin-top: 60px;
}

@media (max-width: 640px) {
    #Sub {
        padding-bottom: 50px;
    }
    #Sub section h4 {
        text-align: center;
        margin: 30px 0 10px;
        font-size: 5.8vw;
    }
    #Sub .sub-img {
        float: none;
        width: auto;
    }
    #Sub .txt-box {
        float: none;
        margin-top: 15px;
        width: auto;
    }
    #Sub .mod-btn {
        margin-top: 15px !important;
        width: 100%;
    }
    #Sub .sub-02 {
        margin-top: 30px;
    }
}

/*========================================

  #Bravia

========================================*/
#Bravia {
    overflow: hidden;
    padding-bottom: 70px;
    background: #fff;
}

#Bravia .mod-inner {
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 950px;
    width: 93.75%;
}

#Bravia .article-heading {
    background: #999;
}

#Bravia h4 {
    color: #2d2d2d;
}

#Bravia .main-img {
    text-align: center;
    float: right;
    margin: 65px 0 0;
    width: 450px;
}

#Bravia .main-img img {
    max-width: 516px;
    width: 112.173913%;
}

#Bravia .txt-box {
    float: left;
    margin: 65px 0 0;
    width: 480px;
}

#Bravia .txt-box h4 {
    margin-bottom: 20px;
    font-size: 2.125rem;
    line-height: 1.28;
    letter-spacing: -0.06em;
}

#Bravia .txt-box .mod-txt {
    line-height: 1.6;
    letter-spacing: 0;
}

#Bravia .X9500G {
    margin-top: 30px;
}

#Bravia .X9500G .mod-img {
    display: table-cell;
    vertical-align: middle;
    width: 133px;
}

#Bravia .X9500G .right-box {
    display: table-cell;
    vertical-align: middle;
    padding-left: 20px;
    width: 290px;
}

#Bravia .X9500G .right-box strong {
    display: block;
    font-size: 0.875rem;
    line-height: 1.2;
}

#Bravia .X9500G .right-box p {
    margin-top: 5px;
    font-size: 0.813rem;
    line-height: 1.38;
}

#Bravia .X9500G .right-box .mod-btn {
    margin-top: 15px;
    width: 100%;
}

#Bravia section.inner {
    margin: 90px auto 0 auto;
    max-width: 950px;
    width: 94.0594059%;
}

@media (max-width: 640px) {
    #Bravia {
        padding-bottom: 40px;
    }
    #Bravia .main-img {
        float: none;
        margin: 30px 0 0;
        width: auto;
    }
    #Bravia .txt-box {
        float: none;
        margin: -15px 0 0;
        width: auto;
    }
    #Bravia .txt-box h4 {
        font-size: 6vw;
    }
    #Bravia .X9500G .right-box {
        padding-left: 15px;
        width: auto;
    }
    #Bravia .X9500G .right-box .mod-btn {
        width: 100%;
    }
}

/*========================================

  Gmaster

========================================*/
#Gmaster {
    margin-top: 100px;
    padding: 60px 0;
    background-image: url(../img/gmaster_back.jpg);
    background-position: center 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #222;
    color: #FFF;
}

#Gmaster .Gmaster-intro {
    text-align: center;
}

#Gmaster .mod-img__sample a {
    border: 0;
}

#Gmaster .Gmaster-intro strong {
    display: block;
    margin: 22px 0 60px;
    font-size: 1.5rem;
    text-align: center;
}

#Gmaster .Gmaster-intro img {
    display: inline;
    width: 160px;
}

#Gmaster .Gmaster-txt {
    width: 960px;
    margin: 0 auto 90px;
}

#Gmaster .mod-txt {
    margin: 40px auto 0;
    color: #FFF;
    line-height: 2;
}

#Gmaster .e-mount {
    width: 950px;
    margin: 60px auto;
    float: none;
}

#Gmaster .e-mount .item {
    position: relative;
    display: block;
    margin-top: 55px;
}

#Gmaster .e-mount .item-txtbox {
    color: #fff;
    max-width: 450px;
    float: left;
}

#Gmaster .e-mount .item-inner:after {
    clear: both;
    display: block;
    content: '';
}

#Gmaster .e-mount .item-tag {
    padding: 9px 7px 7px 12px;
    color: #fff;
    border-color: #fff;
    box-sizing: border-box;
    text-align: center;
    display: inline-block;
    min-width: 130px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.15;
    border-width: 2px;
    border-style: solid;
}

#Gmaster .e-mount .item-tag + img {
    max-width: 158px;
    display: block;
    margin: 20px 0;
}

#Gmaster .e-mount .lens-ttl__sub {
    margin-top: 15px;
    color: #fff;
}

#Gmaster .e-mount .item-img {
    float: right;
    display: table;
    margin-right: 0px;
    height: 100%;
}

#Gmaster .e-mount .item-img span {
    display: table-cell;
    vertical-align: middle;
}

#Gmaster .e-mount .item-img img {
    margin: 0 0px;
    max-width: 330px;
}

#Gmaster .e-mount .item-btn {
    margin-top: 0px;
}

#Gmaster .e-mount .mod-btn {
    width: 218px;
}

#Gmaster .e-mount p.lens-txt {
    color: #fff;
    text-align: center;
}

#Gmaster .e-mount .item-txtbox strong {
    display: block;
    margin-top: 15px;
    font-size: 21px;
    line-height: 1.1;
}

#Gmaster .e-mount .item-txtbox span {
    display: block;
    margin-top: 5px;
    font-size: 15px;
    line-height: 1.1;
}

#Gmaster .e-mount p.lens-txt a:hover {
    text-decoration: underline;
}

@media (max-width: 640px) {
    #Gmaster .e-mount {
        padding: 0 0 0 0;
        margin-bottom: 0;
        width: auto;
    }
    #Gmaster .e-mount .lens-img__w384 {
        width: auto;
    }
    #Gmaster .e-mount .e-mount {
        width: auto;
    }
    #Gmaster .e-mount .lens-ttl__sub {
        font-size: 125%;
    }
    #Gmaster .e-mount .item-img img {
        margin: 0;
    }
    #Gmaster .e-mount .item-btn {
        margin-top: 20px;
    }
    #Gmaster .Gmaster-txt {
        width: auto;
        margin-bottom: 60px;
    }
    #Gmaster .e-mount .item-txtbox {
        width: 48.5%;
    }
    #Gmaster .e-mount .item-img {
        width: 48.5%;
    }
    #Gmaster .e-mount .mod-btn {
        width: 49%;
    }
}

/*========================================

  addition

========================================*/
#fe-lens {
    padding: 0 0 80px;
}

#fe-lens h3 {
    color: #555555;
    text-align: center;
    margin-bottom: 20px;
}

#fe-lens .fe-banner + .fe-banner {
    margin-top: 36px;
}

#fe-lens section {
    margin: 80px auto 0;
    max-width: 950px;
    width: 100%;
}

#fe-lens .fe-banner p {
    margin-top: 18px;
}

#fe-lens .chance {
    box-sizing: border-box;
    margin: 90px auto 0;
    max-width: 950px;
}

#fe-lens .chance .txt-box.leftfix {
    float: left;
    width: 440px;
}

#fe-lens .chance h5 {
    margin-bottom: 20px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

#fe-lens .chance .mod-img.rightfix {
    float: right;
    width: 463px;
}

#fe-lens .btn.orange {
    margin-top: 30px;
    padding-right: 30px;
    padding-left: 30px;
    background: #3f3f3f;
}

#fe-lens .mod-btn:before {
    position: absolute;
    top: 50%;
    left: 16px;
    margin-top: -3.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 4px;
    border-color: transparent transparent transparent #fff;
    content: '';
}

@media (max-width: 640px) {
    #fe-lens h3 {
        font-size: 166.3%;
    }
    #fe-lens section {
        max-width: auto;
        width: 90.625%;
    }
    #fe-lens .chance .txt-box.leftfix {
        float: none;
        width: auto;
    }
    #fe-lens .chance .mod-img.rightfix {
        float: none;
        width: auto;
    }
}

/*========================================

  #Academy

========================================*/
#Academy {
    padding-bottom: 90px;
    background: #fff;
}

#Academy .article-heading {
    background: #ea5504;
}

#Academy section {
    margin-top: 60px;
    position: relative;
    margin: 60px auto 0;
    max-width: 950px;
    width: 94.0594059%;
}

#Academy .intro h4 {
    margin-bottom: 25px;
    font-size: 2.438rem;
    line-height: 1.23;
    color: #333;
}

#Academy .intro .txt-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 450px;
}

#Academy .lesson.mod-btn {
    margin-top: 20px;
    background-color: #1890fa;
    font-size: 16px;
    font-weight: 600;
}

@media (max-width: 640px) {
    #Academy {
        padding-bottom: 50px;
    }
    #Academy section {
        width: 90.625%;
    }
}

.article-heading__txt {
    position: relative;
    display: block;
    box-sizing: border-box;
    margin: 0 auto;
    padding-left: 32px;
    font-size: 175%;
    line-height: 1.2;
    color: #fff;
    max-width: 950px;
    width: 94.0594059%;
}

.article-heading {
    padding: 17px 0;
}

.article-heading__txt:before {
    content: '';
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 0;
    margin-top: -16px;
    width: 24px;
    height: 32px;
    background-image: url(../img/arrow_ttl.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
}

.mod-img img {
    width: 100%;
    height: auto;
}

.mod-txt {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 2;
    color: #000;
    letter-spacing: -0.03em;
}

.mod-btn {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    padding: 14px 30px 12px;
    font-size: 13px;
    line-height: 1.2;
    color: #fff !important;
    text-align: center;
    background-color: #3f3f3f;
    transition: opacity 0.2s;
    -webkit-transition: opacity 0.2s;
}

.mod-btn:before {
    position: absolute;
    top: 50%;
    left: 16px;
    margin-top: -3.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 4px;
    border-color: transparent transparent transparent #fff;
    content: '';
}

/*----------------------------------------
  #Academy .intro
----------------------------------------*/
#Academy .intro h4 {
    margin-bottom: 25px;
    font-size: 2.438rem;
    line-height: 1.23;
    color: #333;
}

#Academy .intro .txt-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 450px;
}

#Academy .intro .mod-img {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: 37px;
    width: 463px;
}

@media (max-width: 640px) {
    #Academy .intro {
        margin-top: 30px;
    }
    #Academy .intro h4 {
        margin-bottom: 15px;
    }
    #Academy .intro .txt-box {
        position: static;
        display: block;
        width: auto;
    }
    #Academy .intro .mod-img {
        position: static;
        display: block;
        margin-top: 15px;
        width: auto;
    }
}

@media (max-width: 480px) {
    #Academy .intro h4 {
        font-size: 8.5vw;
    }
}

/*----------------------------------------
  #Academy .course
----------------------------------------*/
#Academy .course .txt-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: 430px;
    width: 520px;
}

#Academy .course .mod-img {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: -520px;
    width: 400px;
}

#Academy .course .txt-box h4,
#Academy .course .txt-box strong {
    display: block;
    margin-bottom: 15px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
}

#Academy .course .txt-box h4 {
    display: inline-block;
    margin: 0;
    padding: 2px 20px;
    color: #fff;
    background: #ea5504;
}

#Academy .course .tags {
    margin: 30px 0 20px;
    padding: 0;
    list-style: none;
}

#Academy .course .tags li {
    display: inline-block;
    margin-right: 8px;
    margin-bottom: 5px;
    padding: 2px 5px 1px;
    font-size: 0.875rem;
    color: #111;
    line-height: 1.2;
    border-style: solid;
    border-width: 1px;
}

#Academy .course .tags li:last-child {
    margin-right: 0;
}

#Academy .course .tags .intermediate {
    background-color: #39dbcf;
    border-color: #39dbcf;
}

#Academy .course .tags .content {
    border-color: #a2bbea;
}

#Academy .course .tags .lecturer {
    color: #6b4650;
    border-color: #ec9717;
    letter-spacing: -0.02em;
}

#Academy .course .note {
    display: block;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.4;
}

@media (max-width: 640px) {
    #Academy .course .txt-box {
        position: static;
        display: block;
        width: auto;
    }
    #Academy .course .txt-box h4 {
        display: block;
        text-align: center;
        padding: 4px 20px;
    }
    #Academy .course .txt-box strong {
        font-size: 1.188rem;
    }
    #Academy .course .tags {
        margin: 15px 0;
    }
    #Academy .course .mod-img {
        position: static;
        margin-top: 15px;
        display: block;
        width: auto;
    }
}

/*----------------------------------------
  #Academy .search
----------------------------------------*/
#Academy .search h4 {
    text-align: center;
    margin-bottom: 25px;
    font-size: 1.75rem;
    line-height: 1.3;
}

#Academy .search .item {
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
    width: 182px;
    background: #3f3f3f;
}

#Academy .search h4 + .item {
    margin-left: 0;
}

#Academy .search .item strong {
    display: block;
    text-align: center;
    padding: 22px 5px 20px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    color: #fff;
    background: #1890fa;
}

#Academy .search .item strong:before {
    display: inline-block;
    margin-right: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8px;
    border-color: transparent transparent transparent #fff;
    content: '';
}

#Academy .search p {
    text-align: center;
    font-size: 14px;
    margin-top: 20px;
}

@media (max-width: 640px) {
    #Academy .search h4 {
        margin-bottom: 10px;
    }
    #Academy .search .item {
        margin-top: 2%;
        margin-left: 2%;
        width: 49%;
    }
    #Academy .search .item:nth-child(even) {
        margin-left: 0;
    }
    #Academy .search .item strong {
        padding: 14px 4px 12px;
    }
    #Academy .search .item strong:before {
        margin-right: 3px;
        border-width: 4px 0 4px 6px;
    }
}

@media (max-width: 480px) {
    #Academy .search h4 {
        font-size: 6vw;
    }
    #Academy .search .item strong {
        font-size: 3.6vw;
    }
}

/*========================================

  .academy-recommend

========================================*/
.academy-recommend {
    margin-top: 70px;
}

.academy-recommend.cr-inner {
    max-width: 1000px;
}

.academy-heading + .academy-recommend {
    margin-top: 50px;
}

.academy-recommend__heading {
    margin: 0;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    line-height: 1.5;
    text-align: left;
}

.academy-recommend .academy-heading {
    margin-top: 70px;
    text-align: center;
    font-size: 187.5%;
    font-weight: normal;
    line-height: 1.2;
    display: block;
    color: #2d2d2d;
}

.academy-recommend02 .academy-recommend02__item .button {
    padding: 2.3% 15px 2.3%;
    width: 100%;
    font-size: 87.5%;
    margin-top: 6%;
}

.academy-recommend02 .academy-recommend02__item .button span {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    line-height: 1.2;
    text-align: left;
}

.academy-recommend p.txt {
    text-align: center;
    margin-top: 15px;
    font-size: 100%;
    line-height: 1.875;
    letter-spacing: 0;
    color: #333;
}

.academy-recommend__heading span {
    font-size: 0.8em;
}

.academy-recommend__heading + .cr-text {
    margin-top: 20px;
}

.academy-recommend .cr-heading + .cr-text {
    margin-top: 25px;
}

/*----------------------------------------
  .report
----------------------------------------*/
.academy-recommend .report {
    text-align: center;
}

.academy-recommend .report img,
.academy-recommend .mod-img img {
    box-sizing: border-box;
    margin: 30px auto 0;
    max-width: 1000px;
    width: 100%;
}

@media (max-width: 640px) {
    .academy-recommend .report img {
        max-width: 760px;
        width: 100%;
    }
}

/*========================================

  #Maintenance

========================================*/
#Maintenance {
    padding-bottom: 20px;
    background: #fff;
}

#Maintenance .article-heading {
    background: #999;
}

#Maintenance section {
    font-size: 0;
    position: relative;
    margin: 60px auto 0;
    max-width: 950px;
    width: 94.0594059%;
}

@media (max-width: 640px) {
    #Maintenance {
        padding-bottom: 50px;
    }
    #Maintenance section {
        width: 90.625%;
    }
}

/*----------------------------------------
  #Maintenance .intro
----------------------------------------*/
#Maintenance .intro h4 {
    margin-bottom: 25px;
    font-size: 2.438rem;
    line-height: 1.23;
    color: #333;
}

#Maintenance .intro .txt-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 450px;
}

#Maintenance .intro .mod-img {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: 37px;
    width: 463px;
}

@media (max-width: 640px) {
    #Maintenance .intro {
        margin-top: 30px;
    }
    #Maintenance .intro h4 {
        margin-bottom: 15px;
    }
    #Maintenance .intro .txt-box {
        position: static;
        display: block;
        width: auto;
    }
    #Maintenance .intro .mod-img {
        position: static;
        display: block;
        margin-top: 15px;
        width: auto;
    }
}

@media (max-width: 480px) {
    #Maintenance .intro h4 {
        font-size: 8.0vw;
    }
}

/*----------------------------------------
  #Maintenance .sensor
----------------------------------------*/
#Maintenance .sensor h4 {
    margin-bottom: 15px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.6;
}

#Maintenance .sensor .note {
    display: block;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.5;
}

#Maintenance .sensor .txt-box {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: 435px;
    width: 515px;
}

#Maintenance .sensor .mod-img {
    position: relative;
    display: inline-block;
    vertical-align: top;
    left: -515px;
    width: 401px;
}

#Maintenance .sensor .mod-btn {
    margin-top: 20px;
    background-color: #1890fa;
    font-size: 16px;
    font-weight: 600;
}

@media (max-width: 640px) {
    #Maintenance .sensor .note {
        font-size: 12px;
    }
    #Maintenance .sensor .txt-box,
    #Maintenance .sensor .mod-img {
        position: static;
        display: block;
        width: auto;
    }
    #Maintenance .sensor .mod-img {
        margin-top: 15px;
    }
    #Maintenance .sensor .mod-btn {
        display: block;
    }
}

/*========================================

Add-alphainfo_Common_Start

========================================*/
/* alphainfo template stylesheet */
.tpl__alphainfo__header {
    background: #ffffff;
}

.tpl__alphainfo__header--inner {
    width: 93.75%;
    max-width: 1200px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    box-sizing: border-box;
    margin: 0 auto;
}

.tpl__alphainfo__header--logo {
    display: block;
    padding: 15px 0;
    width: 100px;
}

.tpl__alphainfo__header--txt {
	color: #fff;
    margin-left: auto;
	margin-top: -10px;
	margin-right: -10px;
	margin-bottom: 10px;
    line-height: 0;
	font-size: 13px;
    width: 10%;
	
}

@media (max-width: 959px) {
    .tpl__alphainfo__header--txt {
        width: 300px;
    }
}

@media (max-width: 639px) {
    .tpl__alphainfo__header--logo {
        width: 80px;
    }
    .tpl__alphainfo__header--txt {
		
	margin-top: -3px;
	margin-bottom: 10px;
	margin-right: -10px;
    width: 34%;
    }
}

.tpl__alphainfo__academy {
    max-width: 1200px;
    margin: 0 auto;
    background: #efefef;
    color: #000;
}

.tpl__alphainfo__academy--inner {
    padding: 50px 60px 80px 50px;
}

.tpl__alphainfo__academy--txt {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.67;
}

.tpl__alphainfo__academy--heading {
    background: #ccc;
    padding: 50px 20px 35px;
    text-align: center;
    color: #333;
    font-size: 28px;
    font-size: 1.75rem;
    font-family: "Yu Mincho", YuMincho, "游明朝", "HGS明朝", "HGP明朝", "HG明朝", serif;
    line-height: 1;
}

.tpl__alphainfo__academy--heading--logo {
    display: block;
    margin-top: 16px;
}

.tpl__alphainfo__academy--heading--logo img {
    display: block;
    margin: 0 auto;
}

.tpl__alphainfo__academy--intro--imgbox {
    margin-left: 46px;
    width: 46.1155%;
    max-width: 463px;
    float: right;
}

.tpl__alphainfo__academy--intro--spimgbox {
    display: none;
}

.tpl__alphainfo__academy--intro--heading {
    font-size: 30px;
    font-size: 1.875rem;
    line-height: 1.5;
    letter-spacing: .05em;
    margin-bottom: 30px;
    font-family: "Yu Mincho", YuMincho, "游明朝", "HGS明朝", "HGP明朝", "HG明朝", serif;
}

.tpl__alphainfo__academy--intro::after {
    content: '';
    display: block;
    clear: both;
}

.tpl__alphainfo__academy--course {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}

.tpl__alphainfo__academy--course--imgbox {
    flex: 0 0 39.8406;
    max-width: 400px;
}

.tpl__alphainfo__academy--course--txtbox {
    flex: 0 1 auto;
    margin-left: 60px;
}

.tpl__alphainfo__academy--course--boxttl {
    background: #ea5504;
    display: inline-block;
    padding: 6px 20px 5px;
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    letter-spacing: .025em;
    line-height: 1;
}

.tpl__alphainfo__academy--course--tags {
    padding: 0;
    display: flex;
    margin-top: 30px;
    list-style: none;
}

.tpl__alphainfo__academy--course--tags li {
    border: 1px solid;
    padding: 2px 5px 1px;
    line-height: 1.2;
    box-sizing: border-box;
    font-size: 14px;
    font-size: .875rem;
}

.tpl__alphainfo__academy--course--tags li:nth-of-type(n+2) {
    margin-left: 5px;
}

.tpl__alphainfo__academy--course--tags .free {
    border-color: #5887ab;
    color: #5887ab;
}

.tpl__alphainfo__academy--course--tags .beginner {
    border-color: #f9e575;
    background: #f9e575;
    color: #3a3519;
}

.tpl__alphainfo__academy--course--tags .use {
    border-color: #a2bbea;
    color: #000;
}

.tpl__alphainfo__academy--course--tags .teacher {
    border-color: #ec9717;
    color: #6B460E;
}

.tpl__alphainfo__academy--course--heading {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.5;
    letter-spacing: .075em;
    margin-bottom: 16px;
    margin-top: 26px;
}

.tpl__alphainfo__academy--course--spimgbox {
    display: none;
}

.tpl__alphainfo__academy--banner {
    margin-top: 80px;
    text-align: center;
}

.tpl__alphainfo__academy--banner--heading {
    font-size: 30px;
    font-size: 1.875rem;
    letter-spacing: .05em;
    font-family: "Yu Mincho", YuMincho, "游明朝", "HGS明朝", "HGP明朝", "HG明朝", serif;
}

.tpl__alphainfo__academy--banner--link {
    display: block;
    margin-top: 30px;
    transition: 0.2s;
}

.tpl__alphainfo__academy--banner--link:hover, .tpl__alphainfo__academy--banner--link:focus {
    opacity: .6;
}

.tpl__alphainfo__academy--banner--caution {
    margin-top: 16px;
}

@media (max-width: 959px) {
    .tpl__alphainfo__academy--inner {
        padding: 30px 20px 40px;
    }
    .tpl__alphainfo__academy--heading {
        padding: 40px 20px 25px;
    }
    .tpl__alphainfo__academy--heading--logo {
        margin-top: 10px;
        transform: scale(0.8);
    }
    .tpl__alphainfo__academy--intro--heading {
        font-size: 24px;
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
    .tpl__alphainfo__academy--intro--heading br {
        display: none;
    }
    .tpl__alphainfo__academy--intro--imgbox {
        margin-left: 20px;
    }
}

@media (max-width: 639px) {
    .tpl__alphainfo__academy--heading {
        padding: 30px 20px 20px;
    }
    .tpl__alphainfo__academy--heading--logo {
        transform: scale(0.6);
    }
    .tpl__alphainfo__academy--intro--heading {
        font-size: 24px;
        font-size: 1.5rem;
        margin-bottom: 15px;
    }
    .tpl__alphainfo__academy--course {
        margin-top: 40px;
    }
    .tpl__alphainfo__academy--course--imgbox {
        display: none;
    }
    .tpl__alphainfo__academy--course--spimgbox {
        display: block;
        margin-top: 20px;
    }
    .tpl__alphainfo__academy--course--spimgbox img {
        width: 100%;
    }
    .tpl__alphainfo__academy--course--txtbox {
        margin-left: 0;
    }
    .tpl__alphainfo__academy--course--tags {
        margin-top: 20px;
    }
    .tpl__alphainfo__academy--course--heading {
        margin-top: 20px;
    }
    .tpl__alphainfo__academy--banner {
        margin-top: 60px;
    }
    .tpl__alphainfo__academy--banner--link {
        margin-top: 20px;
    }
    .tpl__alphainfo__academy--banner--caution {
        text-align: left;
    }
}

@media (max-width: 479px) {
    .tpl__alphainfo__academy--heading {
        font-size: 22.4px;
        font-size: 1.4rem;
    }
    .tpl__alphainfo__academy--intro--heading {
        font-size: 24px;
        font-size: 1.5rem;
        margin-bottom: 15px;
    }
    .tpl__alphainfo__academy--intro--imgbox {
        display: none;
    }
    .tpl__alphainfo__academy--intro--spimgbox {
        display: block;
        margin-bottom: 20px;
    }
    .tpl__alphainfo__academy--course--tags li {
        font-size: 13px;
        font-size: 0.8125rem;
    }
    .tpl__alphainfo__academy--banner--heading {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.tpl__alphainfo-asidebox {
    color: #333333;
    padding: 70px 0 30px;
}

.tpl__alphainfo-asidebox img {
	width: 100%;
}

@media screen and (max-width: 639px) {
    .tpl__alphainfo-asidebox {
        padding: 50px 0 5px;
    }
}

.tpl__alphainfo-store + .tpl__alphainfo-store,
.tpl__alphainfo-store + .tpl__alphainfo-program, .tpl__alphainfo-program + .tpl__alphainfo-store,
.tpl__alphainfo-program + .tpl__alphainfo-program {
    margin-top: 60px;
}

.tpl__alphainfo-store--inner, .tpl__alphainfo-program--inner {
    width: 93.75% !important;
    max-width: 1200px !important;
    box-sizing: border-box !important;
    margin: 0 auto !important;
}

.tpl__alphainfo-store--heading, .tpl__alphainfo-program--heading {
    text-align: center;
    font-family: "Yu Mincho", YuMincho, "游明朝", "HGS明朝", "HGP明朝", "HG明朝", serif;
    font-size: 38px;
    font-size: 2.375rem;
    line-height: 1.34;
    font-weight: normal;
}

.tpl__alphainfo-store--txt, .tpl__alphainfo-program--txt {
    font-size: 1.125rem;
    line-height: 1.85;
}

@media screen and (max-width: 959px) {
    .tpl__alphainfo-store--heading, .tpl__alphainfo-program--heading {
        font-size: 30px;
        font-size: 1.875rem;
    }
}

@media screen and (max-width: 479px) {
    .tpl__alphainfo-store--heading, .tpl__alphainfo-program--heading {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.tpl__alphainfo-store--imgbox {
    margin: 30px 0 50px;
    display: flex;
}

.tpl__alphainfo-store--imgitem {
    flex: 0 0 50%;
}

.tpl__alphainfo-store--list {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    margin-top: 50px !important;
}

.tpl__alphainfo-store--item {
    flex: 0 0 19.167% !important;
    transition: opacity .25s !important;
}

.tpl__alphainfo-store--item:hover {
    opacity: .8;
}

.tpl__alphainfo-store--name {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.2;
    color: #fff;
    background: #5787e4;
    height: 64px;
}

.tpl__alphainfo-store--name::before {
    content: '';
    display: inline-block;
    position: relative;
    top: -0.1em;
    margin-right: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 5px;
    border-color: transparent transparent transparent #fff;
}

.tpl__alphainfo-store--store-sp {
    display: none;
}

.tpl__alphainfo-store--img {
    display: block;
}

@media screen and (max-width: 1259px) {
    .tpl__alphainfo-store--name {
        font-size: 1.2vw;
        height: 4.8vw;
    }
}

@media screen and (max-width: 639px) {
    .tpl__alphainfo-store--store-sp {
        display: block;
        margin-top: 30px;
    }
    .tpl__alphainfo-store--list {
        display: none !important;
    }
    .tpl__alphainfo-store--name {
        font-size: 16px;
        font-size: 1rem;
        height: 48px;
    }
    .tpl__alphainfo-store--imgbox {
        margin: 30px 0;
    }
    .tpl__alphainfo-store--item {
        display: block;
    }
}

@media screen and (max-width: 479px) {
    .tpl__alphainfo-store--name {
        font-size: 14px;
        font-size: 0.875rem;
        height: 40px;
    }
    .tpl__alphainfo-store--imgbox {
        margin: 20px 0;
    }
    .tpl__alphainfo-store--store-sp {
        display: block;
        margin-top: 20px;
    }
}

.tpl__alphainfo-program--box {
    clear: both;
    display: block;
    content: '';
    margin-top: 30px;
}

.tpl__alphainfo-program--img {
    float: right;
    margin: 0 0 0 40px;
    width: 38.584%;
    transition: opacity .2s !important;
}

.tpl__alphainfo-program--img:hover {
    opacity: .8;
}

.tpl__alphainfo-program--btn {
    display: inline-block;
    position: relative;
    box-sizing: border-box;
    margin-top: 20px;
    padding: 13px 30px 12px 30px;
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    line-height: 1.2;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background-color: #5687f5;
    transition: opacity .2s !important;
}

.tpl__alphainfo-program--btn::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 15px;
    margin-top: -3.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 4px;
    border-color: transparent transparent transparent #fff;
}

.tpl__alphainfo-program--btn:hover {
    color: #fff;
    opacity: .8;
}

@media screen and (max-width: 639px) {
    .tpl__alphainfo-program--img {
        display: block;
        float: none;
        margin: 0 0 30px;
        width: 100%;
    }
    .tpl__alphainfo-program--btn {
        font-size: 16px;
        font-size: 1rem;
    }
}

@media screen and (max-width: 479px) {
    .tpl__alphainfo-program--img {
        margin: 0 0 20px;
    }
    .tpl__alphainfo-program--box {
        margin-top: 20px;
    }
    .tpl__alphainfo-program--btn {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

/* End alphainfo template stylesheet */
/* survey template stylesheet */
.tpl__survey {
    background: #fff;
    color: #444;
}

.block__inner--l, .tpl__alphainfo__header--inner, .page__header--inner, .page__header--intro, .page__nav {
    max-width: 1400px;
}

.block__inner--l, .tpl__alphainfo__header--inner, .page__header--inner, .page__header--intro, .page__nav, .block__inner--m, .block__title--inner, .lens__title--inner, .block__inner--s, .block__inner--ss {
    margin: 0 auto;
    width: 93.75%;
}

.block__inner--l .block__inner--l, .tpl__alphainfo__header--inner .block__inner--l, .page__header--inner .block__inner--l, .page__header--intro .block__inner--l, .page__nav .block__inner--l, .block__inner--l .tpl__alphainfo__header--inner, .tpl__alphainfo__header--inner .tpl__alphainfo__header--inner, .page__header--inner .tpl__alphainfo__header--inner, .page__header--intro .tpl__alphainfo__header--inner, .page__nav .tpl__alphainfo__header--inner, .block__inner--l .page__header--inner, .tpl__alphainfo__header--inner .page__header--inner, .page__header--inner .page__header--inner, .page__header--intro .page__header--inner, .page__nav .page__header--inner, .block__inner--l .page__header--intro, .tpl__alphainfo__header--inner .page__header--intro, .page__header--inner .page__header--intro, .page__header--intro .page__header--intro, .page__nav .page__header--intro, .block__inner--l .page__nav, .tpl__alphainfo__header--inner .page__nav, .page__header--inner .page__nav, .page__header--intro .page__nav, .page__nav .page__nav,
.block__inner--l .block__inner--m,
.tpl__alphainfo__header--inner .block__inner--m,
.page__header--inner .block__inner--m,
.page__header--intro .block__inner--m,
.page__nav .block__inner--m,
.block__inner--l .block__title--inner,
.tpl__alphainfo__header--inner .block__title--inner,
.page__header--inner .block__title--inner,
.page__header--intro .block__title--inner,
.page__nav .block__title--inner,
.block__inner--l .lens__title--inner,
.tpl__alphainfo__header--inner .lens__title--inner,
.page__header--inner .lens__title--inner,
.page__header--intro .lens__title--inner,
.page__nav .lens__title--inner,
.block__inner--l .block__inner--s,
.tpl__alphainfo__header--inner .block__inner--s,
.page__header--inner .block__inner--s,
.page__header--intro .block__inner--s,
.page__nav .block__inner--s,
.block__inner--l .block__inner--ss,
.tpl__alphainfo__header--inner .block__inner--ss,
.page__header--inner .block__inner--ss,
.page__header--intro .block__inner--ss,
.page__nav .block__inner--ss, .block__inner--m .block__inner--l, .block__title--inner .block__inner--l, .lens__title--inner .block__inner--l, .block__inner--m .tpl__alphainfo__header--inner, .block__title--inner .tpl__alphainfo__header--inner, .lens__title--inner .tpl__alphainfo__header--inner, .block__inner--m .page__header--inner, .block__title--inner .page__header--inner, .lens__title--inner .page__header--inner, .block__inner--m .page__header--intro, .block__title--inner .page__header--intro, .lens__title--inner .page__header--intro, .block__inner--m .page__nav, .block__title--inner .page__nav, .lens__title--inner .page__nav,
.block__inner--m .block__inner--m,
.block__title--inner .block__inner--m,
.lens__title--inner .block__inner--m,
.block__inner--m .block__title--inner,
.block__title--inner .block__title--inner,
.lens__title--inner .block__title--inner,
.block__inner--m .lens__title--inner,
.block__title--inner .lens__title--inner,
.lens__title--inner .lens__title--inner,
.block__inner--m .block__inner--s,
.block__title--inner .block__inner--s,
.lens__title--inner .block__inner--s,
.block__inner--m .block__inner--ss,
.block__title--inner .block__inner--ss,
.lens__title--inner .block__inner--ss, .block__inner--s .block__inner--l, .block__inner--s .tpl__alphainfo__header--inner, .block__inner--s .page__header--inner, .block__inner--s .page__header--intro, .block__inner--s .page__nav,
.block__inner--s .block__inner--m,
.block__inner--s .block__title--inner,
.block__inner--s .lens__title--inner,
.block__inner--s .block__inner--s,
.block__inner--s .block__inner--ss, .block__inner--ss .block__inner--l, .block__inner--ss .tpl__alphainfo__header--inner, .block__inner--ss .page__header--inner, .block__inner--ss .page__header--intro, .block__inner--ss .page__nav,
.block__inner--ss .block__inner--m,
.block__inner--ss .block__title--inner,
.block__inner--ss .lens__title--inner,
.block__inner--ss .block__inner--s,
.block__inner--ss .block__inner--ss {
    width: 100%;
}

/*========================================

  #Plaza

========================================*/
#Plaza {
    padding-bottom: 90px;
}

#Plaza .heading,
#Academy .heading {
    padding: 16px 0 14px;
    background: #ea5505;
    margin-bottom: 80px;
}

#Plaza .heading__txt,
#Academy .heading__txt {
    position: relative;
    display: block;
    box-sizing: border-box;
    margin: 0 auto;
    padding-left: 32px;
    font-size: 175%;
    line-height: 1.2;
    color: #fff;
    max-width: 1200px;
    width: 94.0594059%;
}

#Plaza .heading__txt::before,
#Academy .heading__txt::before {
    content: '';
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 0;
    margin-top: -16px;
    width: 24px;
    height: 32px;
    background-image: url(../img/arrow_ttl.svg);
    background-repeat: no-repeat;
    background-size: 100% auto;
}

#Plaza .heading em {
    font-size: 193.8%;
}

#Plaza .sec {
    padding-top: 90px;
    position: relative;
    margin: 0 auto;
    max-width: 950px;
    width: 94.0594059%;
}

#Plaza h4 {
    margin-bottom: 25px;
    font-size: 30px;
    font-size: 1.875rem;
    line-height: 1.23;
    color: #333;
    text-align: center;
}

#Plaza .txt {
    margin-top: 25px;
    font-size: 112.5%;
    line-height: 1.5;
}

#Plaza .btn.orange {
    padding-right: 30px;
    padding-left: 30px;
}

@media screen and (max-width: 639px) {
    #Plaza .heading {
        padding: 12px 0 11px;
    }
    #Plaza .heading em {
        font-size: 156.3%;
    }
    #Plaza .sec {
        margin-top: 30px;
        padding-top: 30px;
        width: 90.625%;
    }
    #Plaza h4 {
        margin-bottom: 20px;
        font-size: 137.5%;
        line-height: 1.4;
    }
    #Plaza .txt {
        font-size: 100%;
        line-height: 1.6;
    }
    #Plaza .btn.orange {
        display: block;
        margin: 0 auto;
        width: 100%;
    }
}

@media screen and (max-width: 479px) {
    #Plaza .heading__txt,
    #Academy .heading__txt {
        font-size: 21px;
        font-size: 1.3125rem;
        padding-left: 40px;
    }
    #Academy .heading__txt img {
        width: 40%;
    }
}

/*----------------------------------------
  #Plaza .store
----------------------------------------*/
#Plaza .store .index {
    margin: 40px 0 0;
    font-size: 0;
}

#Plaza .store .item {
    display: inline-block;
    vertical-align: top;
    margin-left: 2%;
    width: 17.643%;
    text-align: right;
}

#Plaza .store .item:first-child {
    margin-left: 0;
}

#Plaza .store .item img {
    width: 100%;
    height: auto;
}

#Plaza .store .index span {
    display: block;
    margin-top: 5px;
    font-size: 16px;
}

#Plaza .store .index span a:before {
    position: relative;
    display: inline-block;
    top: -0.08em;
    margin-right: 5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 9px;
    border-color: transparent transparent transparent #000;
    content: '';
}

#Plaza .store .index span a:hover {
    text-decoration: underline;
}

#Plaza .store p.note {
    margin-bottom: 40px;
}

serif, .mainvisual__txtbox, .intro-frame__heading, .alphatxt, .alpha {
    font-family: "Yu Mincho", YuMincho, "游明朝", "HGS明朝", "HGP明朝", "HG明朝", serif;
}

@media screen and (max-width: 639px) {
    #Plaza .store .index {
        margin-top: 10px;
    }
    #Plaza .store .item {
        margin: 4% 0 0 3.5%;
        width: 31%;
    }
    #Plaza .store .item:nth-child(3n+1) {
        margin-left: 0;
    }
}

@media screen and (max-width: 479px) {
    #Plaza .store .item {
        margin: 4% 0 0 4% !important;
        width: 48%;
    }
    #Plaza .store .item:nth-child(2n+1) {
        margin-left: 0 !important;
    }
}

/*========================================

Add-alphainfo_Common_End

========================================*/

/*========================================

  #Ques

========================================*/
#Ques {
    padding: 60px 0 47px;
    background-color: #eaeaea;
}

#Ques h3 {
    text-align: center;
}

#Ques p {
    margin: 30px 0 35px;
    font-size: 19px;
    line-height: 1.6;
    text-align: center;
}

#Ques .btn {
    display: block;
    padding: 18px 0;
    background: #6b0000;
    font-size: 175%;
    font-weight: 400;
    line-height: 1.0;
    color: #fff;
    text-decoration: none;
}

@media (max-width: 640px) {
    #Ques {
        padding: 40px 0 40px;
    }
    #Ques h3 img {
        width: 100%;
        height: auto;
    }
    #Ques p {
        margin: 20px 0;
        font-size: 14px;
    }
    #Ques p br {
        display: none;
    }
    #Ques .btn-box {
        overflow: hidden;
    }
    #Ques .btn-box img {
        margin-left: -35%;
        width: 170%;
    }
    #Ques .btn {
        font-size: 100%;
        font-weight: 700;
    }
}

/*========================================

  footer

========================================*/
footer {
    padding: 38px 0;
    background: #000000;
}

footer .inner {
    margin: 0 auto;
    max-width: 1200px;
    width: 94.0594059%;
}

footer small {
    display: inline-block;
    font-size: 12px;
    line-height: 1.0;
    color: #b0b0b0;
}

article .inner, .wrapper footer .inner {
    max-width: 950px;
}

@media (max-width: 480px) {
    footer {
        text-align: center;
    }
}

/*========================================

  .anybox__outer

========================================*/
.anybox__outer {
    position: fixed;
    z-index: 2010;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    transition-timing-function: ease;
    transition-property: opacity;
    text-align: center;
}

.anybox__outer:before {
    display: inline-block;
    height: 100%;
    content: '';
    vertical-align: middle;
}

/*========================================

  .anybox__wrap

========================================*/
.anybox__wrap {
    position: relative;
    z-index: 2020;
    display: inline-block;
    box-sizing: border-box;
    max-width: 100%;
    margin: 0 auto;
    text-align: left;
    vertical-align: middle;
}

/*========================================

  .anybox__content

========================================*/
.anybox__content {
    position: relative;
}

/*========================================

  .anybox__loading

========================================*/
.anybox__loading {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 24px;
    height: 24px;
    margin: auto;
    background-image: url("../img/anybox/loading@2x.gif");
    background-repeat: no-repeat;
    background-size: 100% auto;
}

/*========================================

  .anybox-backdrop

========================================*/
.anybox__backdrop {
    position: fixed;
    z-index: 2000;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    transition-timing-function: ease;
    transition-property: opacity;
    opacity: inherit;
}

/*========================================

  .anybox-image

========================================*/
.anybox__imageWrap {
    position: relative;
    -webkit-animation: anybox--direction_enter .4s;
    animation: anybox--direction_enter .4s;
}

.anybox--direction_next .anybox__imageWrap {
    -webkit-animation: anybox--direction_next .4s;
    animation: anybox--direction_next .4s;
}

.anybox--direction_prev .anybox__imageWrap {
    -webkit-animation: anybox--direction_prev .4s;
    animation: anybox--direction_prev .4s;
}

.anybox__imageInner {
    line-height: 0;
    position: relative;
    box-sizing: border-box;
    max-width: 100%;
    margin: 0 auto;
}

.anybox__imageInner:after {
    position: absolute;
    z-index: -1;
    top: 20px;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    content: '';
    box-shadow: 0 0.2em 1em rgba(0, 0, 0, 0.6);
}

.anybox__imageItem {
    display: block;
    box-sizing: border-box;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 20px 0 0;
}

.anybox__imageCaption {
    font-size: 13px;
    line-height: 1.2;
    display: block;
    overflow: hidden;
    max-width: 100%;
    margin-top: 10px;
    text-align: right;
    color: #fff;
}

@media (max-width: 640px) {
    .anybox__imageCaption {
        line-height: 1.5;
        text-align: center;
    }
}

.anybox__imageBlank {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*========================================

  .anybox-close

========================================*/
.anybox__close {
    position: absolute;
    z-index: 2030;
    top: -20px;
    right: -10px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    background-image: url("../img/anybox/icn_close.svg");
    background-repeat: no-repeat;
    background-position: center center;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.anybox--state_loading .anybox__close {
    display: none;
}

.anybox__close::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.anybox__close:hover {
    opacity: .5;
}

.anybox__close:active {
    opacity: .8;
}

/*========================================

  .anybox-arrows

========================================*/
.anybox__arrows {
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
}

.anybox--state_loading .anybox__arrows {
    display: none;
}

.anybox__arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    overflow: hidden;
    width: 5.2vw;
    max-width: 50px;
    height: 5.2vw;
    max-height: 50px;
    margin: auto;
    cursor: pointer;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.anybox__arrow::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.anybox__arrow:hover {
    opacity: .5;
}

.anybox__arrow:active {
    opacity: .8;
}

.anybox__arrowPrev {
    left: 0;
    background-image: url("../img/anybox/icn_prev.svg");
}

.anybox__arrowNext {
    right: 0;
    background-image: url("../img/anybox/icn_next.svg");
}

/*========================================

  animation

========================================*/
/*----------------------------------------
  anybox--direction_enter
----------------------------------------*/
@-webkit-keyframes anybox--direction_enter {
    from {
        -webkit-transform: translate3d(0, -2em, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes anybox--direction_enter {
    from {
        -webkit-transform: translate3d(0, -2em, 0);
        transform: translate3d(0, -2em, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

/*----------------------------------------
  anybox--direction_next
----------------------------------------*/
@-webkit-keyframes anybox--direction_next {
    from {
        -webkit-transform: translate3d(3em, 0, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes anybox--direction_next {
    from {
        -webkit-transform: translate3d(3em, 0, 0);
        transform: translate3d(3em, 0, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

/*----------------------------------------
  anybox--direction_prev
----------------------------------------*/
@-webkit-keyframes anybox--direction_prev {
    from {
        -webkit-transform: translate3d(-3em, 0, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes anybox--direction_prev {
    from {
        -webkit-transform: translate3d(-3em, 0, 0);
        transform: translate3d(-3em, 0, 0);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

/*========================================

  .imgBox

========================================*/
.imgBox {
    line-height: 0;
    margin: 50px auto 0;
}

.imgBox + .imgBox {
    margin-top: 90px;
}

.imgBox img {
    width: 100%;
    height: auto;
}

.imgBox__caption {
    font-size: .875rem;
    line-height: 1.4;
    margin-top: 15px;
    text-align: center;
    color: #fff;
}

.imgBox__zoom {
    line-height: 0;
    position: relative;
    display: block;
    margin: 0 auto;
}

.imgBox__zoom:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    transition: background-color .2s;
}

.imgBox__zoom:hover:before {
    background-color: rgba(255, 255, 255, 0.3);
}

.imgBox__zoom:after {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 18px;
    height: 18px;
    content: '';
    background-image: url("../img/zoom.svg");
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

@media (max-width: 640px) {
    .imgBox {
        margin-top: 40px;
    }
    .imgBox + .imgBox {
        margin-top: 50px;
    }
}

/*========================================

  .anybox-image PROFILE

========================================*/
.anybox__imageWrap.anybox__profile {
    top: 20px;
    max-width: 1030px;
    background-color: #000;
    box-shadow: 0 0 10px #000;
}

.anybox__imageWrap.anybox__profile .anybox__imageInner {
    display: inline-block;
    width: 47.57%;
}

@media (max-width: 640px) {
    .anybox__imageWrap.anybox__profile .anybox__imageInner {
        width: 100%;
    }
}

.anybox__imageWrap.anybox__profile .anybox__imageInner__right {
    display: inline-block;
    width: 52.14%;
    padding-top: 5.44%;
    padding-bottom: 5.44%;
    vertical-align: top;
}

@media (max-width: 640px) {
    .anybox__imageWrap.anybox__profile .anybox__imageInner__right {
        width: 100%;
        padding: 0 9.12% 5.44%;
    }
}

.anybox__imageWrap.anybox__profile .anybox__imageItem {
    width: 80%;
    padding-top: 11.43%;
    padding-bottom: 11.43%;
}

@media (max-width: 640px) {
    .anybox__imageWrap.anybox__profile .anybox__imageItem {
        padding-top: 6.12%;
        padding-bottom: 6.12%;
    }
}

.anybox__imageWrap.anybox__profile .anybox__imageWorkName {
    font-family: 'ヒラギノ角ゴ ProN W3', 'HiraKakuProN-W3', 'Hiragino Kaku Gothic Pro', sans-serif;
    font-size: 1.125rem;
    font-weight: lighter;
    line-height: 1.5;
}

.anybox__imageWrap.anybox__profile .anybox__imageWorker {
    font-family: 'ヒラギノ角ゴ ProN W3', 'HiraKakuProN-W3', 'Hiragino Kaku Gothic Pro', sans-serif;
    font-size: 2.25rem;
    font-weight: lighter;
    line-height: 1.5;
    margin-top: 1.49%;
}

.anybox__imageWrap.anybox__profile .anybox__imageCaption {
    font-size: 1.125rem;
    line-height: 2;
    margin-top: 5.59%;
    padding-right: 8.38%;
    text-align: left;
    letter-spacing: .04em;
}

@media (max-width: 640px) {
    .anybox__imageWrap.anybox__profile .anybox__imageCaption {
        line-height: 1.5;
        padding-right: 0;
    }
}

h2::selection,
h3::selection,
h4::selection,
h5::selection,
li::selection,
p::selection,
span::selection,
strong::selection {
    background: #ccc;
}

p strong::selection {
    color: #c04309;
}

/* 07.09追加 */
.fade {
    transition: opacity .2s !important;
    display: inline-block;
}

.fade:hover {
    opacity: .7;
}

.green,
.orange,
.indigo {
    background-color: #ececec;
}

.onepoint-wrap {
    background: #ececec;
    margin-top: 60px;
}

.onepoint-title {
    display: inline-block;
    padding: 12px 18px;
    background: #008806;
    color: #fff;
    font-size: 1.5rem;
}

.onepoint-inner {
    padding: 36px 70px;
}

.onepoint-inner p {
    font-size: 1.125rem;
}

.onepoint-inner-title {
    font-size: 2.25rem;
    line-height: 1.38;
    margin-bottom: 30px;
}

.onepoint-images {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}

.onepoint-images.first {
    margin-top: 40px;
}

.onepoint-box-title {
    font-size: 1.125rem;
    text-align: center;
    margin-bottom: 20px;
}

.onepoint-box p {
    font-weight: bold;
    margin-bottom: 8px;
}

.onepoint-box .caption {
    font-size: 0.875rem;
    text-align: right;
    display: block;
    margin-top: 8px;
}

@media screen and (max-width: 639px) {
    .onepoint-inner {
        padding: 20px;
    }
    .onepoint-images {
        display: block;
    }
    .onepoint-images + .onepoint-images {
        margin-top: 40px;
        padding-top: 40px;
        border-top: 1px dotted #008806;
    }
    .onepoint-images img {
        width: 100%;
    }
    .onepoint-box:nth-of-type(2) {
        margin-top: 40px;
    }
    .onepoint-title {
        font-size: 1.25rem;
    }
    .onepoint-inner-title {
        font-size: 1.5rem;
    }
    .onepoint-box-title {
        margin-bottom: 10px;
    }
    .onepoint-inner p {
        font-size: 1rem;
    }
}

.use-item-box {
    margin-top: 50px;
}

.use-item-box-title {
    padding: 12px 16px;
    background: #008806;
    color: #fff;
    display: inline-block;
    font-size: 1.125rem;
    line-height: 1;
}

.use-item-list {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
}

.use-item:nth-of-type(odd) {
    flex: 0 0 381px;
    padding-top: 16px;
    padding-right: 24px;
}

.use-item:nth-of-type(even) {
    flex: 0 0 381px;
    padding-top: 16px;
    padding-left: 24px;
}

@supports (-ms-ime-align: auto) {
    .use-item:nth-of-type(odd) {
        flex: 1 1 40%;
        padding-right: 24px;
    }
    .use-item:nth-of-type(even) {
        flex: 1 1 40%;
        padding-left: 24px;
    }
}

.use-item-link {
    display: flex;
}

.use-item-link .img-box {
    flex: 0 0 auto;
}

.use-item-link .text-box {
    margin-left: 30px;
    flex: 0 0 auto;
    line-height: 1.5;
}

.use-item-title {
    font-size: 1rem;
}

.use-item-text {
    font-size: 1.3125rem;
}

.use-item-arrow {
    font-size: 0.6875rem;
    margin-top: 10px;
    font-weight: bold;
}

.use-item-arrow::before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5.5px 0 5.5px 8px;
    border-color: transparent transparent transparent #000;
    margin-right: 5px;
}

.use-item-caption {
    font-size: 0.875rem;
}

@media screen and (max-width: 639px) {
    .use-item-list {
        display: block;
    }
    .use-item {
        padding: 0 !important;
        width: 100%;
    }
    .use-item:nth-of-type(n+2) {
        margin-top: 30px;
    }
    .use-item-link .text-box {
        flex: 0 1 auto;
    }
    .use-item-link .img-box {
        flex: 0 0 30%;
    }
    .use-item-link .img-box img {
        width: 100%;
    }
}

@media screen and (max-width: 479px) {
    .use-item-link {
        display: block;
    }
    .use-item-link .text-box {
        margin: 20px 0 0;
    }
    .use-item-link .img-box img {
        width: auto;
    }
}

.green .onepoint-inner-title {
    color: #008806;
}

.green .onepoint-box-title {
    color: #00ab08;
    font-weight: bold;
}

.indigo .use-item-box {
    background: #ececec;
}

.indigo .use-item-box-title {
    background: #000d8f;
}

.indigo .use-item-list {
    padding: 28px 68px;
    margin-top: 0;
}

@media screen and (max-width: 639px) {
    .indigo .use-item-list {
        padding: 30px 20px 20px;
    }
}

.title-caption {
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 10px;
}

.deepgreen h2 {
    margin-bottom: 0;
}

.deepgreen .manual-section {
    width: 950px;
}

.deepgreen .mod-txt {
    margin-top: 50px;
}

.deepgreen .mod-txt + .mod-txt {
    margin-top: 40px;
}

@media screen and (max-width: 639px) {
    .deepgreen .manual-section {
        width: 90.625%;
        margin-left: auto;
        margin-right: auto;
    }
}

.recommend {
    margin-top: 60px;
}

.recommend h4 {
    background: #eaeaea;
    padding: 14px 0;
    color: #555555;
}

.recommend > p {
    font-size: 1.125rem;
    text-align: center;
}

.recommend-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
}

.recommend-list::after {
    content: none;
}

.recommend-item {
    flex: 1 1 40%;
}

.recommend-item:nth-of-type(even) {
    margin-left: 40px;
}

.recommend-item-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.recommend-item-inner .text-box {
    flex: 0 1 auto;
}

.recommend-item-inner .img-box {
    flex: 0 0 auto;
}

.recommend-tag {
    color: #fff;
    font-size: 0.8125rem;
    width: 130px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    font-weight: bold;
}

.recommend-tag:not(.aps-c) {
    background: #e2900f;
}

.recommend-tag.aps-c {
    background: #666;
}

.recommend-text {
    margin-top: 20px;
    font-size: 1.3125rem;
    line-height: 1.1;
}

.recommend-title {
    margin-top: 8px;
    line-height: 1;
}

.recommend-btn-wrap {
    margin-top: 20px;
}

.recommend-btn-wrap .mod-btn {
    width: 214px;
}

.recommend-btn-wrap .mod-btn__detail {
    margin-left: 20px;
}

.recommend.last .recommend-item-inner {
    height: 152px;
}

.recommend.last .recommend-item-inner .text-box {
    height: 152px;
}

.recommend.last .recommend-text {
    margin-top: 40px;
}

@media screen and (max-width: 639px) {
    .recommend .mod-btn {
        width: 49%;
    }
    .recommend .mod-btn__detail {
        margin-left: 0;
    }
    .recommend-list {
        display: block;
    }
    .recommend-list:nth-of-type(n+2) {
        margin-top: 50px;
    }
    .recommend-item:nth-of-type(even) {
        margin: 40px 0 0;
    }
    .recommend-item-inner .img-box {
        flex: 0 0 48%;
    }
    .recommend-item-inner .img-box img {
        width: 100%;
    }
    .rens-01 {
        max-width: 189px;
    }
    .rens-02 {
        max-width: 163px;
    }
    .rens-03 {
        max-width: 220px;
    }
    .rens-04 {
        max-width: 144px;
    }
}

#Gmaster .imgBox__zoom:after {
    background-image: url(../img/zoom-white.svg);
}

#Gmaster .mod-btn__detail {
    margin-left: 20px;
}

.gmaster-list {
    width: 950px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.gmaster-list::after {
    content: none;
}

.gmaster-item {
    flex: 0 0 456px;
}

.gmaster-item:nth-of-type(n+3) {
    margin-top: 20px;
}

.gmaster-outro {
    font-size: 1.125rem;
    text-align: center;
}

.gmaster-outro a {
    color: #55acee;
}

@media screen and (max-width: 639px) {
    .gmaster-list {
        display: block;
        width: 100%;
    }
    .gmaster-item {
        width: 100%;
    }
    .gmaster-item:nth-of-type(n+2) {
        margin-top: 20px;
    }
    .gmaster-outro {
        margin-top: 30px;
        text-align: left;
    }
    #Gmaster .mod-btn__detail {
        margin-left: 0;
    }
    body {
        overflow-x: hidden;
    }
}
