/*!
 * ress.css • v3.0.1
 * MIT License
 * github.com/filipelinhares/ress
 */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    word-break: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

*,
::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
}

hr {
    overflow: visible;
    height: 0
}

details,
main {
    display: block
}

summary {
    display: list-item
}

small {
    font-size: 80%
}

[hidden] {
    display: none
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

a {
    background-color: transparent
}

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

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

pre {
    font-size: 1em
}

b,
strong {
    font-weight: bolder
}

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
}

[disabled] {
    cursor: default
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

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

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

textarea {
    overflow: auto;
    resize: vertical
}

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

optgroup {
    font-weight: bold
}

button {
    overflow: visible
}

button,
select {
    text-transform: none
}

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

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

button:-moz-focusring,
[type=button]::-moz-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,
input,
select,
textarea {
    background-color: transparent;
    border-style: none
}

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-space: normal;
    max-width: 100%
}

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

img {
    border-style: none
}

progress {
    vertical-align: baseline
}

@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
}

@media screen and (max-width: 750px) {
    .pc:not(.sp) {
        display: none
    }
}

@media screen and (min-width: 751px) {
    .sp:not(.pc) {
        display: none
    }
}

html {
    -webkit-text-size-adjust: 100%;
    font-size: 62.5%
}

body {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ P ゴシック", sans-serif;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: .1em;
    line-height: 1.7;
    font-size: 16px
}

@media screen and (max-width: 750px) {
    body {
        font-size: 3.2vw
    }
}

ul,
ol {
    list-style: none
}

a {
    -webkit-transition: opacity .2s;
    transition: opacity .2s
}

a:hover {
    opacity: .6
}

::-moz-selection {
    background: #f8c8c9;
    color: #000
}

::selection {
    background: #f8c8c9;
    color: #000
}

::-moz-selection {
    background: #f8c8c9;
    color: #000
}

.sec-inner {
    position: relative;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto
}

@media screen and (max-width: 750px) {
    .sec-inner {
        padding: 0vw 6.6666666667vw
    }
}

.sec-title {
    position: relative;
    padding-bottom: 30px;
    text-align: center
}

.sec-title::before,
.sec-title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 40px;
    height: 6px
}

.sec-title::before {
    left: calc(50% - 20px);
    background-color: #f8c8c9
}

.sec-title::after {
    left: calc(50% + 20px);
    background-color: #e07979
}

.sec-title .sub-title {
    margin-top: 10px;
    font-size: 24px;
    font-weight: bold
}

@media screen and (max-width: 750px) {
    .sec-title {
        padding-bottom: 5.3333333333vw
    }

    .sec-title::before,
    .sec-title::after {
        width: 20px;
        height: .8vw
    }

    .sec-title::before {
        left: calc(50% - 10px)
    }

    .sec-title::after {
        left: calc(50% + 10px)
    }

    .sec-title .sub-title {
        margin-top: 1.3333333333vw;
        font-size: 4.2666666667vw
    }
}

.sec-banner01 {
    position: relative;
    max-width: 980px;
    margin-left: auto;
    margin-right: auto
}

@media screen and (max-width: 750px) {
    .sec-bunner01 {
        padding: 0vw 6.6666666667vw
    }
}


.c_header {
    width: 100%;
    padding: 20px 0;
    text-align: center
}

.c_header .header__logo {
    width: 280px;
    margin: 0 auto;
    text-align: center;
    line-height: 1
}

.c_header .header__logo img {
    width: 100%
}

@media screen and (max-width: 750px) {
    .c_header {
        padding: 2.6666666667vw 0vw
    }

    .c_header .header__logo {
        width: 37.3333333333vw
    }
}

.c_footer {
    padding: 40px 0;
    text-align: center;
    position: relative;
    border-top: 1px solid #000;
    line-height: 1.2
}

.c_footer .logo span {
    display: block;
    width: 66px;
    margin: 0 auto;
    cursor: pointer
}

.c_footer .logo a {
    display: block;
    margin: 35px auto 0;
    width: 280px
}

.c_footer .copyright {
    margin-top: 10px;
    text-align: center;
    font-size: 12px;
    letter-spacing: 0
}

@media screen and (max-width: 750px) {
    .c_footer {
        padding: 6vw 0vw
    }

    .c_footer .logo img {
        width: 100%
    }

    .c_footer .logo span {
        width: 10.6666666667vw
    }

    .c_footer .logo a {
        width: 37.3333333333vw;
        margin: 5.3333333333vw auto 0vw
    }

    .c_footer .copyright {
        font-size: 1.6vw
    }
}

.mv {
    line-height: 1
}

.mv img {
    width: 100%
}

.about {
    padding: 110px 0 80px
}

.about .lead {
    margin-top: 30px;
    text-align: center;
    font-size: 22px
}

.about .note {
    margin-top: 10px;
    font-size: 14px;
    text-align: center
}

.about .note a {
    color: #000
}

.about .img01 {
    position: absolute;
    top: -40px;
    left: 20px
}

.about .img02 {
    position: absolute;
    top: 20px;
    right: 0
}

@media screen and (max-width: 750px) {
    .about {
        padding: 17.3333333333vw 0vw
    }

    .about .main-title {
        width: 32vw;
        margin: 0 auto
    }

    .about .lead {
        margin-top: 8vw;
        font-size: 4vw
    }

    .about .note {
        margin-top: 1.3333333333vw;
        font-size: 3.0666666667vw
    }

    .about .img01 {
        top: -5.3333333333vw;
        left: 5.3333333333vw;
        width: 21.3333333333vw
    }

    .about .img02 {
        top: 5.3333333333vw;
        right: 5.3333333333vw;
        width: 21.3333333333vw
    }

    .about img {
        width: 100%
    }
}

.scene .sec-inner {
    padding: 80px 170px;
    background-color: #eff4f5
}

.scene .sec-inner::after {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -60px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 40px 0 40px;
    border-color: #eff4f5 transparent transparent transparent
}

.scene .scene-list {
    margin-top: 40px
}

.scene .scene-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.scene .scene-list .img {
    width: 240px
}

.scene .scene-list .text {
    width: calc(100% - 240px);
    margin-top: 20px;
    padding-left: 20px
}

.scene .scene-list .num {
    border-bottom: 1px solid #f0bbbd
}

.scene .scene-list .num img {
    display: block;
    margin-left: auto;
    margin-bottom: -2px
}

.scene .scene-list .desc {
    margin: 30px 0 0 50px;
    font-size: 22px
}

.scene .scene-list .desc .lg {
    font-size: 26px;
    font-weight: bold
}

.scene .scene-list li:nth-child(2) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.scene .scene-list li:nth-child(2) .text {
    padding-left: 0;
    padding-right: 20px
}

.scene .scene-list li:nth-child(2) .num img {
    margin-left: inherit;
    margin-right: auto
}

.scene .scene-list li:nth-child(2) .desc {
    margin: 30px 0 0 0
}

.scene .ad-list {
    margin-top: 40px
}

.scene .ad-list li:not(:first-child) {
    margin-top: 20px
}

.scene .ad-list a {
    position: relative;
    display: block;
    padding: 20px 60px 20px 20px;
    border: 1px solid #e07979;
    background-color: #fff;
    color: #000;
    text-decoration: none;
    line-height: 1.5
}

.scene .ad-list a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url("https://www.jr-takashimaya.co.jp/cn/en/cp/remoteshopping/assets/img/common/icon-circle-arrow.png") center no-repeat;
    background-size: contain
}

.scene .ad-list .head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-weight: bold
}

.scene .ad-list .head p {
    margin-left: 15px
}

.scene .ad-list .lead {
    margin-top: 10px
}

.scene .cta-text {
    margin-top: 110px;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.4
}

.scene .cta-text .lg {
    font-size: 36px;
    border-bottom: 8px solid #f8c8c9
}

@media screen and (max-width: 750px) {
    .scene .sec-inner {
        padding: 13.3333333333vw 6.6666666667vw
    }

    .scene .sec-inner::after {
        bottom: -8vw;
        border-width: 8vw 5.3333333333vw 0vw 5.3333333333vw
    }

    .scene .main-title {
        width: 28.9333333333vw;
        margin: 0 auto
    }

    .scene .main-title img {
        width: 100%
    }

    .scene .scene-list {
        margin-top: 0
    }

    .scene .scene-list li {
        margin-top: 8vw
    }

    .scene .scene-list .img {
        width: 32vw
    }

    .scene .scene-list .img img {
        width: 100%
    }

    .scene .scene-list .text {
        width: 53.3333333333vw;
        margin-top: 0;
        padding-left: 0
    }

    .scene .scene-list .num img {
        width: 9.3333333333vw;
        margin-bottom: -0.2666666667vw
    }

    .scene .scene-list .desc {
        margin: 5.3333333333vw 0vw 0vw 4vw;
        font-size: 4vw
    }

    .scene .scene-list .desc .lg {
        font-size: 4.5333333333vw
    }

    .scene .scene-list li:nth-child(2) .text {
        padding-right: 0
    }

    .scene .scene-list li:nth-child(2) .num img {
        margin-left: inherit;
        margin-right: auto
    }

    .scene .scene-list li:nth-child(2) .desc {
        margin: 5.3333333333vw 0vw 0vw 0vw
    }

    .scene .ad-list {
        margin-top: 8vw
    }

    .scene .ad-list li:not(:first-child) {
        margin-top: 5.3333333333vw
    }

    .scene .ad-list a {
        padding: 4vw;
        font-size: 3.2vw;
        line-height: 1.3
    }

    .scene .ad-list a::after {
        right: 2.6666666667vw;
        width: 5.3333333333vw;
        height: 5.3333333333vw
    }

    .scene .ad-list .head {
        letter-spacing: 0
    }

    .scene .ad-list .head img {
        width: 12vw
    }

    .scene .ad-list .head p {
        margin-left: 2vw
    }

    .scene .ad-list .lead {
        margin-top: 2.6666666667vw;
        padding-right: 5.3333333333vw
    }

    .scene .cta-text {
        margin-top: 17.3333333333vw;
        font-size: 4.2666666667vw;
        line-height: 1.8
    }

    .scene .cta-text .lg {
        font-size: 5.6vw;
        border-bottom: 4px solid #f8c8c9
    }
}

.flow {
    margin-top: 110px;
    padding: 120px 20px;
    background-color: #eba4a4
}

.flow .sec-title::before,
.flow .sec-title::after {
    background-color: #fff
}

.flow .sub-title {
    color: #fff
}

.flow .step-list {
    position: relative;
    margin-top: 80px;
    margin-left: 20px;
    z-index: 0
}

.flow .step-list::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 8px;
    height: 80%;
    background-color: #fff
}

.flow .step-list li:not(:first-child) {
    margin-top: 60px
}

.flow .step-list li {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 35px;
    background-color: #fff;
    border-radius: 25px
}

.flow .step-list .icon {
    position: absolute;
    top: -40px;
    left: -20px
}

.flow .step-list .img {
    width: 30%;
    text-align: center
}

.flow .step-list .text {
    width: 70%
}

.flow .step-list .head {
    font-size: 28px;
    font-weight: bold
}

.flow .step-list .lead {
    margin-top: 10px;
    font-size: 18px
}

.flow .step-list .caution {
    display: inline-block;
    margin-top: 10px;
    padding: 5px 10px;
    border: 1px solid #c1272d;
    color: #c1272d
}

.flow .step-list .caution a {
    color: #c1272d
}

@media screen and (max-width: 750px) {
    .flow {
        margin-top: 17.3333333333vw;
        padding: 16vw 0vw
    }

    .flow .main-title {
        width: 27.3333333333vw;
        margin: 0 auto
    }

    .flow .main-title img {
        width: 100%
    }

    .flow .step-list {
        margin-top: 10.6666666667vw;
        margin-left: 0
    }

    .flow .step-list::after {
        width: 1.3333333333vw;
        height: 80%
    }

    .flow .step-list li:not(:first-child) {
        margin-top: 10.6666666667vw
    }

    .flow .step-list li {
        display: block;
        padding: 4.6666666667vw;
        border-radius: 3.3333333333vw
    }

    .flow .step-list .icon {
        width: 18.6666666667vw;
        top: -5.3333333333vw;
        left: -1.3333333333vw
    }

    .flow .step-list .img {
        margin: 0 auto;
        width: 13.3333333333vw
    }

    .flow .step-list .img img {
        width: 100%
    }

    .flow .step-list .img.img02 {
        width: 24vw
    }

    .flow .step-list .img.img03 {
        width: 22.6666666667vw
    }

    .flow .step-list .text {
        width: 100%
    }

    .flow .step-list .head {
        margin-top: 1.3333333333vw;
        text-align: center;
        font-size: 4.8vw
    }

    .flow .step-list .lead {
        margin-top: 1.3333333333vw;
        font-size: 3.7333333333vw
    }

    .flow .step-list .note {
        font-size: 3.2vw
    }

    .flow .step-list .caution {
        margin-top: 1.3333333333vw;
        padding: 1.3333333333vw;
        font-size: 3.2vw
    }
}

.contact {
    padding: 120px 20px;
    background-color: #eff4f5
}

.contact .sec-inner {
    max-width: 760px
}

.contact .contact-title {
    text-align: center
}

.contact .contact-title h2 {
    font-size: 22px
}

.contact .contact-title .number-block {
    margin-top: 10px;
    padding: 15px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    line-height: 1.2
}

.contact .contact-title .number-block>a {
    font-size: 26px;
    display: block;
    color: #000;
    text-decoration: none;
    font-weight: bold
}

.contact .contact-title .number-block>a .lg {
    font-size: 40px
}

.contact .contact-title .number-block p {
    margin-top: 10px;
    line-height: 1.7
}

.contact .contact-title .number-block p a {
    color: #000
}

.contact .contact-title .note {
    margin-top: 20px
}

.contact .floor {
    margin-top: 70px;
    background-color: #fff
}

.contact .floor .floor-head {
    position: relative;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    color: #e07979;
    cursor: pointer;
    padding: 10px 0;
    border-bottom: 1px solid #e07979
}

.contact .floor .floor-head::before,
.contact .floor .floor-head::after {
    content: "";
    position: absolute;
    width: 30px;
    height: 2px;
    background-color: #e07979
}

.contact .floor .floor-head::before {
    top: 50%;
    right: 30px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.contact .floor .floor-head::after {
    top: 50%;
    right: 30px;
    -webkit-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg)
}

.contact .floor .floor-head.is-active::after {
    opacity: 0
}

.contact .floor .floor-list {
    padding: 30px 60px
}

.contact .floor .floor-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 20px 20px;
    border-top: 1px solid #ccc
}

.contact .floor .floor-list li:first-child {
    border-top: none
}

.contact .floor .floor-list .num {
    width: 25%;
    font-weight: bold;
    font-size: 24px
}

.contact .floor .floor-list .text {
    width: 75%;
    margin-top: 5px;
    font-size: 18px
}

.contact .floor .floor-list .text02 {
    width: 100%;
    font-size: 18px
}

.contact .floor .floor-list .block:not(:first-child) {
    margin-top: 10px
}

.contact .floor .floor-list .head {
    font-weight: bold
}

.contact .floor .floor-list .desc {
    padding-left: 1em
}

@media screen and (max-width: 750px) {
    .contact {
        padding: 16vw 0vw
    }

    .contact .contact-title h2 {
        font-size: 3.7333333333vw
    }

    .contact .contact-title .number-block {
        margin-top: 1.3333333333vw;
        padding: 2vw 0vw
    }

    .contact .contact-title .number-block>a {
        padding: .6666666667vw 0vw;
        font-size: 4vw
    }

    .contact .contact-title .number-block>a .lg {
        font-size: 5.8666666667vw
    }

    .contact .contact-title .number-block p {
        margin-top: 1.3333333333vw
    }

    .contact .contact-title .note {
        text-align: left;
        margin-top: 2.6666666667vw
    }

    .contact .floor {
        margin-top: 9.3333333333vw
    }

    .contact .floor .floor-head {
        font-size: 4.5333333333vw;
        padding: 3.3333333333vw 0vw
    }

    .contact .floor .floor-head::before,
    .contact .floor .floor-head::after {
        width: 4.9333333333vw;
        height: .4vw
    }

    .contact .floor .floor-head::before {
        right: 3.3333333333vw
    }

    .contact .floor .floor-head::after {
        right: 3.3333333333vw
    }

    .contact .floor .floor-list {
        padding: 2.6666666667vw 4vw
    }

    .contact .floor .floor-list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 2.6666666667vw
    }

    .contact .floor .floor-list .num {
        font-size: 3.4666666667vw
    }

    .contact .floor .floor-list .text {
        margin-top: 0;
        font-size: 3.2vw
    }

    .contact .floor .floor-list .text02 {
        width: 100%;
        font-size: 3.2vw
    }

    .contact .floor .floor-list .block:not(:first-child) {
        margin-top: 1.3333333333vw
    }
}

.qa {
    padding: 120px 20px
}

.qa .qa-list {
    margin-top: 30px;
    font-size: 18px
}

.qa .qa-list dl {
    padding: 25px 0;
    border-top: 1px solid #eff4f5
}

.qa .qa-list dl:first-child {
    border-top: none
}

.qa .qa-list dt {
    color: #e07979;
    font-weight: bold
}

.qa .qa-list dd {
    margin-top: 10px
}

.qa .qa-list dd .sm {
    font-size: 90%
}

.qa .qa-list dd a {
    color: #000
}

@media screen and (max-width: 750px) {
    .qa {
        padding: 16vw 0vw
    }

    .qa .main-title {
        width: 25.3333333333vw;
        margin: 0 auto
    }

    .qa .main-title img {
        width: 100%
    }

    .qa .qa-list {
        margin-top: 3.3333333333vw;
        font-size: 3.7333333333vw
    }

    .qa .qa-list dl {
        padding: 4vw 0vw
    }

    .qa .qa-list dd {
        margin-top: 1.3333333333vw
    }

    .qa .qa-list dd .sm {
        font-size: 85%
    }
}

.banner {
    padding-bottom: 100px;
}

.banner p {
    margin: 0 auto;
    text-align: center;
}

.banner img {
    max-width: 560px;
    width: 100%
}


.banner01 {
    padding-top: 50px;
    margin-bottom: -20px;
}

.banner01 p {
    margin: 0 auto;
    text-align: center;
}

.banner01 img {
    max-width: 980px;
    width: 100%
}

.banner01 .note {
    margin-top: 10px;
    font-size: 16px;
    max-width: 650;
    text-align: left;
}

@media screen and (max-width: 750px) {
    .banner {
        padding-bottom: 17.3333333333vw;
    }

    .banner p {
        padding: 0 6.6666666667vw;
        box-sizing: border-box;
    }

    .banner01 {
        padding-bottom: 17.3333333333vw;
    }

    .banner01 p {
        padding: 0 6.6666666667vw;
        box-sizing: border-box;
    }

    .banner01 .note {
        margin-top: 1.3333333333vw;
        font-size: 3.0666666667vw
    }
}

/*# sourceMappingURL=maps/styles.css.map */

/* add style */
.text-red {
    color: #e07979;
}
.text-large{
    font-size: 20px;
}
.fw_wrap {
    flex-wrap: wrap;
}
.note {
    margin-top: 1em;
}
.text-bold {
    font-weight: bold;
}

@media screen and (max-width: 750px) {
    .text-large {
        font-size: 4vw;
    }
}
/* add style */