@charset "utf-8";
/* CSS Document */

/*  common
-------------------------------------------- */
html {
    font-size: 62.5%;
}

ul {
    padding-left: 0;
    list-style: none;
}

ol, ul, dl {
    margin-top: 0;
    margin-bottom: 0;
}

.d-sp-block {
    display: none !important;
}

.d-pc-block {
    display: block !important;
}

.d-sp-inline-block {
    display: none !important;
}

.d-pc-inline-block {
    display: inline-block !important;
}

@media (max-width: 959px) {
    body, p, li, li p {
        font-size: 1.4rem;
    }

    h1, .h1 {
        font-size: 2.4rem;
    }

    h2, .h2 {
        font-size: 1.8rem;
    }

    h3, .h3 {
        font-size: 1.6rem;
    }

    h4, .h4 {
        font-size: 1.4rem;
    }

    h5, .h5 {
        font-size: 1.2rem;
    }

    h6, .h6 {
        font-size: 1rem;
    }

    .d-sp-block {
        display: block !important;
    }

    .d-pc-block {
        display: none !important;
    }

    .d-sp-inline-block {
        display: inline-block !important;
    }

    .d-pc-inline-block {
        display: none !important;
    }
}

.flex-row,
.flex-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.flex-row {
    flex-direction: row;
}

.flex-column {
    flex-direction: column;
}

.flex-row li {
    margin: 6px;
}

.flex-column li {
    margin: 10px;
}

.btn-light,
.badge-info {
    color: #fff;
}

.text-danger {
    color: #bf0000 !important;
}

.btn-link {
    padding: 0;
}

a.text-info {
    font-weight: 700;
}

/* fixed contents
---------------------------------- */
.wrapper {
    position: relative;
}

.container {
    max-width: 1200px;
}

header.glovalHeader {
    z-index: 100;
    background: #fff;
    box-shadow: 0 7px 7px rgba(0, 0, 0, 0.2);
}

header.glovalHeader.is-open,
#pre-logon header.glovalHeader,
body.single-page header.glovalHeader {
    box-shadow: none;
}

#pre-logon header.glovalHeader.header-default {
    box-shadow: 0 7px 7px rgba(0, 0, 0, 0.2);
}

div.contents-wrapper {
    z-index: 0;
}

div.sub-contents-wrapper {
    z-index: 2;
}

div.ext-contents-wrapper {
    z-index: 2;
}

div.main-contents-wrapper {
    z-index: 1;
}

div.main-contents-header {
    position: relative;
}

div.main-contents-header h1 + h2,
div.main-contents-header h1 + ul {
    margin-top: 20px;
}

@media (min-width: 1200px) {
    #pre-logon div.content-MV {
        height: 479px;
    }
}

@media (min-width: 960px) {
    header.glovalHeader {
        width: 100%;
        height: 56px;
        border-bottom: solid 1px #002896;
    }

    body.single-page header.glovalHeader {
        height: 36px;
    }

    div.contents-wrapper {
        display: flex;
        align-items: stretch;
        border-right: 1px solid #e6ecf0;
        border-left: 1px solid #e6ecf0;
    }

    div.sub-contents-wrapper {
        margin-right: -270px;
        width: 270px;
        position: relative;
        background-color: #fff;
        border-right: 1px solid #e6ecf0;
    }

    div.ext-contents-wrapper {
        margin-left: calc(100% - 300px);
        width: 300px;
        min-height: 500px;
        position: relative;
    }

    div.main-contents-wrapper {
        float: left;
        width: 100%;
        position: relative;
    }

    div.main-contents,
    div.main-contents-header,
    div.content-MV {
        margin-left: 270px;
        width: auto;
    }

    div.main-contents-header {
        background-color: #fff;
    }

    div.ext-contents-inner {
        width: 300px;
    }

    div.ext-contents-inner {
        padding: 28px;
    }

    #pre-logon header.glovalHeader .headerInner {
        height: 56px;
    }

    #pre-logon header.glovalHeader .headerInner-wrapper {
        width: 100%;
        height: 38px;
        border-top: solid 1px #002896;
    }

    #pre-logon header.glovalHeader .headerInner-sab {
        width: 100%;
        height: 38px;
    }

    #pre-logon header.glovalHeader {
        height: 95px;
        border-bottom: 1px solid #e6ecf0;
    }

    #pre-logon header.glovalHeader .header-sab-nav {
        width: 100%;
        margin: 0;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    #pre-logon header.glovalHeader .header-sab-nav a {
        display: block;
        padding: 8px 0;
        height: 38px;
        font-weight: 700;
    }

    #pre-logon div.main-contents-wrapper {
        float: inherit;
        width: 100%;
        position: relative;
    }

    #pre-logon div.main-contents-header,
    #pre-logon ul.breadcrumbs,
    #pre-logon div.content-MV {
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }

    #pre-logon div.main-contents {
        float: left;
        width: calc(100% - 300px);;
        position: relative;
        margin-left: 0;
        margin-right: 300px;
    }
}

@media (max-width: 959px) {
    header.glovalHeader {
        width: 100%;
        height: 49px;
        border-bottom: solid 1px #002896;
    }

    body.single-page header.glovalHeader {
        height: 36px;
        border-bottom: solid 1px #002896;
    }

    header .container {
        padding-right: 0;
        padding-left: 0;
    }

    div.ext-contents,
    div.sub-contents {
        top: 49px !important;
        z-index: 40;
        background: #fff;
    }

    div.contents-wrapper.container {
        padding-left: 0;
        padding-right: 0;
    }

    div.headerInner-wrapper {
        display: none;
    }
}

#body-container.container {
    padding-left: 0;
    padding-right: 0;
}

div.contents-wrapper,
div.main-contents-wrapper {
/ zoom: 1;
}

div.contents-wrapper:after {
    content: '';
    display: block;
    clear: both;
}

#pre-logon div.main-contents-wrapper:after {
    content: '';
    display: block;
    clear: both;
}

/* single-page
---------------------------------- */
@media (min-width: 960px) {
    body.single-page {
    }

    body.single-page div.contents-wrapper,
    body.single-page div.main-contents,
    body.single-page div.main-contents-header,
    body.single-page div.main-contents-wrapper,
    body.single-page div.main-contents-wrapper .main-contents-ttl [class*="ttl-"],
    body.single-page div.main-contents .main-contents-inner {
        margin-left: auto;
        margin-right: auto;
    }

    body.single-page div#body-container {
        width: 100%;
        max-width: 870px;
    }

    body.single-page div.contents-wrapper {
        margin: 0;
        width: 100%;
        max-width: 100%;
        position: relative;
        background-color: #fff;
    }

    body.single-page div.main-contents-wrapper {
        float: none;
    }

    body.single-page div.main-contents-wrapper .main-contents-header,
    body.single-page div.main-contents-wrapper .main-contents-ttl [class*="ttl-"],
    body.single-page div.main-contents-wrapper .main-contents .main-contents-inner {
        width: 545px;
        max-width: 545px;
        position: relative;
    }

    body.single-page div.main-contents-wrapper .main-contents-ttl,
    body.single-page div.main-contents-wrapper .main-contents-w100 {
        width: 100%;
        max-width: 100%;
    }
}

body.single-page .main-contents-header {
    background-color: #fff;
    width: 100%;
    max-width: 100%;
}

body.single-page div.contents-bg-wrapper {
    background-color: #f0f5f8;
}

body.single-page div.contents-bg-wrapper .main-contents-header {
    background-color: #fff;
    width: 100%;
    max-width: 100%;
}

body.single-page div.contents-bg-wrapper .main-contents-header:first-child {
    background-color: #f0f5f8;
}

html {
    height: 100%;
}

body.single-page,
body.single-page #body-container,
body.single-page .wrapper,
body.single-page .main-contents-wrapper,
body.single-page .contents-wrapper {
    min-height: calc(100vh - 36px);
}

/*  ToolList
-------------------------------------------- */
.toolList {
}

.toolList > ul > li,
.toolList > ul > li a {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    color: #000;
}

.toolList > ul > li.border-btm {
    border-bottom: 1px solid #9c9c9c;
}

.toolList > ul > li a:hover {
    color: #2767d4;
}

.toolList > ul > li a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 5px 24px;
    transition: background .3s;
}

.toolList > ul > li:first-child,
.toolList > ul > li.border-btm + li {
    padding-top: 14px;
}

.toolList > ul > li.border-btm {
    padding-bottom: 14px;
}

.toolList > ul > li a .rex-icon {
    display: inline-block;
    margin-right: 22px;
    font-size: 3.4rem;
}

.toolList > ul > li.tl-policies a .icon-policies {
    position: relative;
    width: 32px;
    height: 32px;
}

.toolList > ul > li.tl-policies a .icon-policies:after {
    position: absolute;
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    background: url(/assets/img/common/icon-policies-blk.svg) no-repeat 0 0;
    background-size: 32px 32px;
}

.toolList > ul > li.tl-policies a:hover .icon-policies:after {
    background-image: url(/assets/img/common/icon-policies.svg);
}

.home-page .toolList > ul > li.tl-home a,
.survey-page .toolList > ul > li.tl-survey a,
.point-page .toolList > ul > li.tl-point a,
.shop-page .toolList > ul > li.tl-shop a,
.rank-page .toolList > ul > li.tl-rank a,
.account-page .toolList > ul > li.tl-account a,
.refer-page .toolList > ul > li.tl-refer a,
.profile-page .toolList > ul > li.tl-profile a,
.news-page .toolList > ul > li.tl-news a,
.help-page .toolList > ul > li.tl-help a,
.policies-page .toolList > ul > li.tl-policies a,
.logout-page .toolList > ul > li.tl-logout a {
    color: #fff;
    background-color: #2767d4;
}

.home-page .toolList > ul > li.tl-home a,
.survey-page .toolList > ul > li.tl-survey a,
.point-page .toolList > ul > li.tl-point a,
.shop-page .toolList > ul > li.tl-shop a,
.rank-page .toolList > ul > li.tl-rank a,
.account-page .toolList > ul > li.tl-account a,
.refer-page .toolList > ul > li.tl-refer a,
#profile-TOP-page .toolList > ul > li.tl-profile a,
#news-item-page .toolList > ul > li.tl-news a
.help-page .toolList > ul > li.tl-help a,
.policies-page .toolList > ul > li.tl-policies a,
.logout-page .toolList > ul > li.tl-logout a {
    pointer-events: none;
}

.survey-page .nav-fixedFooter > li.nav-f-survey a,
.point-page .nav-fixedFooter > li.nav-f-point a,
.profile-page .nav-fixedFooter > li.nav-f-profile a {
    color: #2767d4;
    background-color: #e0e6f7;
}

.new-user-page .nav-newuser a,
.about-us-page .nav-aboutus a,
.rewards-page .nav-rewards a,
.surveys-page .nav-surveys a,
.security-page .nav-security a {
    color: #002896;
    pointer-events: none;
}

.policies-page .toolList > ul > li.tl-policies a .icon-policies:after {
    filter: invert(100%);
}

@media (min-width: 960px) {
    #nav-toolList {
        display: block;
    }

    #nav-toolList-toggler {
        display: none;
    }
}

@media (max-width: 959px) {
    /*
  #nav-toolList-toggler[aria-expanded*="false"] {position: absolute;}
  #nav-toolList-toggler[aria-expanded*="true"] {position: fixed;z-index: 1000; background: #fff;}
  */
    #nav-toolList-toggler[aria-expanded*="false"]
    #nav-toolList-toggler[aria-expanded*="false"] + header.glovalHeader {
        position: static;
    }

    #nav-toolList-toggler[aria-expanded*="true"],
    #nav-toolList-toggler[aria-expanded*="true"] + header.glovalHeader {
        position: fixed;
        background: #fff;
    }

    #nav-toolList-toggler[aria-expanded*="true"] {
        z-index: 9999;
    }

    #nav-toolList-toggler[aria-expanded*="true"] + header.glovalHeader {
        z-index: 9998;
    }

    #nav-toolList-toggler[aria-expanded*="true"] + header.glovalHeader + #body-container.container .main-contents-wrapper,
    #nav-toolList-toggler[aria-expanded*="true"] + header.glovalHeader + #body-container.container + .glovalFooter,
    #nav-toolList-toggler[aria-expanded*="true"] + header.glovalHeader + #body-container.container + .footer {
        display: none;
    }

    #nav-toolList {
        position: relative;
        z-index: 99;
        background: #fff;
    }

    #nav-toolList-toggler {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 101;
        width: 54px;
        height: 48px;
        margin: 0;
        padding: 0;
        background-image: none;
        border: none;
        border-right: 1px solid #eee;
        border-radius: 0;
    }

    #nav-toolList-toggler .icon-bar {
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -2px;
        margin-left: -14px;
        width: 24px;
        height: 3px;
        border-radius: 1px;
        background-color: #333;
    }

    #nav-toolList-toggler .icon-bar:first-child {
        display: none;
    }

    #nav-toolList-toggler .icon-bar:nth-child(2),
    #nav-toolList-toggler .icon-bar:nth-child(3) {
        position: absolute;
        width: 29px;
        transition: .3s;
    }

    #nav-toolList-toggler .icon-bar:nth-child(2) {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }

    #nav-toolList-toggler .icon-bar:nth-child(3) {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
    }

    /* collapsed */
    #nav-toolList-toggler.collapsed .icon-bar {
        margin-top: 0;
        display: block;
        width: 24px;
        margin-left: -12px;
    }

    #nav-toolList-toggler.collapsed .icon-bar:nth-child(1) {
        top: 14px;
    }

    #nav-toolList-toggler.collapsed .icon-bar:nth-child(2) {
        top: 22px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
    }

    #nav-toolList-toggler.collapsed .icon-bar:nth-child(3) {
        top: 30px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
    }

    .toolList > ul > li:first-child,
    .toolList > ul > li.border-btm + li {
        padding-top: 10px;
    }

    .toolList > ul > li.border-btm {
        padding-bottom: 10px;
    }

    .toolList > ul > li a .rex-icon {
        display: inline-block;
        margin-right: 16px;
        font-size: 3.0rem;
    }

    .toolList > ul > li.tl-policies a .rex-icon.survey-l:after {
        padding-top: 1px;
    }
}

@media (min-width: 960px) {
    div.ext-contents-inner .ext-btn .btn {
        box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
    }

    div.ext-contents-inner .prelogonList01 {
        display: none;
    }

    div.ext-contents-inner .navbar-collapse {
        margin-top: 18px;
        box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
        border-radius: 3px;
        border: 1px solid #e9e9e9;
    }

    div.ext-contents-inner .toolList > ul > li {
        border-top: 1px solid #9c9c9c;
    }

    div.ext-contents-inner .toolList > ul > li:first-child {
        padding-top: 0;
        border-top: none;
    }

    div.ext-contents-inner .toolList > ul > li a {
        padding-top: 18px;
        padding-bottom: 18px;
    }
}

@media (max-width: 959px) {
    div.ext-contents-inner .toolList > ul > li a {
        line-height: 30px;
    }

    div.ext-contents-inner .prelogonList02 {
        border-top: 1px solid #9c9c9c;
        border-bottom: 1px solid #9c9c9c;
    }

    div.ext-contents-inner .prelogonList02 > ul > li:last-child {
        padding-bottom: 10px;
    }
}

/*  Header
-------------------------------------------- */
.headerInner {
    position: relative;
}

.rc-h-help-nav,
.headerRight {
    display: flex;
    justify-content: flex-end;
}

.headerRight {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 40;
}

/*  header-CurrentRank */
.header-CurrentRank {
    display: flex;
}

.header-CurrentRank .text,
.header-notifications .text,
.header-language .text {
    display: block;
    font-size: 1.1rem;
    text-align: center;
    font-weight: 700;
}

.header-CurrentRank .number,
.header-CurrentRank .rex-icon,
.rc-h-help-nav .rex-icon {
    display: block;
    font-size: 2.8rem;
    line-height: 2.8rem;
    text-align: center;
}

.header-CurrentRank .icon-Days .text,
.header-CurrentRank .icon-Days .rex-icon,
.rc-h-help-nav .text,
.rc-h-help-nav .rex-icon {
    color: #333;
}

.header-CurrentRank .number {
    padding-top: 20px;
    font-weight: 700;
    line-height: 22px;
}

.header-CurrentRank .rex-icon {
    padding-top: 6px;
}

.header-language .rex-icon {
    padding-top: 6px;
}

.header-language .rex-icon.world-l:before {
    display: inline-block;;
    content: "";
    width: 28px;
    height: 26px;
    margin: 1px auto 1px;
    background: url("/assets/img/common/language-world-l.svg") no-repeat 0 0;
}

.header-notifications .rex-icon {
    padding-top: 6px;
}

.header-notifications {
    position: relative;
}

.header-notifications .count-notifications {
    position: absolute;
    top: 3px;
    left: 50%;
    margin-left: 0;
    padding: 3px 5px 2px 5px;
    border: solid 2px #ffffff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background: #bf0000;
    color: #ffffff !important;
    font-weight: bold;
    font-size: 10px;
    text-align: center;
    line-height: 1.1em;
    z-index: 1;
}

/*  header-Point */
.header-Point,
.header-Point dl,
.header-Point dl dt {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-Point {
    width: 100%;
}

@media (min-width: 960px) {
    .headerInner {
        display: flex;
    }

    .headerRight {
        width: 160px;
    }

    /*  header-CurrentRank */
    .header-CurrentRank li {
        width: 70px;
        height: 56px;
    }

    .rc-h-help-nav li.header-notifications {
        width: 100px;
        height: 56px;
    }

    .rc-h-help-nav li.header-language {
        width: 80px;
        height: 56px;
    }

    /* header-Point */
    .header-Point {
        height: 56px;
        padding-left: 340px;
        padding-right: 340px;
    }

    .header-Point dl dt {
        font-size: 2rem;
    }

    .header-Point dl dt .rex-icon {
        margin-top: 0;
        margin-right: 6px;
        font-size: 2.8rem;
    }

    .header-Point dl dd {
        font-size: 2.4rem;
    }

    .header-Point dl dd strong {
        font-size: 2.6rem;
    }

    .header-Point .E-PointShop {
        margin-right: 30px;
    }

    .header-Point .E-PointShop .btn {
        position: relative;
        padding-left: 4.75rem;
    }

    .header-Point .E-PointShop .btn .rex-icon {
        position: absolute;
        left: 0.75rem;
        font-size: 3rem;
    }

    /* rc-h-help-nav */
    .rc-h-help-nav {
        justify-content: space-between;
    }
}

@media (max-width: 959px) {
    /*
  .headerInner {padding-top: 50px;}
    */
    .headerRight {
        justify-content: flex-end;
    }

    .rc-h-help-nav {
    }

    .rc-h-help-nav li.header-notifications > a,
    .rc-h-help-nav li.header-language > a {
        display: block;
        width: 50px;
        height: 48px;
    }

    .header-CurrentRank .text,
    .header-language .text,
    .header-notifications .text {
        font-size: 1rem;
        transform: scale(0.8);
    }

    .rc-h-help-nav li.header-notifications .rex-icon {
        padding-top: 14px;
    }

    .header-CurrentRank li a {
        display: block;
        padding-left: 3px;
        padding-right: 3px;
    }

    .header-CurrentRank .number,
    .header-CurrentRank .rex-icon {
        font-size: 2rem;
        line-height: 2rem;
        padding-top: 10px;
    }

    .rc-h-help-nav .rex-icon,
    .header-language .rex-icon,
    .header-notifications .rex-icon {
        font-size: 2.4rem;
        line-height: 2rem;
    }

    .header-CurrentRank .number {
        padding-top: 0px;
        line-height: 1.6rem;
    }

    .header-CurrentRank .icon-Rank,
    .header-CurrentRank .icon-Days {
        width: 48px;
    }

    .header-CurrentRank .icon-Rank {
        padding-left: 6px;
    }

    .header-CurrentRank .icon-Days {
        padding-left: 16px;
    }

    .header-CurrentRank .icon-Rank .rex-icon {
        padding-top: 6px;
    }

    .header-CurrentRank .icon-Days .number {
        padding-top: 10px;
    }

    .header-notifications .count-notifications {
        top: 4px;
    }

    .header-language .rex-icon.world-l {
        padding-top: 8px;
    }

    .header-language .rex-icon.world-l:before {
        width: 23px;
        height: 20px;
        margin-bottom: 0;
    }

    .glovalHeader-signin .header-language .rex-icon.world-l {
        padding-top: 11px;
    }

    .glovalHeader-signin .header-language .rex-icon.world-l:before {
        width: 24px;
        height: 22px;
        margin-bottom: 0;
    }

    /* header-Point
  .header-Point,
  .header-Point dl { justify-content: space-between;}*/
    .header-Point {
        position: relative;
        z-index: 30;
        padding: 4px 92px 0;
    }

    .header-Point dl {
        width: 100%;
    }

    .header-Point dl dt {
        font-size: 1.4rem;
    }

    .header-Point dl dt .rex-icon {
        margin-top: -2px;
        margin-right: 6px;
        font-size: 2.4rem;
    }

    .header-Point dl dd {
        font-size: 1.4rem;
    }

    .header-Point dl dd strong {
        font-size: 2.4rem;
    }

    .header-Point dl dd small {
        display: none;
    }

    .header-Point .E-PointShop .btn {
        font-size: 1.2rem;
    }
}

@media (max-width: 375px) {
    .header-Point dl dt .rex-icon {
        margin-left: 12px;
        margin-right: 2px;
    }
}

/* header-logo */
.header-logo {
    line-height: 0;
}

.glovalHeader-single .header-logo {
    top: 5px;
}

.glovalHeader-single .header-logo a {
    padding: 0;
}

.glovalHeader-single .header-logo,
.glovalHeader-single .header-logo img {
    width: 124px;
    height: 21px;
}

@media (min-width: 960px) {
    .header-logo {
        position: absolute;
        top: 13px;
        left: 15px;
        width: 192px;
    }

    .glovalHeader-signin .header-logo {
        left: 30px;
    }

    .header-logo .sp-R-logo {
        display: none;
    }
}

@media (max-width: 959px) {
    .header-logo .pc-R-logo {
        display: none;
    }

    .header-logo,
    .header-logo a,
    .header-logo .sp-R-logo {
        display: block;
    }

    .header-logo {
        width: 68px;
        height: 38px;
    }

    .header-logo {
        position: absolute;
        top: 0;
        left: 60px;
        z-index: 40;
    }

    .header-logo a {
        padding: 9px 6px;
    }
}

@media screen and (min-width: 960px) and (max-width: 1219px) {
    .glovalHeader .headerInner {
        padding-left: 0;
        padding-right: 0;
    }

    .header-CurrentRank li {
        width: 60px;
    }

    .header-Point {
        padding-left: 168px;
        padding-right: 160px;
    }

    .header-Point .E-PointShop {
        margin-right: 0;
    }
}

.glovalHeader-single .header-logo {
    top: 7px;
    left: 50%;
    transform: translateX(-50%);
}

/*  cntNotification
-------------------------------------------- */
.cntNotification-container {
    position: relative;
    z-index: 101;
    width: 100%;
    margin: 0 auto;
}

#cntNotification {
    position: absolute;
    z-index: 1060;
    top: -56px;
    right: 0;
    width: 100%;
    max-width: 440px;
    padding-top: 56px;
}

#cntNotification-wrapper {
    position: relative;
    padding: 14px 14px 24px 24px;
    font-family: Noto Sans Japanese, Arial, sans-serif;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    font-size: 1.4rem;
    word-wrap: break-word;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12);
}

#cntNotification-wrapper:after,
#cntNotification-wrapper:before {
    display: block;
    content: " ";
    position: absolute;
    right: 39px;
    width: 20px;
    height: 20px;
    transform: rotate(-45deg);
    background: #ffffff;
}

#cntNotification-wrapper:after {
    z-index: 1060;
    top: -10px;
    border: 1px solid #dcdcdc;
}

#cntNotification-wrapper:before {
    z-index: 1070;
    top: -9px;
    transform: rotate(-45deg);
}

#cntNotification-inner {
    margin: 0;
    padding: 0;
    width: 100%;
    overflow-y: scroll;
}

#cntNotification-wrapper .close,
#cntNotification-wrapper .btn-close {
    width: 20px !important;
    height: 20px !important;
    margin: 0;
}

#cntNotification-wrapper .close {
    font-size: 4.0rem !important;
    line-height: 20px;
    font-weight: 100;
    color: #333;
}

#cntNotification-wrapper .btn-close {
    position: absolute;
    top: 10px;
    right: 10px;
}

#cntNotification-wrapper h3 {
    padding-right: 10px;
    padding-bottom: 10px;
    font-weight: 700;
    text-align: center;
}

dl.dl-News {
    margin-top: 0px;
    margin-right: 10px;
    border-bottom: 1px solid #c9c9c9;
}

dl.dl-News:last-child {
    border-bottom: none;
}

dl.dl-News dt {
    margin: 10px 16px 4px;
    font-size: 1.4rem;
}

dl.dl-News dt .date {
    display: block;
    color: #606060;
    font-size: 1.4rem;
    font-weight: normal;
}

dl.dl-News dd {
    padding: 0 16px 14px 16px;
    font-size: 1.4rem;
}

@media (min-width: 960px) {
    #cntNotification {
        height: 536px;
    }

    #cntNotification-inner {
        height: 450px;
    }
}

@media (max-width: 1219px) {
    #cntNotification {
        right: 3px;
    }

    #cntNotification-wrapper:after,
    #cntNotification-wrapper:before {
        right: 34px;
    }
}

@media (max-width: 959px) {
    #cntNotification {
        right: 2px;
        bottom: 0;
        height: 100vh;
    }

    #cntNotification-wrapper {
        height: calc(100vh - 160px);
    }

    #cntNotification-inner {
        height: calc(100% - 30px);
    }

    #cntNotification {
        padding-top: 50px;
        width: calc(100% - 4px);
    }

    #cntNotification-wrapper {
        padding: 14px 6px 14px 14px;
    }

    #cntNotification-wrapper:after,
    #cntNotification-wrapper:before {
        right: 16px;
        width: 10px;
        height: 10px;
    }

    #cntNotification-wrapper:after {
        top: -6px;
    }

    #cntNotification-wrapper:before {
        top: -5px;
    }

    dl.dl-News {
        margin-right: 10px;
    }

    dl.dl-News dt {
        margin: 8px 8px 4px;
    }

    dl.dl-News dd {
        padding: 0 8px 8px 8px;
    }
}

/*  #cntGlobal
-------------------------------------------- */
#cntGlobal {
    position: absolute;
    z-index: 1060;
    top: 0;
    right: 92px;
    width: 180px;
    padding-top: 56px;
}

.header-Point + .headerRight #cntGlobal {
    right: 52px;
}

#cntGlobal-wrapper {
    position: relative;
    padding: 0;
    font-family: Noto Sans Japanese, Arial, sans-serif;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    font-size: 1.4rem;
    word-wrap: break-word;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12);
}

#cntGlobal-wrapper ul li:first-child:after,
#cntGlobal-wrapper ul li:first-child:before {
    display: block;
    content: " ";
    position: absolute;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-left: -7px;
    transform: rotate(-45deg);
    background: #ffffff;
}

#cntGlobal-wrapper ul li:first-child:after {
    z-index: 1060;
    top: -10px;
    border: 1px solid #dcdcdc;
}

#cntGlobal-wrapper ul li:first-child:before {
    z-index: 1070;
    top: -9px;
    transform: rotate(-45deg);
}

#cntGlobal-inner {
    margin: 0;
    padding: 0;
    height: 450px;
    width: 100%;
    overflow-y: scroll;
}

#cntGlobal-wrapper ul {
    position: relative;
    z-index: 1080;
}

#cntGlobal-wrapper ul li {
    border-bottom: 1px solid #dcdcdc;
}

#cntGlobal-wrapper ul li a {
    display: block;
    padding: 12px 18px;
    font-size: 1.6rem;
    font-weight: 700;
}

#cntGlobal-wrapper ul li:first-child a {
    padding-top: 12px;
}

#cntGlobal-wrapper ul li:last-child {
    border-bottom: none;
}

#cntGlobal-wrapper ul li.active a {
    color: #999;
    pointer-events: none;
}

/*#cntGlobal-wrapper ul li.active:first-child:before {background-color: #e9ecef;}*/
@media (max-width: 1219px) {
    #cntGlobal {
        right: 72px;
    }
}

@media (max-width: 959px) {
    #cntGlobal {
        width: 150px;
        padding-top: 44px;
        right: 35px;
        margin-left: -7px;
    }

    .header-Point + .headerRight #cntGlobal {
        right: 3px;
    }

    #cntGlobal-wrapper {
        padding: 0;
    }

    #cntGlobal-wrapper ul li:first-child:after,
    #cntGlobal-wrapper ul li:first-child:before {
        width: 10px;
        height: 10px;
        margin-left: -3px;
    }

    #cntGlobal-wrapper ul li:first-child:after {
        top: -6px;
    }

    #cntGlobal-wrapper ul li:first-child:before {
        top: -5px;
    }

    #cntGlobal-wrapper ul li a {
        display: block;
        width: 100%;
        padding: 8px 10px;
        font-size: 1.4rem;
    }
}

/*  page-top
-------------------------------------------- */
#page-top {
    display: none;
}

.link-back-to-top {
    text-align: right;
}

.link-back-to-top a {
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    vertical-align: middle;
}

.link-back-to-top a:before,
.link-back-to-top a:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.link-back-to-top a:before {
    width: 12px;
    height: 12px;
    background: #6d7379;
}

.link-back-to-top a:after {
    left: 3px;
    bottom: 3px;
    box-sizing: border-box;
    width: 3px;
    height: 3px;
    border: 3px solid transparent;
    border-bottom: 3px solid #fff;
}

/*  Footer
-------------------------------------------- */
.footer {
    margin-top: 56px;
}

@media (min-width: 960px) {
    .footer, .nav-fixedFooter {
        display: none;
    }

    .footer {
        margin-top: 0;
    }
}

ul.nav-fixedFooter {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    width: 100%;
    height: 56px;
    margin: 0;
    padding: 0;
    padding-bottom: env(safe-area-inset-bottom);
    background-color: #f5f5f5;
    z-index: 30;
    overflow: hidden;
    box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1);
}

ul.nav-fixedFooter li {
    float: left;
    width: 33.33333%;
    width: calc(100% / 3);
    background-color: #f5f5f5;
    list-style-type: none;
    text-align: center;
    font-size: 26px;
}

ul.nav-fixedFooter li a {
    display: block;
    height: 56px;
    color: #333;
    padding-top: 10px;
    padding-bottom: 5px;
    line-height: 10px;
    border-left: 1px solid #c9c9c9;
    border-top: 1px solid #c9c9c9;
}

ul.nav-fixedFooter li:first-child a {
    border-left: none;
}

ul.nav-fixedFooter .text {
    display: block;
    font-size: 1rem;
    font-weight: 700;
}

/**/
.ft-sns-container .sns-list a img {
    width: 22px;
    height: 22px;
    margin: 0 6px;
}

.ft-sns-container .sns-list a:hover img {
    filter: brightness(80%);
}

.ft-sns-container.d-pc-block a img {
    margin-left: 0;
}

.ft-sns-container.d-sp-block {
    padding: 10px 15px 0 15px;
    background-color: #f5f5f5;
}

.ft-sns-container.d-sp-block .sns-list {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    flex-direction: row;
    border-top: 1px solid #e9e9e9;
    border-bottom: 1px solid #c9c9c9;
}

.ft-sns-container.d-sp-block .sns-list li {
    line-height: 0 !important;
}

.glovalFooter #ft-link-container {
    padding-top: 40px;
    padding-bottom: 20px;
    background-color: #f5f5f5;
}

.glovalFooter #ft-link-container .footerInner {
    display: flex;
    flex-direction: row;
    flex-flow: wrap;
    justify-content: space-between;
}

.glovalFooter #ft-link-container h3 {
    margin-right: 30px;
    margin-bottom: 6px;
    font-size: 1.6rem;
    white-space: nowrap;
}

.glovalFooter #ft-link-container li {
    margin-right: 30px;
    line-height: 2;
}

.glovalFooter #ft-link-container li a {
    color: #898f9c;
    font-size: 1.6rem;
    white-space: nowrap;
}

.glovalFooter #ft-link-container li a:hover {
    color: #333;
}

.glovalFooter #ft-link-container .ft-about-container .ft-about-inner {
    display: flex;
    flex-direction: row;
    flex-flow: wrap;
}

.glovalFooter .copyright {
    margin-top: 20px;
    color: #898f9c;
    font-size: 1.4rem;
}

.glovalFooter #ft-content-rakuten {
    padding-top: 20px;
    padding-bottom: 40px;
}

.glovalFooter #ft-content-rakuten .content-links,
.glovalFooter #ft-content-rakuten .content-links ul {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.glovalFooter #ft-content-rakuten li {
    margin-left: 30px;
}

.glovalFooter #ft-content-rakuten li a {
    color: #898f9c;
    font-size: 1.6rem;
    white-space: nowrap;
}

.glovalFooter #ft-content-rakuten li a:hover {
    color: #333;
}

@media (max-width: 959px) {
    .glovalFooter #ft-link-container {
        padding-top: 10px;
        padding-bottom: 0;
    }

    .glovalFooter #ft-content-rakuten .footerInner {
        display: flex;
        flex-direction: row;
    }

    .glovalFooter #ft-link-container h3,
    .glovalFooter #ft-link-container li {
        font-size: 1.3rem;
        margin-bottom: 0;
        margin-right: 10px;
    }

    .ft-sns-container.d-sp-block .sns-list,
    .glovalFooter #ft-link-container .footerInner {
        max-width: 420px;
        margin-left: auto;
        margin-right: auto;
    }

    .glovalFooter #ft-link-container .footerInner {
        align-items: flex-start;
    }

    .glovalFooter #ft-content-rakuten .ft-link-division li {
        font-size: 1.4rem;
    }

    .glovalFooter #ft-link-container li a {
        font-size: 1.3rem;
    }

    .glovalFooter #ft-link-container .ft-download-container {
        order: 2;
    }

    .glovalFooter #ft-link-container .ft-about-container {
        order: 1;
    }

    .glovalFooter #ft-link-container .ft-corporate-container {
        order: 3;
    }

    .glovalFooter #ft-link-container .ft-download-container h3,
    .glovalFooter #ft-link-container .ft-corporate-container h3 {
        margin-right: 0;
    }

    .glovalFooter #ft-link-container .ft-download-container li,
    .glovalFooter #ft-link-container .ft-corporate-container li {
        margin-right: 0 !important;
    }

    .glovalFooter #ft-link-container .ft-corporate-container .ft-download-container {
        margin-bottom: 40px;
    }

    .glovalFooter #ft-link-container .sns-list li {
        margin-right: 0;
    }

    .glovalFooter #ft-link-container .ft-about-container .ft-about-inner {
        display: flex;
        flex-direction: column;
    }

    .ft-sns-container.d-sp-block .sns-list li:first-child {
        margin-left: 10px;
    }

    .ft-corporate-container > ul li {
        white-space: nowrap;
    }

    .nav-newuser,
    .nav-aboutus,
    .nav-rewards,
    .nav-surveys,
    .nav-security,
    .nav-help,
    .nav-policies,
    .nav-browsers {
    }

    .glovalFooter .copyright {
        margin-top: 10px;
        font-size: 1.1rem;
    }

    .glovalFooter #ft-content-rakuten {
        max-width: 420px;
        padding-top: 10px;
        padding-bottom: 20px;
        margin-left: auto;
        margin-right: auto;
    }

    .glovalFooter #ft-content-rakuten .content-links {
        width: 100%;
        flex-direction: column;
    }

    .glovalFooter #ft-content-rakuten .content-links ul {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        order: 1;
    }

    .glovalFooter #ft-content-rakuten li {
        margin-left: 10px;
    }

    .glovalFooter #ft-content-rakuten li:first-child {
        margin-left: 0;
    }

    .glovalFooter #ft-content-rakuten .fcb-links a,
    .glovalFooter #ft-content-rakuten li a {
        color: #898f9c;
        font-size: 1.4rem;
    }

    .glovalFooter #ft-content-rakuten .content-links .fcb-links {
        margin-top: 10px;
        width: 100%;
        order: 2;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }

    .glovalFooter #ft-content-rakuten .content-links .fcb-links img {
        width: 170px;
        height: 40px;
        margin-right: 20px;
    }
}

@media (max-width: 425px) {
    .ft-sns-container.d-sp-block .sns-list li:first-child {
        margin-left: 0;
    }
}

@media (max-width: 374px) {
    .glovalFooter #ft-content-rakuten .ft-link-division li {
        font-size: 1.2rem;
    }

    .glovalFooter #ft-link-container li a {
        font-size: 1.2rem;
    }

    .glovalFooter #ft-link-container h3 {
        font-size: 1.4rem;
    }

    .glovalFooter #ft-content-rakuten .fcb-links a,
    .glovalFooter #ft-content-rakuten li a {
        font-size: 1.2rem;
    }
}

/*  typography
-------------------------------------------- */
.ttl-h1-center {
    font-size: 3.2rem;
    text-align: center !important;
}

h1.ttl-h1-center {
    margin-top: 3rem;
    font-size: 3.8rem;
}

.ttl-h2-center,
.ttl-h2-left {
    font-size: 2.4rem;
}

.ttl-h3-center,
.ttl-h3-left {
    font-size: 2.0rem;
}

.ttl-h2-left,
.ttl-h3-left {
    text-align: left !important;
}

.ttl-h2-center,
.ttl-h3-center {
    text-align: center !important;
}

.ttl-sab {
    margin-top: 40px;
}

.ttl-sab-s {
    margin-top: 20px;
}

.icon-ttl-right {
    margin-left: -15px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.text-error {
    text-align: center;
}

.text-error + .text-error {
    margin-bottom: 30px;
}

.main-contents-header .text-primary {
    color: #002896 !important;
}

@media (max-width: 959px) {
    .ttl-h1-center {
        font-size: 2.8rem;
    }

    h1.ttl-h1-center {
        margin-top: 0;
        font-size: 3rem;
    }

    .ttl-h2-center,
    .ttl-h2-left {
        font-size: 2.0rem;
    }

    .ttl-h2-left {
        text-align: left !important;
    }

    .ttl-h3-center,
    .ttl-h3-left {
        font-size: 1.6rem;
    }

    .ttl-h3-left {
        text-align: left !important;
    }

    .ttl-sab,
    .ttl-sab-s {
        margin-top: 20px;
        font-size: 1.6rem;
        text-align: center !important;
    }

    .ttl-sab.text-left,
    .ttl-sab-s.text-left {
        text-align: left !important;
    }

    .ttl-sab.text-right,
    .ttl-sab-s.text-right {
        text-align: right !important;
    }

    .ttl-sab-s {
        margin-top: 10px;
        font-size: 1.4rem;
    }

    .icon-ttl-right {
        margin-left: 0;
    }

    .icon-ttl-right .ttl-h2-left {
        margin-top: 5px;
    }
}

.icon-text {
    position: relative;
    line-height: 1.7rem;
}

.icon-text .rex-icon {
    position: absolute;
    top: 0px;
    font-size: 1.7rem;
    line-height: 1.7rem;
}

.icon-text small {
    display: inline-block;
    padding-left: 2rem;
    font-size: 1.3rem;
    line-height: 1.7rem;
}

@media (max-width: 959px) {
    .icon-text .rex-icon {
        position: absolute;
        top: 0px;
    }

    .icon-text small {
        font-size: 1.2rem;
    }
}

.fs-10 {
    font-size: 1.0rem;
}

.fs-11 {
    font-size: 1.1rem;
}

.fs-12 {
    font-size: 1.2rem;
}

.fs-13 {
    font-size: 1.3rem;
}

.fs-14 {
    font-size: 1.4rem;
}

.fs-15 {
    font-size: 1.5rem;
}

.fs-16 {
    font-size: 1.6rem;
}

.fs-17 {
    font-size: 1.7rem;
}

.fs-18 {
    font-size: 1.8rem;
}

.fs-19 {
    font-size: 1.9rem;
}

.fs-20 {
    font-size: 2.0rem;
}

.fs-21 {
    font-size: 2.1rem;
}

.fs-22 {
    font-size: 2.2rem;
}

.fs-23 {
    font-size: 2.3rem;
}

.fs-24 {
    font-size: 2.4rem;
}

.fs-25 {
    font-size: 2.5rem;
}

.fs-26 {
    font-size: 2.6rem;
}

.fs-27 {
    font-size: 2.7rem;
}

.fs-28 {
    font-size: 2.8rem;
}

.fs-29 {
    font-size: 2.9rem;
}

.fs-30 {
    font-size: 3.0rem;
}

.fs-31 {
    font-size: 3.1rem;
}

.fs-32 {
    font-size: 3.2rem;
}

.border-top {
    padding-top: 3rem;
    margin-top: 3rem;
    border-top-color: #f6f6f6 !important;
}

.border-left {
    border-left-width: 3px !important;
}

/*  width
-------------------------------------------- */
.w-150 {
    min-width: 150px !important;
}

.w-200 {
    min-width: 200px !important;
}

.w-250 {
    min-width: 250px !important;
}

.w-300 {
    min-width: 300px !important;
}

@media (max-width: 375px) {
    .w-300 {
        min-width: 100% !important;
    }
}

/* form
-------------------------------------------- */
.form-group:not(:first-child) {
    margin-top: 20px;
}

.custom-checkbox-right {
    padding-left: 10px;
    padding-right: 3rem;
}

.custom-checkbox-right .custom-control-label {
    width: 100%;
}

.custom-checkbox-right .custom-control-label:before,
.custom-checkbox-right .custom-control-label:after {
    top: 50%;
    transform: translateY(-50%);
    left: inherit;
    right: -3rem;
}

.custom-control-label::before {
    border-width: 2px;
}

.custom-disabled {
    cursor: text;
}

.custom-disabled .custom-control-label {
    pointer-events: none;
    cursor: text;
}

.personal-contents .sec-main {
    border-radius: 6px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.personal-contents-wide .sec-main {
    border-radius: 0;
    box-shadow: none;
}

.personalBox-switchbtn {
    margin: auto;
    width: 48px;
}

.personalBox-switchbtn input[type="checkbox"] {
    display: none;
}

.personalBox-switchbtn label {
    display: block;
    box-sizing: border-box;
    margin: 0;
    text-align: left;
    border: 3px solid #dcdcdc;
    border-radius: 3px;
    line-height: 1;
    height: 24px;
}

.personalBox-switchbtn .switchbtnBox {
    display: inline-block;
    height: 18px;
    width: 50%;
    background: #dcdcdc;
    transition: .3s;
    border-radius: 0 2px 2px 0;
}

.personalBox-switchbtn input[type="checkbox"]:checked + label {
    border: 3px solid #2bbeec;
}

.personalBox-switchbtn input[type="checkbox"]:checked + label .switchbtnBox {
    transform: translateX(100%);
    background: #2bbeec;
    border-radius: 2px 0 0 2px;
}

.custom-switchbtn.custom-checkbox-right {
    position: relative;
    padding-right: 58px;
}

.custom-switchbtn.custom-checkbox-right .personalBox-switchbtn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: inherit;
    right: 0;
}

.invalid-feedback {
    position: relative;
    padding-left: 18px
}

.invalid-feedback:after {
    display: inline-block;
    content: "\F1BF";
    position: absolute;
    top: 3px;
    left: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font: normal 1em rex-icon;
}

@media (max-width: 959px) {
    .custom-control-label:before,
    .custom-control-label:after {
        top: 0;
    }

    .form-group:not(:first-child) {
        margin-top: 15px;
    }

    .personal-contents .sec-main-body {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.form-select {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: calc(1.5em + .75rem + 6px);
    border-radius: 5px;
    background: #fff;
    text-align: center;
}

.form-select:before {
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 10px;
    width: 0;
    height: 0;
    padding: 0;
    content: '';
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #dbdbdb;
    pointer-events: none;
}

.form-select select {
    width: 100%;
    padding-right: 30px;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
}

.form-select select:-ms-expand {
    display: none;
}

.form-select select.form-control:focus {
    outline: 0 !important;
    outline: none !important;
    box-shadow: none !important;
}

.was-validated .form-select .form-control:invalid,
.form-select .form-control.is-invalid {
    background-position: center right calc(.2em + 2.0rem);
}

/* btn
-------------------------------------------- */
.btn-success {
    color: #fff;
}

.btn-warning, .btn-warning:hover, .btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
    color: #fff;
}

button:focus {
    outline: none !important;
}

.btn-google-signin,
.btn-facebook-signin {
    margin-bottom: 20px;
    text-align: center;
}

.btn-google-signin a {
    display: inline-block;
}

.btn-google-signin a:hover {
    opacity: 0.8;
}

.form-group.btn-btm {
    margin-top: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.form-group.btn-btm .btn {
    min-width: 230px;
    margin-left: 10px;
    margin-right: 10px;
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
}

.form-group.btn-2set .btn {
    margin-top: 0;
    margin-bottom: 0;
    min-width: 140px;
}

.form-group.btn-2set + .btn-btm {
    margin-top: 15px;
}

.btn-text {
    margin-top: 10px;
    text-align: center;
}

.btn-text-left {
    margin-top: 10px;
    text-align: left;
}

.btn-icon .btn {
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
}

.btn-icon .rex-icon {
    margin-right: 6px;
    transform: translateY(-2px);
    font-size: 2.4rem;
}

.btn-PointShop {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
}

.btn-PointShop .btn {
    box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.2);
}

.btn-UpdateProfile {
    margin: 0 auto;
    text-align: center;
}

.btn-UpdateProfile a {
    position: relative;
    padding: 6px 30px 6px 50px;
}

.btn-UpdateProfile a .rex-icon {
    position: absolute;
    top: 5px;
    left: 20px;
    font-size: 2.2rem;
}

.form-group-btn {
    margin: 20px auto;
    width: 345px;
    max-width: 345px;
    height: 60px;
    border: 1px solid #c9c9c9;
    border-radius: 6px;
    background-color: #eee;
}

.form-group-btn.btn-disabled {
    border: 1px solid #eee;
    background-color: #eee;
}

.form-group-btn.text-disabled {
}

.form-group-btn.btn-disabled .custom-control-label:before {
    border: 1px solid #c9c9c9;
}

.form-group .text-disabled .custom-control-label:before {
    border: 1px solid #c9c9c9;
}

.form-group-btn .form-group {
    position: relative;
    margin-bottom: 0;
    height: 100%;
    width: 100%;
}

.form-group-btn .custom-control {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100%;
}

.form-group-btn .custom-control .custom-control-label:before,
.form-group-btn .custom-control .custom-control-label:after {
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
}

.form-group-btn .custom-control .custom-control-label {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    padding-left: 50px;
    padding-right: 20px;
    font-size: 1.4rem;
    cursor: pointer;
}

.form-group-btn.btn-disabled .custom-control .custom-control-label {
    cursor: text;
}

/*.form-group + h3.mt-5 {margin-top: 50px!important;}*/
.custom-control + textarea.form-control {
    margin-top: 20px;
    margin-bottom: 20px;
}

.custom-control-label.flex-label {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.custom-control-label-right {
    position: absolute;
    right: 0;
    z-index: 2;
}

.custom-control-label-right .btn {
    font-size: 1.4rem;
}

.btn-lg.fs-26 {
    padding-left: 6rem;
    padding-right: 6rem;
}

@media (max-width: 959px) {
    .btn-lg.fs-26 {
        font-size: 2.0rem !important;
        padding-left: 3rem;
        padding-right: 3rem;
    }

    .form-group.btn-btm .btn {
        min-width: 148px;
    }

    .form-group-btn {
        width: 100%;
        max-width: 100%;
    }

    .form-group.btn-2set .btn {
        min-width: 140px;
        margin: 0;
    }

    .form-group.btn-2set .btn + .btn {
        margin-left: 20px;
    }

    .form-group.btn-2set + .btn-btm {
        margin-top: 15px;
    }

    .form-group.btn-2set + .btn-btm .btn {
        width: 300px !important;
        min-width: 300px !important;
    }

    .custom-control + textarea.form-control {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .btn-PointShop .btn {
        line-height: 16px;
    }

    .btn-PointShop {
        right: 12px;
    }

    .btn-icon .rex-icon {
        font-size: 2.8rem;
        transform: translateY(0);
    }

    .btn-icon > a {
        font-size: 1.4rem;
        padding: 0.375rem 2rem;
    }
}

/* toggle-password*/
.toggle-password {
    position: relative;
}

.toggle-password .field {
    padding-right: 80px;
}

.btn-eye {
    display: flex;
    align-items: center;
}

.toggle-password .btn-eye {
    position: absolute;
    right: 10px;
    top: 5px;
}

.btn-eye-input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.btn-eye-label {
    font-size: 18px;
    cursor: pointer;
}

.toggle-password .btn-eye-label {
    width: 30px;
    text-align: center;
}

/* breadcrumbs
-------------------------------------------- */
.breadcrumbs {
    box-sizing: border-box;
    margin: 0;
    padding-left: 16px;
    padding-right: 16px;
    line-height: 1.75;
    font-size: 1.3rem;
}

.breadcrumbs > li {
    display: inline-block;
    margin-bottom: 0;
}

.breadcrumbs a {
    color: #2bbeec !important;
}

.breadcrumb-item + .breadcrumb-item::before {
    content: ">";
}

@media (max-width: 959px) {
    .breadcrumbs {
        margin: 0;
        padding-left: 14px;
        padding-right: 14px;
    }

    .breadcrumbs .breadcrumb-item,
    .breadcrumbs .breadcrumb-item a {
        font-size: 1.2rem;
        line-height: 26px;
    }
}

/* STEP
-------------------------------------------- */
ul.statusPath {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    width: 299px;
    margin: 15px auto;
    counter-reset: step;
    font-size: 1.4rem;
}

ul.statusPath li {
    display: inline-block;
    width: 32%;
    position: relative;
    text-align: center;
    color: #d1d1d1;
}

ul.statusPath li:before {
    box-sizing: border-box;
    content: "\F125";
    counter-increment: step;
    position: relative;
    z-index: 3;
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    line-height: 20px;
    text-align: center;
    border-radius: 50%;
    border: none;
    background-color: #2bbeec;
    color: #fff;;
    font-family: rex-icon;
}

ul.statusPath li:after {
    width: calc(100% - 30px);
    height: 2px;
    content: "";
    position: absolute;
    z-index: 1;
    background-color: #2bbeec;
    top: 9px;
    left: -50%;
    margin-left: 15px;
}

ul.statusPath li.statusPathAct:after {
    background-color: #2bbeec;
}

ul.statusPath li:first-child:after {
    content: none;
}

ul.statusPath li.statusPathAct {
    text-shadow: none;
    color: #2bbeec;
}

ul.statusPath li.statusPathAct ~ li:before {
    content: " ";
    border: 2px solid #d1d1d1;
    background-color: #fff;
}

ul.statusPath li.statusPathAct ~ li:after {
    background-color: #d1d1d1;
}

ul.statusPath li.statusPathAct:before {
    content: " ";
    width: 20px;
    height: 20px;
    background-color: #fff;
    border: 6px solid #2bbeec;
    color: #fff;
    font-size: 17px;
    padding-bottom: 1px;
}

ul.statusPath li.statusPathAct span, ul.statusPath li.statusPathAct span:after, ul.statusPath li.statusPathAct span:before {
    color: #2bbeec;
    background: none;
}

ul.statusPath li span {
    display: inline;
    float: none;
    padding: 0 !important;
    border: none !important;
    background: none;
    color: #d1d1d1;
    font-weight: 400;
}

ul.statusPath li span:before, ul.statusPath li span:after {
    content: none !important;
}

/* progress
-------------------------------------------- */
.progress {
    margin-bottom: 10px !important;
    height: 38px;
    font-size: 1.4rem;
    border-radius: 0
}

@media (min-width: 960px) {
    .progress-wrapper {
        padding: 40px 40px 20px;
    }
}

@media (max-width: 959px) {
    .progress-wrapper {
        padding: 20px 0 0;
    }
}

/* Tab
-------------------------------------------- */
/* list-tab-link */
@media (min-width: 960px) {
    .list-tab-link ul {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        margin-right: 10px
    }

    .list-tab-link li {
        margin-left: 10px;
        margin-top: 10px;
        height: 40px;
        width: calc(25% - 10px);
    }

    .list-tab-link a {
        position: relative;
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .list-tab-link a:after {
        display: block;
        content: "";
        bottom: 5px;
        right: 5px;
        position: absolute;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 0 10px 10px;
        border-color: transparent transparent #fff transparent;
    }

    .list-tab-link-body {
        padding-top: 40px !important;
    }

    .list-tab-link-body .sec-main-body-inner {
        margin-top: -80px !important;
        padding-top: 80px !important;
    }
}

@media (max-width: 959px) {
    .list-tab-link,
    .list-tab-link-body .link-back-to-top {
        display: none;
    }
}

.nav-tabs {
    align-items: stretch;
    margin-bottom: 26px;
}

.nav-tabs .nav-item .nav-link {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    line-height: 1.0em;
    padding-left: 6px;
    padding-right: 6px;
    border-bottom: 3px solid #bbbbbb;
    background-color: transparent;
    color: #bbbbbb;
}

.nav-tabs .nav-item .nav-link:before {
    display: block;
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 8px;
    border-color: #bbbbbb transparent transparent transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    border-bottom-color: #2bbeec;
    color: #2bbeec;
}

.nav-tabs .nav-link.active:before,
.nav-tabs .nav-item.show .nav-link:before {
    border-color: #2bbeec transparent transparent transparent;
}

.tab-content .sec-main,
.tab-content .sec-main-top,
.tab-content .sec-main-body {
    background-color: transparent;
}

.tab-content .sec-main-top {
    padding-left: 0;
    padding-right: 0;
}

.tab-content .sec-main-top p {
    padding-left: 1.5rem;
}

.tab-content .sec-main + .sec-main {
    margin-top: 35px !important;
}

.nav-tabs .nav-item {
    position: relative;
}

/* .activity-pie-chart
-------------------------------------------- */
.activity-chart-wrapper {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

.activity-pie-chart {
    width: 142px;
    height: 142px;
    border-radius: 50%;
    position: relative;
}

.apc-activity {
    content: "";
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 71px);
    top: calc(50% - 71px);
    width: 142px;
    height: 142px;
    clip: rect(0, 142px, 142px, 71px);
}

.apc-activity .apc-activity-fill {
    content: "";
    position: absolute;
    border-radius: 50%;
    left: calc(50% - 72px);
    top: calc(50% - 72px);
    width: 143px;
    height: 143px;
    clip: rect(0, 71px, 142px, 0);
    background: #eee;
    transform: rotate(60deg);
}

.apc-percents {
    position: absolute;
    border-radius: 50%;
    left: 16px;
    top: 16px;
    width: 110px;
    height: 110px;
    background: #fff;
    text-align: center;
}

.apc-percents span,
.apc-percents small,
.apc-percents strong {
    display: block;
}

.apc-percents span {
    font-size: 1.6rem;
    line-height: 14px;
    font-weight: 700;
}

.apc-percents small {
    font-size: 1.2rem;
    line-height: 14px;
}

.apc-percents strong {
    font-size: 2.8rem;
}

.pcc-percents-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.activity-pie-chart {
    margin: 10px auto 0;
}

.chart-Last {
    background-color: #31c0af;
}

.chart-This {
    background-color: #2bbeec;
}

.chart-Last .apc-percents {
    color: #31c0af;
}

.chart-This .apc-percents {
    color: #2bbeec;
}

.chart-LastMonth-wrapper,
.chart-ThisMonth-wrapper {
    position: relative;
    width: 142px;
    height: 142px;
}

#chart-LastMonth,
#chart-ThisMonth {
    position: absolute;
    top: -10px;
    left: -79px;
    overflow: hidden;
}

.chart-LastMonth-wrapper .apc-percents,
.chart-ThisMonth-wrapper .apc-percents {
    position: absolute;
    border-radius: 50%;
    left: 0;
    top: -2px;
    width: 142px;
    height: 142px;
    background-color: transparent;
}

.chart-LastMonth-wrapper .apc-percents {
    color: #31c0af;
}

.chart-ThisMonth-wrapper .apc-percents {
    color: #2bbeec;
}

/* .bar-chart-chart
-------------------------------------------- */
.bar-chart-chart {
    margin-top: 8px;
}

.bar-chart-wrapper img {
    width: 100%;
}

/* .profile-pie-chart
-------------------------------------------- */
.profile-pie-chart {
    position: relative;
    margin-top: 10px;
    margin-bottom: 24px;
    height: 34px;
    background: #2bbeec;
}

.profile-pie-chart .ppc-activity span {
    display: block;
    height: 34px;
    width: 65%;
    line-height: 34px;
    text-align: center;
    color: #fff;
}

.profile-pie-chart .ppc-activity-fill {
    position: absolute;
    top: 0;
    right: 0;
    width: 35%;
    height: 34px;
    background: #eee;
}

/* sign-in
-------------------------------------------- */
#body-container.container-signin div.main-contents-wrapper {
    background: #f0f5f8;
    min-height: calc(100vh - 56px);
}

body.single-page #body-container.container-signin div.main-contents-wrapper {
    min-height: calc(100vh - 66px);
}

@media (max-width: 959px) {
    #body-container.container-signin div.main-contents-wrapper {
        min-height: calc(100vh - 49px);
    }
}

body.single-page #body-container.container-signin {
    background: #f0f5f8;
    padding: 15px;
}

body.single-page #body-container.container-signin div.contents-wrapper {
    background-color: #fff !important;
    min-height: calc(100vh - 66px);
}

body.single-page #body-container.container-signin div.main-contents-wrapper,
#body-container.container-signin div.main-contents-header {
    background-color: #fff;
}

body.single-page div.main-contents-ttl,
#body-container.container-signin div.main-contents-ttl {
    background-color: #f0f5f8;
}

@media (max-width: 959px) {
    body.single-page #body-container.container-signin {
        min-height: 100vh !important;
    }
}

/* main-contents
-------------------------------------------- */
div.main-contents-header {
    padding: 28px 15px;
    text-align: center;
}

div.main-contents-ttl {
    padding: 18px 30px;
    text-align: center;
}

.main-contents-inner {
    padding: 28px;
}

body.single-page .main-contents-inner {
    padding: 0;
}

.personal-contents > .main-contents-inner {
    padding: 0 0 15px 0;
}

@media (max-width: 959px) {
    body.single-page div.main-contents,
    body.single-page div.main-contents-header,
    div.container-signin div.main-contents,
    div.container-signin div.main-contents-header {
        padding-left: 30px;
        padding-right: 30px;
    }

    body.single-page .contents-bg div.main-contents,
    body.single-page div.main-contents-header,
    div.container-signin div.main-contents-ttl,
    div.container-signin div.main-contents-header.personal-contents,
    div.container-signin div.main-contents.personal-contents {
        padding-left: 14px;
        padding-right: 14px;
    }

    div.main-contents-header {
        text-align: left;
    }

    .main-contents-inner {
        padding: 15px 0;
    }

    body.single-page .main-contents-inner {
        padding: 0;
    }

    .personal-contents > .main-contents-inner {
        padding: 0 0 15px 0;
    }
}

div.contents-bg {
    padding-top: 30px;
    padding-bottom: 30px;
    background-color: #f0f5f8;
}

body.single-page div.contents-bg .main-contents-inner {
    padding: 30px 12px 15px 12px;
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

body.single-page div.contents-bg .main-contents-inner + .main-contents-inner {
    margin-top: 30px;
}

@media (min-width: 960px) {
    div.contents-bg {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    div.contents-bg-inner {
        background-color: #fff;
    }

    div.contents-bg-inner {
        margin-left: 15px;
        margin-right: 15px;
    }
}

@media (max-width: 959px) {
    div.contents-bg {
        padding-top: 15px;
        padding-bottom: 15px;
    }
}

@media screen and (min-width: 960px) and (max-width: 1146px) {
    .main-contents .main-contents-inner {
        padding-left: 30px;
        padding-right: 30px;
    }
}

/* logo-contents */
.logo-contents {
    width: 100%;
    padding: 2.8rem 1rem 0;
    text-align: center;
}

.logo-contents-img,
.logo-contents-img img {
    width: 124px;
    height: 21px;
    margin-left: auto;
    margin-right: auto;
}

.logo-contents {
    text-align: center;
}

.logo-contents-text {
    margin-top: 6px;
    font-size: 1.4rem;
}

/* sec-main */
.sec-main {
    margin-bottom: 0;
    background-color: #fff;
}

.sec-main:not(:first-child) {
    margin-bottom: 60px;
}

.sec-main + .sec-main {
    margin-top: 15px;
    margin-bottom: 0;
}

.sec-main:last-child {
    margin-bottom: 80px;
}

.sec-main-inner {
    padding-bottom: 10px;
}

.sec-main-scroll {
    margin: 20px 0 40px 0;
    padding: 0 10px;
    height: 280px;
    width: 100%;
    overflow-y: scroll;
}

.sec-main h2 {
    margin-top: 10px;
    margin-bottom: 10px;
}

.sec-main h3 {
    margin-top: 10px;
    margin-bottom: 10px;
}

.sec-main .ttl-left-bdr strong,
.sec-main h3 strong,
.sec-main .personalBox-header h2 strong {
    display: inline-block;
    position: relative;
    padding-left: 12px;
    color: #2bbeec;
}

.sec-main .ttl-left-bdr strong:before,
.sec-main h3 strong:before,
.sec-main .personalBox-header h2 strong:before {
    display: block;
    content: "";
    position: absolute;
    top: 18%;
    bottom: 14%;
    left: 0;
    width: 3px;
    background-color: #2bbeec;
    border-radius: 5px;
}

.sec-main .ttl-none-bdr strong,
.sec-main .personalBox h3 strong,
.sec-main h3.ttl-h1-center strong,
.sec-main h3.ttl-h2-center strong,
.sec-main h3.ttl-h3-center strong {
    padding-left: 0;
}

.sec-main .ttl-none-bdr strong:before,
.sec-main .personalBox h3 strong:before,
.sec-main h3.ttl-h1-center strong:before,
.sec-main h3.ttl-h2-center strong:before,
.sec-main h3.ttl-h3-center strong:before {
    display: none;
}

.sec-main h2 + h3 {
    margin-top: 25px;
}

.sec-main-top h2,
.sec-main-top h3 {
    margin-bottom: 5px;
}

.sec-main .ttl-icon {
    display: flex;
    align-items: center;
}

.sec-main .ttl-icon .rex-icon {
    font-size: 3.0rem;
}

.sec-main .ttl-icon #iconChanged {
    margin-left: 4px;
}

.sec-main-top {
    padding: 18px 32px 14px;
    background-color: #fff;
}

.sec-main-top.ttl-border-primary {
    border-bottom: 1px solid #2157b4;
}

.sec-main-top.ttl-border-info {
    border-bottom: 1px solid #f0f5f8;
}

.sec-main-top.ttl-border-dark {
    border-bottom: 1px solid #bfbfbf;
}

.sec-main-top h2,
.sec-main-top h3 {
    margin-top: 0;
}

.sec-main-body {
}

.sec-main-body-inner {
    padding: 18px 32px 14px;
    background-color: #fff;
}

.sec-main-body-inner p {
    word-break: normal;
}

.sec-main-body p.note {
    font-size: 1.6rem;
}

.sec-main-body p.note + p.note {
    margin-top: 1em;
}

.sec-main-body + .form-group.btn-btm {
    margin-bottom: 50px;
}

.sec-main-body + .sec-main-body {
    margin-top: 60px;
}

.sec-main-sns {
    margin-top: 60px;
}

.sec-main-sns .sns-list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.sec-main-sns .sns-list li {
    margin: 10px;
}

.sec-main-sns .snsIcon {
    width: 40px;
    height: 40px;
}

.sec-bnr-googleplay {
    margin: 0 auto;
    text-align: center;
}

.sec-bnr-googleplay img {
    max-width: 323px;
}

.sec-bnr-campaign {
    margin: 10px auto;
    text-align: center;
}

.sec-bnr-campaign img {
    max-width: 600px;
}

.sec-bnr-googleplay a img,
.sec-bnr-campaign a img {
    opacity: 1;
    transition: opacity 0.15s ease-in-out;
}

.sec-bnr-googleplay a:hover img,
.sec-bnr-campaign a:hover img {
    opacity: 0.8;
}

/* list-enquetes */
.list-enquetes .enquete {
    margin-bottom: 12px;
    background-color: #fff;
    border-radius: 6px;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.list-enquetes .enquete:hover,
.list-enquetes .enquete:focus {
    box-shadow: none;
}

.list-enquetes .enquete > .enquete-item {
    position: relative;
    display: block;
    padding: 10px 12px;
    border-left: 3px solid #2bbeec;
    border-radius: 6px;
}

.list-enquetes .enquete > a:hover,
.list-enquetes .enquete > a:focus {
    background-color: #e0e6f7;
}

.list-enquetes .enquete .title .ttl-lead {
    margin-bottom: 4px;
    font-size: 1.4rem;
}

.list-enquetes .enquete .points-and-time,
.list-enquetes .enquete .points-and-time > [class*="enquete-"] {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.list-enquetes .enquete .points-and-time {
    flex-wrap: wrap;
    padding-right: 100px;
}

.list-enquetes .enquete .points-and-time {
    margin-top: 4px;
}

.list-enquetes .enquete .points-and-time span {
    display: inline-block;
    font-size: 1.4rem;
}

.list-enquetes .enquete .points-and-time .rex-icon {
    margin-right: 4px;
    font-size: 2.3rem;
}

.list-enquetes .enquete a:hover .points-and-time .rex-icon,
.list-enquetes .enquete a:focus .points-and-time .rex-icon {
    color: #2767d4 !important;
}

.list-enquetes .enquete .points-and-time .number {
    font-size: 1.8rem;
    font-weight: 700;
}

.list-enquetes .enquete .points-and-time .enquete-time {
    margin-right: 6px;
}

.list-enquetes .enquete .points-and-time .text {
    margin-left: 4px;
    font-size: 1.4rem;
}

#complete .list-enquetes .enquete .points-and-time .text {
    margin-left: 10px;
}

.list-enquetes .enquete .points {
    position: absolute;
    top: 10px;
    right: 12px;
}

.list-enquetes .enquete .points,
.list-enquetes .enquete .points > [class*="enquete-"] {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}

.list-enquetes .enquete .points > span {
    display: block;
}

.list-enquetes .enquete .points .rex-icon {
    top: 0;
    font-size: 2.6rem;
    margin-right: 2px;
}

.list-enquetes .enquete .points .points-text .text {
    display: inline-block;
}

.list-enquetes .enquete .points .points-text .number {
    display: block;
    margin-top: 3px;
    font-size: 2.2rem;
    line-height: 18px;
    font-weight: 700;
}

.list-enquetes .enquete .points .points-text small {
    display: block;
    margin-top: 4px;
    font-size: 1.0rem;
    line-height: 10px;
    margin-left: 0;
    text-align: center;
}

.list-enquetes .enquete .points-and-time > div {
    margin-left: 6px;
}

.list-enquetes .enquete .enquete-item .detail .enquete-id {
    position: absolute;
}

.list-enquetes .enquete .detail-02 .enquete-id {
    margin-top: 4px;
}

.list-enquetes .enquete .detail-02 + p {
    margin-top: 4px;
}

.list-enquetes .enquete .enquete-item .detail-02 .points-text {
    min-width: 50px;
    color: #2bbeec;
    text-align: center;
}

.list-enquetes .enquete .enquete-item .detail-02 .points-text .text {
    text-align: center;
}

.list-enquetes .enquete .enquete-item .detail-02 .points-text .text .number {
    text-align: center;
}

/* list-news empty */
.list-enquetes .empty p {
    text-align: left;
}

/* list-news */
#news-item-page .main-contents-ttl {
    background-color: #f0f5f8;
}

.news-page .main-contents-inner {
    padding-left: 0;
    padding-right: 0;
}

@media screen and (min-width: 960px) and (max-width: 1125px) {
    .news-page .main-contents-inner {
        width: 100%;
        max-width: 100%;
        padding-left: 30px;
        padding-right: 30px;
    }
}

.news-page .sec-main {
    background-color: transparent !important;
}

.list-news {
    margin-bottom: 40px;
}

.list-news .news-box {
    position: relative;
    margin-bottom: 10px;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    border-radius: 6px;
}

.list-news .news-box:hover {
    box-shadow: none !important;
}

.list-news .news-box a {
    display: block;
    padding: 8px 34px 8px 10px;
    background-color: #fff;
    border-left: 3px solid #2bbeec;
    border-radius: 6px;
}

.list-news .news-box a:hover {
    background-color: #fff;
}

.list-news .news-box a:hover,
.list-news .news-box a:focus {
    background-color: #e0e6f7;
}

.contents-News {
}

.contents-News .sec-main,
.contents-News .sec-main-top,
.contents-News .sec-main-body {
    background-color: transparent !important;
}

.contents-News .sec-main-body {
    padding: 0 !important;
}

.contents-News .sec-main,
.contents-News .list-news {
    margin-bottom: 0;
}

.contents-News .list-news {
    margin-bottom: 0;
    display: flex;
    flex-direction: row;
}

.contents-News .sec-main-top {
    padding-left: 15px !important;
    padding-bottom: 10px !important;
}

.list-news .news-box a:before {
    content: '';
    width: 16px;
    height: 16px;
    display: block;
    border-top: solid 1px;
    border-right: solid 1px;
    border-color: #2bbeec;
    position: absolute;
    top: 50%;
    right: 13px;
}

.list-news .news-box a:before {
    -webkit-transform: translate(0, -50%) rotate(45deg);
    -ms-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}

.list-news .news-day {
    font-size: 1.4rem;
}

.list-news .news-status {
    position: absolute;
    top: 25px;
    left: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.contents-News .list-news {
    display: flex;
    flex-direction: row;
}

.contents-News .list-news .news-box {
    margin-left: 10px;
    width: calc(50% - 10px);
    box-shadow: none;
    border: 1px solid #e9e9e9;
}

.contents-News .list-news .news-box a {
    border: none;
}

.body-w50 {
    padding-top: 0;
}

@media (max-width: 767px) {
    .contents-News .list-news {
        flex-direction: column;
    }

    .contents-News .list-news .news-box {
        margin-left: 0;
        width: 100%;
    }
}

@media (min-width: 960px) {
    .sec-main-inner .sec-main-body {
        padding: 30px 30px 15px 30px;
    }

    .body-w50,
    .sec-main-body-w50 {
        margin: 0 auto 30px;
        width: 545px;
        max-width: 545px;
    }

    .body-w50 {
        margin-bottom: 0;
    }

    .sec-main-body-w375 {
        margin: 0 auto;
        width: 375px;
        max-width: 375px;
    }

    .list-enquetes .enquete .enquete-item .title {
        padding-right: 100px;
    }

    .list-enquetes .enquete .enquete-item .title h4 {
        font-size: 1.6rem;
    }

    .list-enquetes .enquete .enquete-item .detail-02 .enquete-id {
        margin-top: 4px;
        font-size: 1.4rem;
    }

    .list-enquetes .enquete .points > div {
        margin-left: 26px;
    }

    .list-enquetes .enquete .enquete-item .detail .enquete-id {
        top: 8px;
        right: 12px;
        margin-top: 2px;
        font-size: 1.4rem;
    }

    /*#news-item-page .main-contents-ttl .ttl-h2-left {padding-left: 30px!important;padding-right: 30px!important;}
  .news-page .main-contents {padding-left: 15px!important;padding-right: 15px!important;}*/
}

@media (min-width: 1124px) {
    .body-w75,
    .sec-w75 {
        margin: 0 auto;
        width: 814px;
        max-width: 814px;
    }
}

@media (max-width: 1125px) {
    #news-item-page .main-contents-ttl {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

@media (max-width: 959px) {
    .sec-main .ttl-icon .rex-icon {
        font-size: 2.2rem;
    }

    .sec-main-top {
        padding: 12px 15px;
    }

    .sec-main-inner .sec-main-body {
        padding: 15px 15px 30px 15px;
    }

    .sec-main-body-inner {
        padding: 18px 14px;
        background-color: #fff;
    }

    .sec-bnr-campaign img {
        max-width: 300px;
    }

    .list-enquetes .enquete > .enquete-item {
        padding: 10px;
    }

    .list-enquetes .enquete .points {
        top: 6px;
        right: 10px;
    }

    .list-enquetes .enquete > .enquete-item .title {
        padding-right: 0;
    }

    .list-enquetes .enquete .title .ttl-lead {
        margin-bottom: 6px;
        padding-right: 70px;
    }

    .list-enquetes .enquete > .enquete-item .detail .enquete-id {
        right: 0;
        bottom: 2px;
    }

    .list-enquetes .enquete > .enquete-item .detail {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    .list-enquetes .enquete > .enquete-item .detail-02 .points {
        max-width: 74px;
    }

    .list-enquetes .enquete > .enquete-item .detail-02 .points .enquete-points {
        margin-left: 0;
    }

    .list-enquetes .enquete > .enquete-item .detail-02 .points-text {
        line-height: 14px;
        min-width: 40px;
    }

    .list-enquetes .enquete > .enquete-item .detail-02 .points-text > span {
        display: inline-block;
        line-height: 12px;
    }

    .list-enquetes .enquete > .enquete-item .detail-02 .points-text small {
        display: inline-block;
        line-height: 12px;
    }

    .list-enquetes .enquete .points-and-time {
        position: relative;
        width: 100%;
    }

    .list-enquetes .enquete .points-and-time .rex-icon {
        margin-right: 6px;
        font-size: 2.2rem;
    }

    .list-enquetes .enquete .points-and-time .number {
        font-size: 1.8rem;
        font-weight: 700;
    }

    .list-enquetes .enquete .points-and-time .text,
    .list-enquetes .enquete .points-and-time .completed-text {
        font-size: 1.2rem;
    }

    .list-enquetes .enquete .points-and-time > div {
        margin-left: 0;
    }

    .list-enquetes .enquete .points > div {
        margin-left: 12px;
    }

    .list-enquetes .enquete .points .rex-icon {
        font-size: 2.2rem;
        margin-right: 2px;
    }

    .list-enquetes .enquete .points .points-text .number {
        margin-top: 4px !important;
        font-size: 1.8rem;
        line-height: 16px;
    }

    .list-enquetes .enquete .points .points-text .text .number {
        margin-top: 2px !important;
    }

    .list-enquetes .enquete .points .points-text small {
        margin-top: 0 !important;
        font-size: 1.0rem;
        line-height: 10px;
    }

    .list-enquetes .enquete .points .text {
        margin-left: 0;
        font-size: 1.0rem;
    }

    .list-news .news-box a {
        display: block;
        padding: 6px 28px 6px 8px;
    }

    .list-news .news-box a:before {
        position: absolute;
        top: 50%;
        right: 10px;
    }

    .list-news .news-day {
        font-size: 1.2rem;
    }

    .list-news .news-status {
        top: 10px;
        left: 12px;
    }
}

@media (max-width: 767px) {
    .contents-News {
        padding-top: 40px !important;
        padding-bottom: 20px !important;
    }
}

/* list-sitemap */
.sitemap-page header.glovalHeader.header-default {
    box-shadow: none;
}

.list-sitemap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.list-sitemap li {
    width: calc(50% - 50px);
    margin-bottom: 20px;
    margin-right: 50px;
}

.list-sitemap a {
    position: relative;
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid #e6ecf0;
}

.list-sitemap a:before {
    content: '';
    width: 10px;
    height: 10px;
    display: block;
    border-top: solid 1px;
    border-right: solid 1px;
    border-color: #2bbeec;
    position: absolute;
    top: 50%;
    right: 20px;
}

.list-sitemap a:before {
    -webkit-transform: translate(0, -50%) rotate(45deg);
    -ms-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}

@media (max-width: 560px) {
    .list-sitemap {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        margin: 0 20px;
    }

    .list-sitemap li {
        width: 100%;
        margin-bottom: 0;
        margin-right: 0;
    }
}

@media (max-width: 374px) {
    .sec-bnr-googleplay {
        margin: 0 14px;
    }

    .sec-bnr-googleplay img {
        max-width: 323px;
        width: 100%;
    }

    .sec-bnr-campaign {
        margin: 10px 14px;
    }

    .sec-bnr-campaign img {
        max-width: 300px;
        width: 100%;
    }
}

.list-enquetes .enquete .points-and-time > div:first-child {
    margin-left: 0;
    margin-right: 10px;
}

/* personalBox */
.personalBox-header {
    position: relative;
    padding-top: 5px;
    padding-bottom: 15px;
}

.personalBox-header h2,
.personalBox h3 {
    margin: 0;
}

.personalBox .personalBox-btn,
.personalBox-header .personalBox-btn {
    position: absolute;
    top: 3px;
    right: 0;
}

.personalBox .personalBox-btn {
    top: 50%;
    transform: translateY(-50%);
}

.personalBox .personalBox-btn .rounded-pill {
    min-width: 110px;
}

.personalBox .personalBox-btn .text,
.personalBox-header .personalBox-btn .text {
    padding-left: 6px;
}

.personalBox-header .personalBox-btn .btn,
.personalBox .personalBox-btn .btn {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.personalBox:last-child {
    margin-bottom: 10px;
}

.personalBox h3 {
    margin-bottom: 5px;
    font-size: 1.6rem;
}

.personalBox p {
    margin-left: 10px;
}

.personalBox.flex-row {
    justify-content: flex-start;
}

.personalBox.flex-row .personalBox-img {
    margin-top: 10px;
}

.personalBox.flex-row .personalBox-img img {
    width: 82px;
    height: 82px;
}

.personalBox.flex-row .personalBox-text h2,
.personalBox.flex-row .personalBox-text h3,
.personalBox.flex-row .personalBox-text dl,
.personalBox.flex-row .personalBox-text .badge {
    margin-left: 10px;
}

.personalBox.flex-row .personalBox-text h2 {
    margin-bottom: 6px;
}

.personalBox.flex-row .personalBox-text .flex-row,
.personalBox.flex-row .personalBox-text dl {
    justify-content: flex-start;
    align-items: flex-start;
}

.personalBox.flex-row .personalBox-text dl {
    margin-top: 4px;
}

.personalBox.flex-row .personalBox-text dl + dl {
    margin-top: 4px;
}

.personalBox.flex-row .personalBox-text dd {
    margin-left: 10px;
}

.personalBox.flex-row .personalBox-text dd p {
    margin-left: 0;
}

.personalBox.flex-row .personalBox-text .badge {
    min-width: 62px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: 400;
}

.personalBox.flex-row .personalBox-text .text-point {
    margin-top: 4px;
    margin-left: 10px;
    font-size: 2.0rem;
    display: flex;
    align-items: center;
}

.personalBox.flex-row .personalBox-text .text-point .rex-icon {
    margin-top: -2px;
    font-size: 2.2rem;
}

.personalBox.flex-row .personalBox-text .text-point strong {
    line-height: 22px;
    margin-right: 10px;
}

.main-contents-inner.personal-contents .personalBox {
    position: relative;
    margin-bottom: 0;
    margin-top: 10px;
    padding-top: 10px;
}

.main-contents-inner.personal-contents .personalBox:before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0;
    border-top: 1px solid #f6f6f6;
}

.main-contents-inner.personal-contents .row.personalBox:before {
    left: 15px;
    right: 15px;
}

.personalBox-header + .personalBox {
    margin-top: 0 !important;
}

@media (max-width: 959px) {
    .personalBox h3 {
        font-size: 1.4rem;
    }

    .personalBox.flex-row .personalBox-text p,
    .personalBox.flex-row .personalBox-text dt,
    .personalBox.flex-row .personalBox-text dd {
        font-size: 1.4rem;
    }
}

.row.personalBox {
    padding-left: 0;
    padding-right: 0;
}

.textBox {
    padding: 20px 14px;
}

.textBox h4 {
    margin-bottom: 10px;
}

.contents-bg .textBox {
    padding: 0;
}

.contents-bg .textBox + .textBox {
    padding-top: 20px;
}

.contents-bg .textBox p + p {
    padding-top: 1em;
}

/* textimgBox */
.textimgBox {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.textimgBox .textimgBox-text {
    padding: 0 10px;
    width: calc(100% - 20px);
    text-align: center;
}

.textimgBox .textimgBox-text h4,
.textimgBox .textimgBox-text .ttl-h2-center {
    margin-bottom: 20px;
    font-size: 3.2rem;
}

.textimgBox .textimgBox-text p {
    font-size: 2.0rem;
}

.textimgBox .textimgBox-img {
    padding: 0 10px;
    text-align: center;
    width: calc(100% - 20px);
}

.textimgBox .textimgBox-img img {
    max-width: 315px;
    width: 100%;
}

.textimgBox .textimgBox-PayPal {
    max-width: 362px;
}

.textimgBox .textimgBox-McDonald {
    max-width: 300px;
}

@media (min-width: 768px) {
    .textimgBox .textimgBox-img + .textimgBox-text {
        padding-left: 0;
        padding-right: 0;
    }
}

@media (max-width: 767px) {
    .textimgBox {
        padding: 0 0 28px 0;
        flex-direction: column;
        border-top: 1px solid #e0e6f7;
    }

    .textimgBox:first-child {
        padding-top: 0;
        border-top: none;
    }

    .textimgBox .textimgBox-img {
        padding: 0;
        text-align: center;
    }

    .textimgBox .textimgBox-img img {
        width: 100%;
    }

    .textimgBox .textimgBox-text {
        padding-top: 20px;
        padding-bottom: 20px;
        padding-right: 0;
    }

    .textimgBox .textimgBox-text h4,
    .textimgBox .textimgBox-text .ttl-h2-center {
        margin-bottom: 10px;
        font-size: 2.6rem;
    }

    .textimgBox .textimgBox-text p {
        font-size: 1.5rem;
    }

    .textimgBox .textimgBox-img + .textimgBox-text {
        padding-left: 0;
        padding-right: 0;
    }

    .textimgBox .textimgBox-PayPal {
        max-width: 181px;
    }

    .textimgBox .textimgBox-McDonald {
        max-width: 150px;
    }

    .textimgBox > .textimgBox-img:first-child {
        order: 2;
    }

    .textimgBox .textimgBox-img + .textimgBox-text {
        order: 1;
    }
}

/* profile */
.profile-list {
    margin-left: -5px;
    margin-right: -5px;
}

.profile-list-inner {
    display: table;
    margin: 10px;
}

.profile-Item {
    margin-top: 30px;
}

.profile-Item a {
    display: block;
    padding: 30px 30px 20px;
    transition: background .3s;
    text-align: center;
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    overflow: hidden;
}

.profile-Item a:hover {
    box-shadow: none;
}

.profile-Item a:before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 15px;
    width: 30px;
    height: 30px;
    background: #2bbeec;
    border-radius: 6px 0 0 0;
    transition: background .3s;
}

.profile-Item a:after {
    display: block;
    content: "";
    transition: border .3s;
    position: absolute;
    top: 0;
    left: 15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 30px 30px;
    border-color: transparent transparent #fff transparent;
}

.profile-Item a img {
    filter: brightness(0) invert(0);
}

.profile-Item a .profile-Item-icon {
    height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.profile-Item a.link-disabled {
    pointer-events: none;
    opacity: 0.4;
}

.profile-Item a.link-incomplete {
    opacity: 0.4;
}

.profile-Item a:hover,
.profile-Item a:active {
    background-color: #e0e6f7;
    color: #2767d4;
    opacity: 1;
}

.profile-Item a:hover img,
.profile-Item a:active img {
    filter: brightness(1) invert(0);
}

.profile-Item a:hover:after,
.profile-Item a:active:after {
    border-color: transparent transparent #e0e6f7 transparent;
}

.profile-Item a:hover:before,
.profile-Item a:active:before {
    background: #2767d4;
}

.profile-Item-w100 {
    width: 100%;
}

.profile-Item h3 {
    display: block;
    text-align: center;
    font-weight: 700;
}

@media (max-width: 959px) {
    .profile-Item {
        width: 50%;
    }

    .profile-Item a {
        display: block;
        padding: 15px 15px 10px;
    }

    .profile-Item-w100 {
        width: 100%;
    }

    .profile-Item h3 {
        font-size: 1.6rem;
    }

    .profile-Item {
        margin-top: 10px;
    }

    .profile-Item a .profile-Item-icon {
        height: 50px;
    }

    .profile-Item a .profile-Item-icon img {
        zoom: 0.5;
    }

    .profile-list .profile-Item {
        padding-left: 5px;
        padding-right: 5px;
    }

    .profile-Item a:before {
        left: 5px;
    }

    .profile-Item a:after {
        left: 5px;
    }
}

/* modal
-------------------------------------------- */
.modal-body .sec-main-scroll {
    margin: 0;
}

.modal-footer .btn-btm .btn {
    min-width: 100px;
}

.modal-footer .btn-btm .btn + .btn {
    margin-left: 15px;
}

#cookieModalLabel {
    width: 100%;
    text-align: center;
}

@media (max-width: 959px) {
    .modal-content {
        margin-top: -100px;
    }
}

/* popover
-------------------------------------------- */
.popover-header {
    font-size: 1.4rem;
    font-weight: bold;
}

.popover-body p:not(:first-child) {
    margin-top: 0.6em;
}

/* sp-collapse
-------------------------------------------- */
.sp-collapse-top {
    margin-bottom: 20px;
    display: none;
}

.sp-collapse:first-child {
    padding-top: 40px;
}

@media (max-width: 959px) {
    .sp-collapse {
        padding-top: 0;
        padding-bottom: 0;
    }

    .sp-collapse:first-child {
        padding-top: 20px;
    }

    .sp-collapse:last-child {
        padding-bottom: 20px;
    }

    .sp-collapse.is-active:last-child {
        padding-bottom: 0;
    }

    .sp-collapse-top {
        display: block;
        position: relative;
        margin: 0 !important;
        padding: 18px 14px;
        background: #ababab;
        border-bottom: 1px solid #fff;
        color: #fff !important;
        cursor: pointer;
    }

    .sp-collapse-body {
        display: none;
        padding: 18px 15px;
    }

    .sp-collapse-top:before,
    .sp-collapse-top:after {
        position: absolute;
        right: 14px;
        top: 50%;
        transform: translateY(-50%);
        display: block;
        content: "";
        width: 20px;
        height: 2px;
        background-color: #fff;
    }

    .sp-collapse-top:after {
        transform: translateY(-50%) rotate(90deg);
        transition: 0.5s;
    }

    .is-active .sp-collapse-top:after {
        transform: rotate(0);
    }

    .sp-collapse-top strong {
        color: #fff !important;
        padding-left: 0 !important;
    }

    .sp-collapse-top strong:before {
        display: none !important;
    }
}

/* sp-collapse
-------------------------------------------- */
.content-MV .slider {
    opacity: 0;
    transition: opacity .3s linear;
}

.content-MV .slider.slick-initialized {
    opacity: 1;
}

.content-MV .slick-slide {
    position: relative;
    text-align: center !important;
}

.content-MV .slick-slide img,
.content-MV .slick-slide video {
    width: 100%;
}

.content-MV .slick-slide .item-mv-pc {
    display: block !important;
}

.content-MV .slick-slide .item-mv-sp {
    display: none !important;
}

.content-MV .slick-slide .mv-inner {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 11;
    width: 56%;
    height: calc(100% - 21.4%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.content-MV .slick-slide .mv-ttl,
.content-MV .slick-slide .mv-lead {
    color: #fff;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.8);
    text-align: left;
}

.content-MV .slick-slide .mv-ttl { /*padding: 40px 50px 30px 50px;*/
    font-size: 5.0rem;
    font-weight: 700;
    color: #fff;
}

.content-MV .slick-slide .mv-lead {
    padding-top: 10px;
    font-size: 2.8rem;
    color: #fff;
}

.content-MV .slick-slide .mv-btn {
    position: absolute;
    left: 0;
    bottom: -14%;
    width: 100%;
}

.content-MV .slick-slide .mv-btn .btn {
    width: 46%;
    height: 80px;
    font-size: 4.0rem;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.5);
}

/**/
.content-MV .slick-slide a:focus,
.content-MV .slick-slide a:focus {
    outline: none;
}

.slider-top {
    width: 100%;
    opacity: 0;
    transition: opacity 3s;
}

.slick-initialized {
    opacity: 1
}

.slider-top {
    margin: 0;
}

.slider-top img {
    position: relative;
    z-index: 10;
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.slider-top video {
    position: relative;
    z-index: 10;
    width: 100%;
    vertical-align: bottom;
}

.slick-slide {
    margin: 0;
}

.slider-top .slick-dots {
    bottom: 14px;
}

.slider-top .slick-dots li,
.slider-top .slick-dots li button {
    margin: 0;
    padding: 0;
    width: 10px;
    height: 10px;
}

.slider-top .slick-dots li:not(:first-child) {
    margin-left: 10px;
}

.slider-top .slick-dots li button:before {
    content: "";
    display: block;
    opacity: 1;
    width: 10px;
    height: 10px;
    background-color: #fff;
    border-radius: 10px;
}

.slider-top .slick-dots li.slick-active button:before {
    background-color: #2767d4;
}

.slider-top .slick-prev, .slider-top .slick-next {
    width: 50px;
    height: 100%;
    background-color: transparent;
}

.slick-prev:before, .slick-next:before {
    content: '';
    width: 20px;
    height: 20px;
    display: block;
    border-top: solid 3px;
    border-right: solid 3px;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    opacity: 1;
}

.slick-prev:before {
    left: 0;
    -webkit-transform: translate(0, -50%) rotate(225deg);
    -ms-transform: translate(0, -50%) rotate(225deg);
    transform: translate(0, -50%) rotate(225deg);
}

.slick-next:before {
    right: 0;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    -ms-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}

.slider-top .slick-next {
    right: 0;
    z-index: 99;
}

.slider-top .slick-prev {
    left: 0;
    z-index: 100;
}

@media (max-width: 1142px) {
    .content-MV .slick-slide .mv-ttl {
        font-size: 4.0rem !important;
    }

    .content-MV .slick-slide .mv-lead {
        font-size: 2.0rem !important;
    }

    .content-MV .slick-slide .mv-btn .btn {
        font-size: 2.6rem !important;
        height: 50px !important;
    }
}

@media (max-width: 959px) {
    .slider-top .slick-dots {
        bottom: 8px;
    }

    .content-MV .slick-slide .mv-ttl {
        font-size: 3.6rem !important;
    }

    .content-MV .slick-slide .mv-lead {
        font-size: 1.6rem;
    }
}

@media (max-width: 767px) {
    .slider-top .slick-dots {
        bottom: -20px;
    }

    .content-MV .slick-slide .item-mv-pc {
        display: none !important;
    }

    .content-MV .slick-slide .item-mv-sp {
        display: block !important;
    }

    .content-MV .slick-slide .mv-inner {
        width: 100%;
        height: 100%;
        justify-content: flex-start;
    }

    .content-MV .slick-slide .mv-ttl,
    .content-MV .slick-slide .mv-lead {
        text-align: center;
    }

    .content-MV .slick-slide .mv-ttl {
        font-size: 5.33333332vw !important;
    }

    .content-MV .slick-slide .mv-lead {
        font-size: 3.733333324vw !important;
    }

    .content-MV .slick-slide .mv-btn {
        position: absolute;
        bottom: 20px;
        padding: 0 50px !important;
        width: 100%;
    }

    .content-MV .slick-slide .mv-btn .btn {
        max-width: 215px;
    }

    .content-MV .item-mv02.slick-slide .mv-inner {
        justify-content: center;
    }

    .content-MV .item-mv01.slick-slide .mv-inner {
        padding-top: 5%;
    }

    .content-MV .item-mv03.slick-slide .mv-inner {
        padding-top: 13%;
    }
}

@media screen and (min-width: 549px) and (max-width: 767px) {
    .content-MV .slick-slide .mv-btn .btn {
        height: 60px !important;
        font-size: 3.2rem !important;
    }
}

@media (max-width: 548px) {
    .content-MV .slick-slide .mv-lead {
        padding-top: 0;
    }

    .content-MV .slick-slide .mv-btn .btn {
        width: 100%;
        height: 40px !important;
        font-size: 2.0rem !important;
        line-height: 20px !important;
        max-width: 180px;
        padding-top: 7px;
        padding-bottom: 0;
    }
}

@media (max-width: 374px) {
    .content-MV .item-mv01.slick-slide .mv-ttl {
        font-size: 1.8rem !important;
    }

    .content-MV .item-mv02.slick-slide .mv-ttl {
        font-size: 1.6rem !important;
    }

    .content-MV .item-mv03.slick-slide .mv-ttl {
        font-size: 1.8rem !important;
    }
}

/* pc-only
-------------------------------------------- */
.pc-only .list-enquetes .enquete > .enquete-item {
    pointer-events: none;
    opacity: 0.5;
}

.pc-only .list-enquetes .enquete > .enquete-item .text-info {
    color: #333 !important;
}

/* #pre-logon
-------------------------------------------- */
#pre-logon .main-contents-inner {
    padding: 24px 15px;
}

#pre-logon .main-contents-header {
    padding: 0 15px;
}

#pre-logon .sec-main-top {
    padding-top: 0;
    padding-bottom: 0;
}

#pre-logon .text-primary {
    color: #002896 !important;
}

#pre-logon h3.ttl-h2-left strong {
    padding-left: 0;
}

#pre-logon h3.ttl-h2-left strong:before {
    display: none;
}

#pre-logon .textBox {
    padding: 0;
}

#pre-logon .textBox p {
    margin-bottom: 1.5rem;
}

#pre-logon .main-contents-inner.bg-light {
    margin-top: 24px;
    background-color: #f0f5f8 !important;
}

#pre-logon .main-contents-inner.bg-light .sec-main {
    background-color: transparent !important;
}

@media (min-width: 960px) {
    #pre-logon div.main-contents-ttl {
        padding: 24px 47px 0;
    }

    #pre-logon .main-contents-inner .sec-main .sec-main-body {
        padding: 18px 32px 14px;
    }
}

@media (max-width: 959px) {
    #pre-logon div.main-contents-ttl {
        padding: 24px 14px 0;
    }

    #pre-logon .main-contents-inner {
        padding: 20px 14px 0 14px;
    }

    #pre-logon .main-contents-inner .sec-main .sec-main-top {
        padding: 0 0 10px 0;
    }

    #pre-logon .main-contents-inner .sec-main .sec-main-body {
        padding: 0 0 0 0;
    }

    #pre-logon .main-contents-inner.bg-light {
        padding: 24px 14px;
    }
}

.pointBox-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.pointBox-wrapper .pointBox {
    width: calc(50% - 8px);
}

.pointBox-wrapper .pointBox:last-child {
    margin-left: 16px;
}

.pointBox {
    margin: 20px auto;
    padding: 18px 14px;
    display: inline-flex;
    flex-direction: row;
    justify-content: center;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
}

.pointBox .pointBox-text {
    width: 300px;
    margin-left: 20px;
    text-align: left;
}

.pointBox h3 {
    font-weight: 700;
}

@media (max-width: 959px) {
    .pointBox-wrapper {;
        max-width: auto;
    }

    .pointBox-wrapper .pointBox {
        max-width: 338px;
    }

    .pointBox {
        display: flex;
        width: 100%;
        justify-content: flex-start;
    }

    .pointBox .pointBox-img img {
        width: 64px;
        height: 64px;
    }

    .pointBox .pointBox-text {
        width: auto;
        margin-left: 20px;
    }
}

@media (max-width: 767px) {
    .pointBox-wrapper {
        flex-direction: column;
    }

    .pointBox-wrapper .pointBox {
        width: 100%;
        margin: 20px auto 0 auto;
    }

    .pointBox-wrapper .pointBox:last-child {
        margin-left: auto;
    }
}

/* only-page
-------------------------------------------- */
#news-item-page .sec-main-body {
    margin-left: 32px;
    margin-right: 32px;
}

#news-item-page .sec-main-body .row {
    margin-bottom: 30px;
}

#news-item-page .sec-main-body .row [class*="col-"] + [class*="col-"] {
    margin-top: 15px;
}

#survey-start-page div.contents-bg .main-contents-inner,
#survey-thank-you-page div.contents-bg .main-contents-inner {
    padding: 15px 30px 15px 30px;
}

/* Point */
.main-point .main-contents-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.sec-main-point {
    display: block;
    margin: 0 0 16px 0 !important;
    width: calc(50% - 8px);
    border-radius: 6px;
}

.sec-main-point:nth-child(2n) {
    margin-left: 16px !important;
}

.sec-main-point > a {
    display: block;
    border-radius: 6px;
    height: 100%;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.sec-main-point .sec-main-inner .sec-main-body {
    padding: 5px 10px 0 10px;
}

.sec-main-point > a:hover,
.sec-main-point > a:focus {
    background-color: #e0e6f7;
}

@media (max-width: 1200px) {
    .main-point .main-contents-inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .sec-main-point {
        margin: 0 0 16px 0 !important;
        width: 70%;
    }

    .sec-main-point:nth-child(2n) {
        margin-left: 0 !important;
    }
}

@media (max-width: 1200px) {
    .main-point .main-contents-inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .sec-main-point {
        margin: 0 0 16px 0 !important;
        width: 70%;
    }

    .sec-main-point:nth-child(2n) {
        margin-left: 0 !important;
    }
}

@media (max-width: 959px) {
    #news-TOP-page div.main-contents,
    #survey-TOP-page div.main-contents,
    #point-TOP-page div.main-contents {
        padding-left: 15px;
        padding-right: 15px;
    }

    #policies-TOP-page .main-contents {
        padding-left: 0;
        padding-right: 0;
    }

    #policies-TOP-page .main-contents .sec-main.bg-white {
        padding: 0 12px 12px 12px;
    }

    #policies-TOP-page .main-contents .sec-main-body-inner {
        padding: 0;
    }

    #news-item-page .sec-main-body {
        margin-left: 15px;
        margin-right: 15px;
    }

    #news-item-page div.main-contents {
        padding-left: 0;
        padding-right: 0;
    }
}

@media screen and (min-width: 768px) and (max-width: 959px) {
    .main-point .main-contents-inner {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .sec-main-point {
        margin: 0 0 16px 0 !important;
        width: calc(50% - 8px);
        border-radius: 6px;
        box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    }

    .sec-main-point:nth-child(2n) {
        margin-left: 16px !important;
    }
}

@media (max-width: 767px) {
    .main-point .main-contents-inner {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    .sec-main-point {
        margin: 0 0 16px 0 !important;
        width: 100%;
    }

    .sec-main-point:nth-child(2n) {
        margin-left: 0 !important;
    }

    div.container-signin div.main-contents.main-point {
        padding-bottom: 50px;
    }
}

@media (max-width: 424px) {
    div.container-signin div.main-contents.main-point {
        padding: 0 15px 50px;
    }
}

/* campaign-page
-------------------------------------------- */
body#pre-logon.campaign-page header.glovalHeader {
    height: 56px;
    border-bottom: solid 1px #002896;
}

body#pre-logon.campaign-page div.main-contents {
    float: inherit;
    width: 100%;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

body#pre-logon.campaign-page footer.glovalFooter {
    border-top: 1px solid #e6ecf0;
}

body#pre-logon.campaign-page header.glovalHeader #cntGlobal {
    right: 23px;
}

@media (max-width: 959px) {
    body#pre-logon.campaign-page header.glovalHeader {
        height: 49px;
    }

    body#pre-logon.campaign-page header.glovalHeader .header-logo {
        top: 9px;
        left: 12px;
    }

    body#pre-logon.campaign-page header.glovalHeader #cntGlobal {
        right: -4px;
    }

    body#pre-logon.campaign-page header.glovalHeader .headerRight {
        right: 6px;
    }

    body#pre-logon.campaign-page footer.glovalFooter .copyright {
        margin-left: 0 !important;
    }
}

@media (max-width: 424px) {
    body#pre-logon.campaign-page .w-75 {
        width: 100% !important;
    }
}

/* start-page (when JS is disabled)
-------------------------------------------- */
.js-required {
    width: 100%;
    padding-top: 50px;
}

.js-required-inner {
    max-width: 545px;
    margin-left: auto;
    margin-right: auto;
    padding: 15px;
    background-color: #ffffff;
    border-radius: 2px;
}

.js-required-inner h2 {
    font-size: 2rem;
    font-wight: 500;
    padding-bottom: 5px;
    border-bottom: 1px solid #000000;
}

.js-required-inner p {
    margin-top: 5px;
}

@media (max-width: 960px) {
    .js-required {
        margin-top: 100px;
    }
}

/* C-X / Security audit
-------------------------------------------- */
ul.square-ul {
    list-style-type: square;
    padding-left: revert;
}

ul.disc-ul {
    list-style-type: disc;
    padding-left: revert;
}

.red-text {
    color: #FF0000;
}

.blue-text {
    color: #42a5f5;
}

.display-none {
    display: none;
}

.display-block {
    display: block;
}

input.terms-and-conditions {
    width: 20px;
    height: 20px;
    border: 2px solid #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

input.terms-and-conditions:checked {
    background-color: #2767d4;
}

input.terms-and-conditions:checked::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 6px;
    width: 6px;
    height: 12px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.start-page-border {
    height: 250px;
    width: 100%;
    max-width: 510px;
    overflow: auto;
    border: 1px solid rgba(0, 0, 0, 0.12);
}

.add-label2 {
    behavior: url(/behaviors/addLabel2.htc)
}

.font-size-16 {
    font-size:16px;
}

.font-size-17 {
    font-size:17px;
}

.font-size-18 {
    font-size:18px;
}

.font-family-arial {
    font-family:Arial;
}

/*
style used in DB templates
inline style are not CSP compliant so the classes are set here
Currently only colors but add anything needed
-------------------------------------------- */
.text-primary-red {
    color: #e74c3c;
}

.text-primary-blue {
    color: #2766d4;
}

.text-light-blue {
    color: #3498db;
}

.text-bright-red {
    color: #f92525;
}

.text-primary-blue-alt {
    color: #2767d4;
}

.text-dark-red {
    color: #c0392b;
}

.text-maroon {
    color: #800000;
}