/*!
 * ress.css â€¢ v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
 html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%
}

*,::before,::after {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

::before,::after {
    text-decoration: inherit;
    vertical-align: inherit
}

* {
    padding: 0;
    margin: 0
}

audio:not([controls]) {
    display: none;
    height: 0
}

hr {
    overflow: visible
}

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary {
    display: block
}

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden],template {
    display: none
}

abbr[title] {
    border-bottom: 1px dotted;
    text-decoration: none
}

a {
    background-color: rgba(0,0,0,0);
    -webkit-text-decoration-skip: objects
}

a:active,a:hover {
    outline-width: 0
}

code,kbd,pre,samp {
    font-family: monospace,monospace
}

b,strong {
    font-weight: bolder
}

dfn {
    font-style: italic
}

mark {
    background-color: #ff0;
    color: #000
}

sub,sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

input {
    border-radius: 0
}

button,[type=button],[type=reset],[type=submit],[role=button] {
    cursor: pointer
}

[disabled] {
    cursor: default
}

[type=number] {
    width: auto
}

[type=search] {
    -webkit-appearance: textfield
}

[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

textarea {
    overflow: auto;
    resize: vertical
}

button,input,optgroup,select,textarea {
    font: inherit
}

optgroup {
    font-weight: bold
}

button {
    overflow: visible
}

button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    border-style: 0;
    padding: 0
}

button:-moz-focusring,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {
    outline: 1px dotted ButtonText
}

button,html [type=button],[type=reset],[type=submit] {
    -webkit-appearance: button
}

button,select {
    text-transform: none
}

button,input,select,textarea {
    background-color: rgba(0,0,0,0);
    border-style: none;
    color: inherit
}

select {
    -moz-appearance: none;
    -webkit-appearance: none
}

select::-ms-expand {
    display: none
}

select::-ms-value {
    color: currentColor
}

legend {
    border: 0;
    color: inherit;
    display: table;
    max-width: 100%;
    white-xsace: normal
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

svg:not(:root) {
    overflow: hidden
}

audio,canvas,progress,video {
    display: inline-block
}

@media screen {
    [hidden~=screen] {
        display: inherit
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important
    }
}

[aria-busy=true] {
    cursor: progress
}

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

::-moz-selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

::selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none
}

*,*:before,*:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    scroll-behavior: smooth
}

body {
    -webkit-text-size-adjust: 100%;
    color: #000;
    line-height: 1.75
}

.is-modal-inactive body {
    overflow-y: clip
}

.is-modal-active body {
    overflow-y: visible
}

img {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: bottom
}

a {
    color: inherit;
    outline: none
}

ul,ol {
    list-style: none
}

:root {
    --content-width: 768px
}

.l-spc-unit .l-spc-unit__box {
    display: block;
    margin-left: auto;
    margin-right: auto
}

@media only screen {
    .l-spc-unit.-spc-solid .l-spc-unit__box {
        width: auto
    }
}

@media only screen and (min-width: 480px) {
    .l-spc-unit.-spc-solid .l-spc-unit__box {
        width:auto
    }
}

@media only screen and (min-width: 769px),tv,print {
    .l-spc-unit.-spc-solid .l-spc-unit__box {
        width:769px
    }
}

@media only screen and (min-width: 960px) {
    .l-spc-unit.-spc-solid .l-spc-unit__box {
        width:960px
    }
}

@media only screen and (min-width: 1230px) {
    .l-spc-unit.-spc-solid .l-spc-unit__box {
        width:1230px
    }
}

@media only screen {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        width: auto
    }
}

@media only screen and (min-width: 480px) {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        width:auto
    }
}

@media only screen and (min-width: 769px),tv,print {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        width:739px
    }
}

@media only screen and (min-width: 960px) {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        width:930px
    }
}

@media only screen and (min-width: 1230px) {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        width:1020px
    }
}

@media only screen and (max-width: 768.98px) {
    .l-spc-unit.-spc-solid.-spc-pad .l-spc-unit__box {
        padding-left:15px;
        padding-right: 15px
    }
}

@media only screen and (max-width: 768.98px) {
    .l-spc-unit.-spc-solid.-spc-pad.-spc-sm-wide .l-spc-unit__box {
        padding-left:0;
        padding-right: 0
    }
}

.l-spc-unit.-spc-img {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top
}

.l-spc-unit.-spc-img-cover-bottom {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom
}

.l-spc-unit.-spc-d-flex-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%
}

@media only screen and (min-width: 769px),tv,print {
    .l-spc-unit.-spc-md .l-spc-unit__box {
        width:768px
    }
}

@media only screen and (max-width: 768.98px) {
    .l-spc-unit.-spc-md .l-spc-unit__box {
        padding-left:15px;
        padding-right: 15px
    }
}

@media only screen and (min-width: 769px),tv,print {
    .l-spc-unit.-spc-md .l-spc-unit__box.-customWidth {
        max-width:var(--content-width, 768px);
        width: 100%
    }
}

@media only screen and (max-width: 768.98px) {
    .l-spc-unit.-spc-md .l-spc-unit__box.-customWidth {
        padding-left:0px;
        padding-right: 0px
    }
}

.l-wrapper {
    overflow: hidden
}

.a-spc-btn {
    display: inline-block;
    padding: 0;
    border: none;
    text-decoration: none;
    text-align: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: inherit;
    -webkit-transition: opacity .3s;
    transition: opacity .3s
}

.a-spc-btn:hover {
    opacity: .4
}

.a-spc-btn.-spc-block {
    display: block;
    width: 100%
}

@media only screen and (max-width: 959.98px) {
    .a-spc-btn.-spc-md-block {
        display:block;
        width: 100%
    }
}

.a-spc-btn.-spc-r-arrow:after {
    content: "";
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
    right: 15px;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000
}

@media only screen and (max-width: 768.98px) {
    .a-spc-btn.-spc-w100 {
        width:100%
    }
}

:root {
    --txt-base: 16px;
    --txt-pc: 16px;
    --txt-sp: 16px
}

.a-spc-txt {
    font-style: normal;
    font-family: "Roboto","Noto Sans JP";
    overflow-wrap: break-word
}

.a-spc-txt.-spc-variable {
    font-size: var(--txt-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-variable {
        font-size:var(--txt-pc)
    }
}

.a-spc-txt.-spc-lv1 {
    font-size: 32px;
    font-size: 2rem;
    line-height: 1.2
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv1 {
        font-size:60px;
        font-size: 3.75rem
    }
}

.a-spc-txt.-spc-lv2 {
    font-size: 20px;
    font-size: 1.25rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv2 {
        font-size:40px;
        font-size: 2.5rem
    }
}

.a-spc-txt.-spc-lv3 {
    font-size: 18px;
    font-size: 1.125rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv3 {
        font-size:24px;
        font-size: 1.5rem
    }
}

.a-spc-txt.-spc-lv4 {
    font-size: 16px;
    font-size: 1rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv4 {
        font-size:20px;
        font-size: 1.25rem
    }
}

.a-spc-txt.-spc-lv5 {
    font-size: 14px;
    font-size: 0.875rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv5 {
        font-size:16px;
        font-size: 1rem
    }
}

.a-spc-txt.-spc-lv6 {
    font-size: 14px;
    font-size: 0.875rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv6 {
        font-size:14px;
        font-size: 0.875rem
    }
}

.a-spc-txt.-spc-lv7 {
    font-size: 12px;
    font-size: 0.75rem
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-lv7 {
        font-size:12px;
        font-size: 0.75rem
    }
}

.a-spc-txt.-spc-left {
    text-align: left
}

.a-spc-txt.-spc-center {
    text-align: center
}

.a-spc-txt.-spc-point:before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    background-color: #505050;
    vertical-align: middle;
    margin-right: 5px
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-point:before {
        width:6px;
        height: 6px
    }
}

.a-spc-txt.-spc-under-line {
    border-bottom: 1px solid #505050;
    padding-bottom: 5px
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-under-line {
        padding-bottom:10px
    }
}

.a-spc-txt.-spc-fw-bold {
    font-weight: 700
}

.a-spc-txt.-spc-fw-normal {
    font-weight: 400
}

.a-spc-txt.-spc-text-line {
    text-decoration: underline
}

.a-spc-txt.-spc-h15 {
    line-height: 1.5
}

.a-spc-txt.-spc-white {
    color: #fff
}

.a-spc-txt.is-spc-sticky {
    position: -webkit-sticky;
    position: sticky
}

.a-spc-txt.-spc-txt-normal {
    margin: 0px 0 0
}

@media only screen and (min-width: 769px),tv,print {
    .a-spc-txt.-spc-txt-normal {
        margin:0px 0 0
    }
}

.a-spc-link {
    line-height: 1.5
}

.a-spc-link.-spc-white {
    color: #fff
}

.a-spc-link.-spc-under-line {
    text-decoration: underline
}

.a-spc-link.-spc-under-line:hover {
    text-decoration: none
}

.a-spc-link.-spc-under-line-none {
    text-decoration: none
}

.m-spc-photobox {
    display: inline-block
}

.m-spc-photobox>img {
    border-radius: 20px
}

.m-spc-photobox.-spc-wide {
    display: block
}

.m-spc-photobox.-spc-wide>img {
    width: 100%
}

.m-spc-photobox.-spc-linkbox {
    text-decoration: none
}

.m-spc-photobox.-spc-photobox-normal {
    margin: 0px 0px 0px 0px
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-photobox.-spc-photobox-normal {
        margin: 40px 0px 0px 0px
    }
}

.m-spc-photobox.-spc-photobox-normal2 {
    margin: 0px 0px 0px 0px
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-photobox.-spc-photobox-normal2 {
        margin: 10px 0px 10px 0px
    }
}

.m-spc-photobox.-spc-photobox-normal3 {
    margin: 0px 0px 20px 0px
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-photobox.-spc-photobox-normal3 {
        margin: 20px 0px 60px 0px
    }
}

.m-spc-contbox {
    display: block;
    line-height: 1.5;
    font-size: 14px;
    font-size: 0.875rem
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-contbox {
        font-size:16px;
        font-size: 1rem
    }
}

.m-spc-contbox.-spc-contbox-normal {
    margin: 40px auto 0
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-contbox.-spc-contbox-normal {
        margin:52px auto 0
    }
}

@media only screen and (max-width: 768.98px) {
    .m-spc-contbox.-spc-tablebox {
        padding-left:24px;
        padding-right: 24px
    }
}

.m-spc-contbox.-spc-left {
    text-align: left
}

.m-spc-contbox.-spc-center {
    text-align: center
}

.m-spc-contbox.-wide-2col>* {
    margin: 40px 0
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-contbox.-wide-2col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-left: -10px;
        margin-right: -10px
    }

    .m-spc-contbox.-wide-2col>* {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
        margin: 0 10px
    }
}

.m-spc-list {
    font-family: "Roboto","Noto Sans JP";
    overflow-wrap: break-word
}

.m-spc-list.-spc-list-normal {
    margin: 40px 0 0
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-list.-spc-list-normal {
        margin:52px 0 0
    }
}

.m-spc-list.-spc-narrow {
    padding-left: 1em
}

.m-spc-list.-spc-narrow>li:before {
    margin-left: -1em
}

.m-spc-list.-spc-point>li:before {
    content: "ãƒ»";
    display: inline-block
}

.m-spc-list.-spc-color-white {
    color: #fff
}

.m-spc-list.-spc-fw-bold {
    font-weight: 700
}

.m-spc-list.-spc-fw-normal {
    font-weight: 400
}

.m-spc-card {
    color: #fff;
    font-family: "Roboto","Noto Sans JP";
    overflow-wrap: break-word
}

.m-spc-card.-features {
    max-width: 224px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.m-spc-card.-features.-fullWidth {
    margin-top: 24px;
    max-width: 100%
}

.m-spc-card.-spc-link-cont {
    text-decoration: none
}

.m-spc-card__thumb {
    width: 100%
}

.m-spc-card__thumb>img {
    border-radius: 16px;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.m-spc-card.-rounded8 .m-spc-card__thumb>img {
    border-radius: 8px
}

.m-spc-card.-features .m-spc-card__text {
    margin-top: 16px
}

.m-spc-iconbox {
    text-align: center
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-iconbox {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        text-align: left
    }
}

.m-spc-iconbox.-spc-iconbox-normal {
    margin: 40px 0 0
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-iconbox.-spc-iconbox-normal {
        margin:52px 0 0
    }
}

.m-spc-iconbox__icon {
    display: block
}

@media only screen and (max-width: 768.98px) {
    .m-spc-iconbox__cont {
        margin-top:20px
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-iconbox__cont {
        -webkit-box-flex:1;
        -ms-flex: 1;
        flex: 1;
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center
    }

    .m-spc-iconbox.-spc-lg .m-spc-iconbox__cont {
        padding-left: 60px
    }

    .m-spc-iconbox.-spc-md .m-spc-iconbox__cont {
        padding-left: 40px
    }
}

@media only screen and (max-width: 768.98px) {
    .m-spc-iconbox__cont__ttl {
        margin-top:40px
    }
}

.m-spc-table {
    border-top: 1px solid #c9c9c9;
    color: #efefef
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table1col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table1col>* {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table2col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table2col>* {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table3col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table3col>* {
        -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
        max-width: 33.3333333333%
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table4col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table4col>* {
        -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
        max-width: 25%
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table5col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table5col>* {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        max-width: 20%
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table.-spc-table6col {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .m-spc-table.-spc-table6col>* {
        -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%;
        max-width: 16.6666666667%
    }
}

.m-spc-table__cell {
    border-bottom: 1px solid #c9c9c9;
    padding: 8px 10px;
    text-align: center
}

.m-spc-table.-spc-table1col .m-spc-table__cell {
    border-right: none
}

.m-spc-table.-spc-left .m-spc-table__cell {
    text-align: left
}

.m-spc-table.-spc-center .m-spc-table__cell {
    text-align: center
}

.m-spc-table.-spc-right .m-spc-table__cell {
    text-align: right
}

.a-spc-txt.-spc-right{
    text-align: right
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table__cell {
        border-right:1px solid #c9c9c9
    }

    .m-spc-table.-spc-table2col .m-spc-table__cell:nth-child(2n) {
        border-right: none
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table__cell {
        border-right:1px solid #c9c9c9
    }

    .m-spc-table.-spc-table3col .m-spc-table__cell:nth-child(3n) {
        border-right: none
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table__cell {
        border-right:1px solid #c9c9c9
    }

    .m-spc-table.-spc-table4col .m-spc-table__cell:nth-child(4n) {
        border-right: none
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table__cell {
        border-right:1px solid #c9c9c9
    }

    .m-spc-table.-spc-table5col .m-spc-table__cell:nth-child(5n) {
        border-right: none
    }
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-table__cell {
        border-right:1px solid #c9c9c9
    }

    .m-spc-table.-spc-table6col .m-spc-table__cell:nth-child(6n) {
        border-right: none
    }
}

.m-spc-link-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 8px;
    text-decoration: none;
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    background-color: #fff
}

.m-spc-link-box:hover {
    opacity: .7
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-link-box {
        -webkit-box-orient:vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.m-spc-link-box.-simple {
    display: block;
    background-color: rgba(0,0,0,0)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-link-box.-simple {
        -webkit-box-orient:horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row
    }
}

.m-spc-link-box__img {
    position: relative
}

@media only screen and (max-width: 768.98px) {
    .m-spc-link-box__img {
        -ms-flex-preferred-size:108px;
        flex-basis: 108px;
        max-width: 108px
    }
}

.m-spc-link-box__img>img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-link-box__img>img {
        height:auto
    }
}

.m-spc-link-box.-simple .m-spc-link-box__img {
    border-radius: 8px
}

@media only screen and (max-width: 768.98px) {
    .m-spc-link-box.-simple .m-spc-link-box__img {
        -ms-flex-preferred-size:100%;
        flex-basis: 100%;
        max-width: 100%
    }
}

.m-spc-link-box.-simple .m-spc-link-box__img>img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    border-radius: 8px;
    height: 100%
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-link-box.-simple .m-spc-link-box__img>img {
        border-radius:8px;
        height: auto
    }
}

.m-spc-link-box__title {
    color: #454545;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 15px
}

@media only screen and (max-width: 768.98px) {
    .m-spc-link-box__title {
        -ms-flex-preferred-size:calc(100% - 108px);
        flex-basis: calc(100% - 108px);
        max-width: calc(100% - 108px);
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.m-spc-link-box__title>span {
    -webkit-transform: scale(0.8, 1);
    transform: scale(0.8, 1);
    line-height: 1.1;
    font-size: 16px;
    font-size: 1rem;
    text-align: center;
    margin: 0 -15%;
    display: block;
    margin-bottom: 3px
}

.m-spc-link-box.-simple .m-spc-link-box__title {
    display: block
}

@media only screen and (max-width: 768.98px) {
    .m-spc-link-box.-simple .m-spc-link-box__title {
        -ms-flex-preferred-size:100%;
        flex-basis: 100%;
        max-width: 100%
    }
}

.m-spc-link-box__title>small {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    color: #fff;
    text-align: center;
    display: block
}

.m-spc-link-box__title.-small-left small {
    text-align: left
}

.m-spc-link-box__title.-h100 {
    height: 100%
}

:root {
    --box-mt-pc: 52px;
    --box-mt-sp: 52px;
    --box-mb-pc: 40px;
    --box-mb-sp: 40px;
    --box-side-sp: 0px;
    --box-side-pc: 0px
}

.m-spc-box {
    padding-top: var(--box-mt-sp);
    padding-bottom: var(--box-mb-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-box {
        padding-top:var(--box-mt-pc);
        padding-bottom: var(--box-mb-pc)
    }
}

.m-spc-box__top {
    padding-top: var(--box-mt-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-box__top {
        padding-top:var(--box-mt-pc)
    }
}

.m-spc-box__bottom {
    padding-bottom: var(--box-mb-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-box__bottom {
        padding-bottom:var(--box-mb-pc)
    }
}

.m-spc-box__side {
    padding-left: var(--box-side-sp);
    padding-right: var(--box-side-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-box__side {
        padding-left:var(--box-side-pc);
        padding-right: var(--box-side-pc)
    }
}

:root {
    --align-pc: left;
    --align-sp: left
}

.m-spc-align {
    text-align: var(--align-sp)
}

@media only screen and (min-width: 769px),tv,print {
    .m-spc-align {
        text-align:var(--align-pc)
    }
}

.o-spc-card-unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit {
        -webkit-box-pack:start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: inherit;
        -ms-flex-align: inherit;
        align-items: inherit;
        overflow: hidden
    }
}

.o-spc-card-unit.-spc-col2 {
    margin: 0
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col2 {
        margin:0px -24px 0
    }
}

.o-spc-card-unit.-spc-col2>* {
    margin-top: 0px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col2>* {
        -ms-flex-preferred-size:calc(50% - 48px);
        flex-basis: calc(50% - 48px);
        max-width: calc(50% - 48px);
        margin-left: 24px;
        margin-right: 24px
    }
}

.o-spc-card-unit.-spc-col3 {
    margin: 0
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col3 {
        margin:0px -24px 0
    }
}

.o-spc-card-unit.-spc-col3>* {
    margin-top: 0px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col3>* {
        -ms-flex-preferred-size:calc(33.3333333333% - 48px);
        flex-basis: calc(33.3333333333% - 48px);
        max-width: calc(33.3333333333% - 48px);
        margin-left: 24px;
        margin-right: 24px
    }
}

.o-spc-card-unit.-spc-col4 {
    margin: 0 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: inherit;
    -ms-flex-align: inherit;
    align-items: inherit;
    overflow: hidden
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col4 {
        margin:0px -8px 0
    }
}

.o-spc-card-unit.-spc-col4>* {
    -ms-flex-preferred-size: calc(50% - 16px);
    flex-basis: calc(50% - 16px);
    max-width: calc(50% - 16px);
    margin-top: 0px;
    margin-left: 8px;
    margin-right: 8px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-card-unit.-spc-col4>* {
        -ms-flex-preferred-size:calc(25% - 16px);
        flex-basis: calc(25% - 16px);
        max-width: calc(25% - 16px);
        margin-left: 8px;
        margin-right: 8px
    }
}

.o-spc-link-boxs {
    margin-top: 0px;
    padding-bottom: 12px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-link-boxs {
        display:-webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        overflow-y: hidden;
        margin: 0px -8px -16px
    }
}

.o-spc-link-boxs>* {
    margin-bottom: 16px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-link-boxs>* {
        -ms-flex-preferred-size:calc(25% - 16px);
        flex-basis: calc(25% - 16px);
        max-width: calc(25% - 16px);
        margin: 0px 8px 24px
    }
}

.o-spc-link-boxs.-normal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow-y: hidden;
    margin: 0px -8px -16px
}

.o-spc-link-boxs.-normal>* {
    margin-bottom: 0;
    -ms-flex-preferred-size: calc(50% - 16px);
    flex-basis: calc(50% - 16px);
    max-width: calc(50% - 16px);
    margin: 0px 8px 18px
}

@media only screen and (min-width: 769px),tv,print {
    .o-spc-link-boxs.-normal>* {
        -ms-flex-preferred-size:calc(25% - 16px);
        flex-basis: calc(25% - 16px);
        max-width: calc(25% - 16px);
        margin: 0px 8px 18px
    }
}

.o-spc-link-boxs.-global-boxs {
    padding-bottom: 0;
    margin-bottom: -18px
}

.js-fadein {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 1s,visibility 1s,-webkit-transform 1s;
    transition: opacity 1s,visibility 1s,-webkit-transform 1s;
    transition: transform 1s,opacity 1s,visibility 1s;
    transition: transform 1s,opacity 1s,visibility 1s,-webkit-transform 1s
}

.js-fadein.is-fadein {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
    visibility: visible
}
