@charset "utf-8";
html, button, input, select, textarea {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

body {
    font-size: 13px;
    line-height: 1.6;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
    margin: 0;
    color: #333333;
    background: url(../../common/img/bg_all.png) repeat center 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio, canvas, iframe, img, svg, video {
    vertical-align: top;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

img, object, embed, video {
    max-width: 100%;
}

.ie6 img {
    width: 100%;
}

a {
    outline: 0 none;
    text-decoration: none;
    color: #3F1F00;
}

a:hover {
    text-decoration: underline;
}

.alpha a:hover {
    opacity: 0.7;
}

ol, ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
}

.inner {
    margin: auto;
    width: 100%;
}

.pc_view {
    display: none;
}

#header {
    background-color: #ffffff;
    padding: 0;
}

#headTop {
    background-color: #ffffff;
    padding: 0;
    height: 110px;
}

#logo {
    margin: 10px 10px 20px 10px;
    float: left;
}

#logo img {
    width: auto;
    height: 30px;
}

.headRight {
    float: right;
    margin-top: 10px;
    width: 100%;
    position: relative;
    top: -80px;
}

#h_sns {
    float: right;
    margin-bottom: 0px;
    height: 17px;
    text-align: center;
    position: relative;
    top: 10px;
    right: 50px;
}

#h_sns li {
    display: inline-block;
    width: 25px;
    height: 25px;
    line-height: 25px;
    border-radius: 50%;
    border: 1px solid #CCC3B8;
}

#h_sns li img {
    height: 17px;
    width: auto;
    vertical-align: middle!important;
}

#h_sns li:nth-child(1), #h_sns li:nth-child(2) {
    margin-right: 5px !important;
}

#h_sns li:nth-child(3) {
    margin-right: 0 !important;
}

#h_sns li a {
    color: #1F1F2C;
    display: block;
}

#h_sns li a:hover {
    text-decoration: none;
}

#head_search {
    position: relative;
    top: 30px;
    float: right;
    width: 100%;
    height: 0;
}

#head_search form {
    background: url(../../common/img/bg_all.png) repeat center 0;
    padding: 5px 0;
}

dl.search2 {
    position: relative;
    background-color: #F4F4F4;
    border: 1px solid #E0E0E0;
    height: 31px;
    margin: 10px 15%;
}

dl.search2 dt {
    padding: 0 0 0 10px;
}

dl.search2 dt input {
    width: 228px;
    line-height: 31px;
    background: none;
    border: none;
}

dl.search2 dd {
    position: absolute;
    top: 0;
    right: 0;
}

dl.search2 dd button {
    display: block;
    padding: 6px;
    background: none;
    border: none;
}

dl.search2 dd button span {
    display: block;
    width: 18px;
    height: 17px;
    background: url('../../common/img/search.png') no-repeat scroll 0 0;
    background-size: 18px 17px;
}

#home #container {
    margin: 0 auto;
}

#home #main {}

#container .column {
    margin-top: 23px;
}

.bx-wrapper {
    margin: 0;
}

#bxslider_Box {
    position: relative;
}

.bxslider {}

#bxslider_Box .inner {
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    text-align: center;
}

#bxslider_Box .bxslider li img {
    vertical-align: top;
}

#home #container, #sub #container, #sec_SliderBox {
    margin: auto !important;
    overflow: hidden;
    *zoom: 1;
    max-width: 1140px;
}

#sub-details #container {
    margin: auto !important;
    overflow: hidden;
    *zoom: 1;
}

.itemBox {
    box-sizing: border-box;
    width: 100%;
    margin: 40px auto 0 auto;
    overflow: hidden;
    height: auto;
}

.item {
    float: left;
    overflow: hidden;
    position: relative;
    width: 208px;
    height: 182px;
    background-color: #FFF;
    margin: 0 10px 40px 10px;
}

.item .title {
    height: 23px;
    text-align: center;
    font-size: 11px;
    line-height: 26px;
}

.item .new {
    position: absolute;
    top: 0;
    left: 0;
}

.item a.new {
    border: 1px solid #F00;
}

.item .new img {
    width: 46px;
    height: 38px;
    display: block;
}

.item figure {
    width: 208px;
    height: 100px;
    padding: 0;
    margin: 0;
}

.item figure img {
    margin: 0 auto;
    display: block;
}

.item .txt {
    background-color: #FFF;
    font-size: 12px;
    width: 180px;
    height: 33px;
    padding: 5px 14px 12px 14px;
}

.item .txt p {
    height: 34px;
    overflow: hidden;
    text-overflow: ellipsis;
    -moz-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.item li a {
    display: block;
}

.item a:hover {
    display: block;
    text-decoration: none;
    filter: alpha(opacity=70);
    opacity: 0.7;
}

.item .power {
    border-top: 3px solid #E2AA1E;
    color: #E2AA1E;
}

.item .research {
    border-top: 3px solid #277980;
    color: #277980;
}

.item .consulting {
    border-top: 3px solid #3879DA;
    color: #3879DA;
}

.item .course {
    border-top: 3px solid #9590C1;
    color: #9590C1;
}

.item .people {
    border-top: 3px solid #6BB120;
    color: #6BB120;
}

.item .staff {
    border-top: 3px solid #998671;
    color: #998671;
}

#footer {
    overflow: hidden;
    background-color: #A98A6B;
}

#fNavBox {
    position: relative;
    background: url('../../common/img/bg_f.png') repeat scroll 0 0;
}

#fNav ul {
    border-bottom: 1px solid #AE9479;
}

#fNav ul li {
    border-top: 1px solid #715B4D;
}

#fNav ul li a:hover {
    background: #89745F;
}

#fLink {
    box-sizing: border-box;
    border-left: 1px solid #AE9479;
    display: table;
}

#fLink li {
    width: 33.3%;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #AE9479;
}

#fLink li img {
    display: block;
    margin: 0 auto 4px;
    vertical-align: middle;
    width: auto;
    height: 60px;
}

#fLink li a {
    text-align: center;
    display: block;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 12px;
    color: #FFF;
}

#fLink li a:hover {
    background: #98816D;
    text-decoration: none;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

#copyright {
    height: 46px;
    line-height: 46px;
    text-align: center;
    font-size: 12px;
    color: #FFF;
    background-color: #000000;
}

.legal {
    color: #fff;
    font-size: 12px;
    margin-left: 20px;
}

.pagetop {
    background-image: url(../img/pagetop.png);
    background-repeat: no-repeat;
    width: 53px;
    height: 53px;
    content: "";
    position: fixed;
    right: 10px;
    bottom: 80px;
    z-index: 999999;
}

#breadcrumb {
    position: relative;
    overflow: hidden;
    background: url('../../common/img/line01.png') repeat-x 0 bottom;
}

#breadcrumb:before {
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: url('../../common/img/line01.png') repeat-x top left;
    background-size: 1px 2px;
}

#breadcrumb ol {
    margin: 12px 0 12px 0.9%;
    text-align: left;
}

#breadcrumb ol li {
    display: inline;
    font-size: 12px;
    color: #4C5259;
}

#breadcrumb li:before {
    content: " > ";
}

#breadcrumb li:first-child:before {
    content: none;
}

#breadcrumb ol li a {
    color: #3F1F00;
    font-weight: bold;
}

.Ttl_sec {
    text-align: center;
    margin: 30px auto 0;
}

.Ttl_sec h2 {
    display: inline-block;
    color: #5A5A5A;
    font-size: 1.4rem;
    padding: 0 16px 0;
    line-height: 30px;
    border-bottom: 2px solid #5C5C5C;
}

.Ttl_sec h3 {
    margin-top: 2px;
    color: #8D8D8D;
    font-size: 12px;
    font-weight: normal;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.linkLine a {
    color: #9D7E62;
    position: relative;
    display: inline-block;
    transition: .3s;
}

.linkLine a::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #9D7E62;
    transition: .3s;
}

.linkLine a:hover::after {
    width: 100%;
}

.linkLine a:hover {
    opacity: 0.6;
    text-decoration: none;
}

a.linkLine02 {
    color: #5978BB;
    font-weight: bold;
    position: relative;
    display: inline-block;
    transition: .3s;
}

a.linkLine02::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #5978BB;
    transition: .3s;
}

a:hover.linkLine02::after {
    width: 100%;
}

a:hover.linkLine02 {
    opacity: 0.6;
    text-decoration: none;
}

a.linkLine03 {
    color: #9d7e62;
    position: relative;
    display: inline-block;
    transition: .3s;
}

a.linkLine03::after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 0;
    height: 1px;
    background-color: #9d7e62;
    transition: .3s;
}

a:hover.linkLine03::after {
    width: 100%;
}

a:hover.linkLine03 {
    opacity: 0.6;
    text-decoration: none;
}

.bt_more {
    overflow: hidden;
    margin: 0 20px 45px;
    text-align: center;
}

.bt_more a {
    display: block;
    position: relative;
    font-size: 17px;
    font-weight: bold;
    line-height: 1;
    background-color: #5A5A5A;
    color: #FFF;
    text-decoration: none;
    padding: 18px 20px 18px 30px!important;
}

.bt_more a:after {
    position: absolute;
    display: block;
    top: 18px;
    right: 31px;
    content: "";
    width: 16px;
    height: 16px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.bt_more a:hover, .bt_contact a:hover {
    opacity: 0.8;
}

.bt_contact {
    overflow: hidden;
    padding-top: 28px;
    text-align: center;
}

.bt_contact a {
    display: block;
    position: relative;
    font-size: 13px;
    font-weight: bold;
    line-height: 1;
    background-color: #5A5A5A;
    color: #FFF;
    text-decoration: none;
    padding: 18px 20px 18px 30px!important;
}

.bt_contact a:after {
    position: absolute;
    display: block;
    top: 18px;
    right: 31px;
    content: "";
    width: 10px;
    height: 10px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.icon_PDF {
    background-color: #BD090A;
    width: 32px;
    height: 14px;
    line-height: 14px;
    vertical-align: middle;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    color: #FFF;
    display: inline-block;
}

.grid, .grid:after, .grid:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.grid {
    position: relative;
    clear: both;
    max-width: 1000px;
    list-style: none;
    text-align: center;
}

.grid figure {
    position: relative;
    float: left;
    overflow: hidden;
    margin: 0;
    min-width: 202px;
    max-width: 202px;
    max-height: 360px;
    width: 48%;
    height: auto;
    background-color: #FFF !important;
    text-align: center;
    cursor: pointer;
}

.grid figure img {
    position: relative;
    display: block;
    width: auto;
    height: auto;
    max-width: 202px;
    max-height: 100%;
    opacity: 0.8;
    margin: 0 auto;
    text-align: center;
}

.grid figure figcaption {
    padding: 1em;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.25em;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.grid figure figcaption::before, .grid figure figcaption::after {
    pointer-events: none;
}

.grid figure figcaption, .grid figure figcaption>a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.grid figure figcaption>a {
    z-index: 1000;
    text-indent: 200%;
    white-space: nowrap;
    font-size: 0;
    opacity: 0;
}

.grid figure h2 {
    word-spacing: -0.15em;
    font-weight: 300;
}

.grid figure h2 span {
    font-weight: 800;
}

.grid figure h2, .grid figure p {
    margin: 0;
}

.grid figure p {
    letter-spacing: 1px;
}

figure.effect-ming {}

figure.effect-ming img {
    opacity: 0.9;
    -webkit-transition: opacity 0.35s;
    transition: opacity 0.35s;
}

figure.effect-ming figcaption::before {
    position: absolute;
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
    border: 2px solid #fff;
    box-shadow: 0 0 0 30px rgba(255, 255, 255, 0.2);
    content: '';
    opacity: 0.3;
    -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
    transition: opacity 0.35s, transform 0.35s;
    -webkit-transform: scale3d(1.4, 1.4, 1);
    transform: scale3d(1.4, 1.4, 1);
}

figure.effect-ming h2 {
    margin: 20% 0 10px 0;
    -webkit-transition: -webkit-transform 0.35s;
    transition: transform 0.35s;
}

figure.effect-ming p {
    font-weight: bold;
    font-size: 20px!important;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
    padding: 6em 1em;
    opacity: 0;
    -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
    transition: opacity 0.35s, transform 0.35s;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}

figure.effect-ming:hover h2 {
    -webkit-transform: scale(0.9);
    transform: scale(0.9);
}

figure.effect-ming:hover figcaption::before, figure.effect-ming:hover p {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
}

figure.effect-ming:hover figcaption {
    background: url(../img/bg_effect.png) repeat 0 0;
}

figure.effect-ming:hover img {
    opacity: 0.4;
}

.item .kaeruhito {
    border-top: 3px solid #6BB120;
    color: #6BB120;
}

.item .kaeruchikara {
    border-top: 3px solid #E2AA1E;
    color: #E2AA1E;
}

.item .policy {
    border-top: 3px solid #277980;
    color: #277980;
}

.item .policy.globalRisks {
    border-top: 3px solid #f40808;
    color: #f40808;
}

.item .policyreview {
    border-top: 3px solid #AD1F1F;
    color: #AD1F1F;
}

.item .researchevent {
    border-top: 3px solid #666;
    color: #666;
}

.item .chiiki100 {
    border-top: 3px solid #FF9900;
    color: #FF9900;
}

.item .miraiclub {
    border-top: 3px solid #CC3399;
    color: #CC3399;
}

.item .innovation {
    border-top: 3px solid #4a7ebb;
    color: #4a7ebb;
}

.item .commentary,
.item .voice,
.item .voice.special {
    border-top: 3px solid #f40808;
    color: #f40808;
}

@media screen and (max-width:320px) {
    .item li {
        width: 262px;
    }
}

@media print, screen and (min-width:481px) {
    .inner {
        width: 100%;
    }
}

@media print, screen and (max-width:550px) {
    
    #copyright {
        height: auto;
    }

    #copyright .inner span {
        display:block;
    }

    .legal {
        margin-left: 0;
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .pc_view {
        display: block;
    }
    #headTop p {
        padding-top: 15px;
    }
    #h_sns li span {
        display: none;
    }
    a.toggleButton {
        width: 170px!important;
    }
    .Ttl_sec h2 {
        font-size: 25px;
    }
    .bt_more {
        margin: 20px auto 60px auto;
        width: 480px;
    }
}
@media print, screen and (max-width:1024px) {
    
    #headTop {
        position: fixed;
        z-index: 997;
        height: 50px;
    }

    #head_search form {
        background: none;
        padding: 1px 0;
    }

    dl.search2 {
        display: none;
    }

    #home #main {
        padding-top: 70px;
    }

    #breadcrumb {
        padding-top: 50px;
    }
}


@media print, screen and (min-width:1025px) {
    .pc_view {
        display: block;
    }
    .sp_view {
        display: none;
    }
    .inner {
        position: relative;
        width: 1130px!important;
        margin: 0 auto;
    }
    #home #container {
        margin: 93px auto 0 auto;
    }
    #sub #container {
        margin: 0 auto;
    }
    #home #container {}
    #container .column {
        margin-top: 43px;
    }
    #header {
        background-color: #ffffff;
        padding: 0;
    }
    #headTop {
        background-color: #ffffff;
        padding: 0;
        height: 140px;
    }
    #logo {
        margin: 30px 22px 0 0;
        float: left;
    }
    #logo img {
        width: 206px;
        height: 78px;
    }
    #header p {
        color: #000;
        width: 280px;
        margin-top: 60px;
        text-align: left;
        font-size: 13px;
        line-height: 18px;
        float: left;
    }
    .headRight {
        width: 320px;
        float: right;
        position: relative;
        top: 8px;
        right: 0;
        margin: 0;
    }
    #h_sns {
        float: right;
        width: 376px;
        height: 17px;
        text-align: right;
        font-size: 12px;
        position: relative;
        right: 0;
    }
    #h_sns li {
        width: auto;
        height: 17px;
        line-height: 17px;
        vertical-align: middle;
        text-align: right;
        border-radius: 0;
        border: none;
    }
    #h_sns li:nth-child(1) {
        padding-right: 18px;
        width: 72px;
    }
    #h_sns li:nth-child(2) {
        width: 64px;
        padding-right: 18px;
    }
    #h_sns li:nth-child(3) {
        width: 96px;
    }
    #h_sns li img {
        text-align: right;
        float: left;
        margin-right: 4px;
    }
    #h_sns li span {
        float: right;
    }
    #h_sns li a {
        color: #1F1F2C;
    }
    #h_sns li a:hover {
        text-decoration: none;
    }
    #head_search {
        float: right;
        width: 228px;
        background: none;
        position: relative;
        top: 29px;
        right: 0;
    }
    #head_search form {
        background: none;
    }
    dl.search2 {
        position: relative;
        background-color: #F4F4F4;
        border: none;
        height: 31px;
        margin: 0;
    }
    dl.search2 dt {
        padding: 0 0 0 10px;
    }
    dl.search2 dt input {
        width: 228px;
        line-height: 31px;
        background: none;
        border: none;
    }
    dl.search2 dd {
        position: absolute;
        top: 0;
        right: 0;
    }
    dl.search2 dd button {
        display: block;
        padding: 6px;
        background: none;
        border: none;
    }
    dl.search2 dd button span {
        display: block;
        width: 18px;
        height: 17px;
        background: url('../../common/img/search.png') no-repeat scroll 0 0;
        background-size: 18px 17px;
    }
    .bx-wrapper {
        margin: 0 auto 60px;
    }
    .bx-wrapper .bx-pager.bx-default-pager a {
        background: #666;
        text-indent: -9999px;
        display: block;
        width: 12px;
        height: 12px;
        margin: 0 5px;
        outline: 0;
        -moz-border-radius: 6px;
        -webkit-border-radius: 6px;
        border-radius: 6px;
    }
    .bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active {
        background: #000;
    }
    #bxslider_Box {
        position: relative;
    }
    .bxslider {}
    #bxslider_Box .inner {
        border: 1px solid #F9C;
        position: absolute;
        width: 1120px;
        height: 490px;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        text-align: center;
    }
    #home .itemBox {
        margin: 43px auto 15px;
    }
    #sub .itemBox {
        margin: 43px auto 0 auto;
    }
    .item {
        margin-bottom: 40px;
    }
    #footer {
        background-color: #A98A6B;
    }
    #fNavBox {
        position: relative;
        background: url('../../common/img/bg_f.png') repeat scroll 0 0;
    }
    #fNavBox:before {
        background: none;
    }
    #fNavBox:after {
        background: none;
    }
    #fNav ul li a:hover {
        background: none;
        opacity: 0.6;
    }
    #fLink {
        box-sizing: border-box;
        height: 63px;
        border-left: 1px solid #AE9479;
        display: table;
    }
    #fLink li {
        width: 33.3%;
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        border-right: 1px solid #AE9479;
    }
    #fLink li img {
        display: inline-block;
        margin-right: 36px;
        vertical-align: middle;
        width: 60px;
        height: 60px;
    }
    #fLink li a {
        display: block;
        height: 63px;
        padding-top: 19px;
        font-size: 15px;
        color: #FFF;
    }
    #fLink li a:hover {
        background: #98816D;
        text-decoration: none;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
    }
    #copyright {
        height: 46px;
        line-height: 46px;
        text-align: center;
        font-size: 12px;
        color: #FFF;
        background-color: #000000;
    }
    #breadcrumb:before {
        background: none;
    }
    .Ttl_sec {
        text-align: center;
        margin: 40px auto 0;
    }
    .Ttl_sec h2 {
        display: inline-block;
        color: #5A5A5A;
        font-size: 34px;
        padding: 0 16px 0;
        line-height: 50px;
        border-bottom: 2px solid #5C5C5C;
    }
    .Ttl_sec h3 {
        font-size: 13px;
    }
    .bt_more {
        margin: 0 auto 89px auto;
        width: 480px;
    }
    .copyright {
        margin-left: 168px;
    }
}

@media only screen and (min-width:1340px) {
    #home #main {
        width: 100%;
        overflow: hidden;
        position: relative;
    }
    #home #main:before {
        content: " ";
        position: absolute;
        top: 480px;
        left: 0;
        width: 176px;
        height: 196px;
        background: url(../../common/img/bg_left.png) no-repeat top left;
        background-size: 176px 196px;
    }
    #home #main:after {
        content: " ";
        position: absolute;
        top: 740px;
        right: 0;
        width: 176px;
        height: 302px;
        background: url(../../common/img/bg_right.png) no-repeat top right;
        background-size: 176px 302px;
        z-index: -1;
    }
    #fNavBox:before {
        content: " ";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 98px;
        height: 54px;
        background: #A98A6B url(../../common/img/bg_fleft.png) no-repeat bottom left;
        background-size: 98px 70px;
    }
    #fNavBox:after {
        content: " ";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 98px;
        height: 54px;
        background-color: #A98A6B;
        background: url(../../common/img/bg_fright.png) no-repeat bottom right;
        background-size: 98px 70px;
    }
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden, .sp_vh {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

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

.clearfix:after, .row:after {
    clear: both;
}

.clearfix, .row {
    *zoom: 1;
}