@charset "UTF-8";

html {
    scroll-padding-top: 80px;
}

.mainSection.info .mainContent strong {
    font-weight: bold;
}

.mainSection.info .mainContent img {
    max-width: 100%;
    height: auto;
}

@media screen and (max-width: 750px) {
    html {
        scroll-padding-top: 0;
    }
}

@keyframes fuwafuwa01 {
    0% {
        transform: translate(0, 0);
    }

    100% {
        transform: translate(-10px, -10px);
    }
}

@keyframes fuwafuwa02 {
    0% {
        transform: translate(0, 0);
    }

    100% {
        transform: translate(10px, -10px);
    }
}

#top .illust03,
#top .illust04,
#top .illust05,
#top .illust06,
#top .illust07,
#top .illust08,
#top .illust09,
#top .illust10,
#top .illust11,
#top .illust14 {
    animation: 3s fuwafuwa01 infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

#top .illust12 {
    animation: 3s fuwafuwa02 infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

#top .illust03 {
    animation-delay: 0s;
}

#top .illust04 {
    animation-delay: 0.5s;
}

#top .illust05 {
    animation-delay: 0.75s;
}

#top .illust06 {
    animation-delay: 1s;
}

#top .illust07 {
    animation-delay: 1.25s;
}

#top .illust08 {
    animation-delay: 1.5s;
}

#top .illust09 {
    animation-delay: 1.75s;
}

#top .illust10 {
    animation-delay: 2s;
}

#top .illust11 {
    animation-delay: 0.5s;
}

#top .illust12 {
    animation-delay: 0.75s;
}

#top .illust14 {
    animation-delay: 1s;
}

#top .illust23,
#top .illust25,
#top .illust27 {
    animation: 3s fuwafuwa01 infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

#top .illust22,
#top .illust24,
#top .illust26,
#top .illust28 {
    animation: 3s fuwafuwa02 infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

#top .illust22 {
    animation-delay: 0s;
}

#top .illust23 {
    animation-delay: 0.25s;
}

#top .illust24 {
    animation-delay: 0.5s;
}

#top .illust25 {
    animation-delay: 0.75s;
}

#top .illust26 {
    animation-delay: 1s;
}

#top .illust27 {
    animation-delay: 1.25s;
}

#top .illust28 {
    animation-delay: 1.5s;
}

@media screen and (max-width: 750px) {
    #top .kv {
        height: 128vw;
    }
}

@keyframes top_kv_cc_color {
    0% {
        color: #ffffff;
    }

    100% {
        color: #004F8E;
    }
}

@keyframes top_kv_cc_box {
    0% {
        transform: scaleX(0);
    }

    100% {
        transform: scaleX(1);
    }
}

#top #content .kv .cc span {
    transform-origin: top left;
    color: #ffffff;
    transform: scaleX(0);
}

#top #content .kv .cc span:nth-of-type(1) {
    animation: top_kv_cc_box 2s 2s forwards, top_kv_cc_color 2s 4s forwards;
}

#top #content .kv .cc span:nth-of-type(2) {
    animation: top_kv_cc_box 2s 2.1s forwards, top_kv_cc_color 2s 4.1s forwards;
}

#top #content .kv .cc span:nth-of-type(3) {
    animation: top_kv_cc_box 2s 2.2s forwards, top_kv_cc_color 2s 4.2s forwards;
}

body.common #main .mainSection.info article figure {
    margin: 0 0 60px 0;
}
body.common #main .mainSection.info article figure img {
    margin: 0;
}
body.common #main .mainSection.info article figure figcaption {
    margin: 10px 0 0 0;
    font-size: 12px;
}
body.common #main .mainSection.info article .text-small {
    font-size: 12px;
}


@media screen and (max-width: 768px) {
    #top #content .alert {
        margin: 5.3vw 0 5.3vw 0;
    }

    #slider02 .slick-list,
    #slider03 .slick-list {
        padding: 0 5vw 0 5vw !important;
    }

    #slider02 .slick-slide,
    #slider03 .slick-slide {
        margin: 0 4vw 3vw 0 !important;
    }

    #concierge-slider .slick-list {
        padding: 0 6vw 0 4vw !important;
    }

    #concierge-slider .slick-slide {
        margin: 0 5vw 3vw 0 !important;
    }

    body.common #main .mainSection.concierge .mainContent .block04 {
        margin: 0 0 13vw;
    }

    body.common #main .mainSection.concierge .mainContent .block04 p.close {
        margin: 0 0 13vw;
        margin: 0 5vw;
    }
    body.common #main .mainSection.info article figure {
        margin: 0 0 8vw 0;
    }
    body.common #main .mainSection.info article figure img {
        margin: 0;
    }
    body.common #main .mainSection.info article figure figcaption {
        margin: 2vw 0 0 0;
        font-size: 3.15vw;
    }
    body.common #main .mainSection.info article .text-small {
        font-size: 3.15vw;
    }
}
div#slider02 .arrow_r, div#slider03 .arrow_r {
    right: calc(100%/2 + -50px) !important;
    z-index: 1;
}
div#slider02 .arrow_l, div#slider03 .arrow_l {
    left: calc(100%/2 + -50px) !important;
    z-index: 1;
}
@media screen and (max-width: 768px) {
    div#slider02 .arrow_r, div#slider03 .arrow_r {
        display: none !important;
    }
    div#slider02 .arrow_l, div#slider03 .arrow_l {
        display: none !important;
    }
    div#slider02 .slide-copy-hide, div#slider03 .slide-copy-hide {
        display: none;
    }
}

.mainSection.line .block03 > p {
    text-align: center;
    font-size: 16px;
    margin: 0 0 50px 0;
}
@media screen and (max-width: 768px) {
    .mainSection.line .block03 > p {
        font-size: 4vw;
        text-align: center;
        margin: 0 0 10vw 0;
    }
}

body.common #main .mainSection.traceability .block02 table tr td {
    height: auto;
    padding: 30px 30px 20px 30px;
}

@media screen and (max-width: 768px) {
    body.common #main .mainSection.traceability .block02 table tr td {
        padding: 3vw 3vw 1vw 3vw;
    }
}


/* 202311 oa addcss ↓↓↓*/

/* トップページ */
#top #content section.otoku > section .inner .notice{
    line-height: 1.7;
}
@media screen and (max-width: 750px) {
    #top #content section.otoku > section .inner .notice{
        line-height: 1.5;
    }
}
#top #content section.otoku > section .inner .notice:nth-of-type(2){
    margin-top: 0;
}
@media screen and (max-width: 750px) {
    #top #content section.otoku > section .inner .notice:nth-of-type(2){
        text-indent: -1em;
        padding-left: 1em;
    }
}
#top #content section.otoku > section .inner .notice a{
    font-size: 12px;
}
@media screen and (max-width: 750px) {
    #top #content section.otoku > section .inner .notice a{
        margin: 0 0 0 4vw;
        font-size: 3.2vw;
    }
}
/* トップページ END*/

/* お得・イチオシ情報 */
body.common #main .mainSection.otoku .mainContent > section h3.calendar_ttl{
    margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku .mainContent > section h3.calendar_ttl{
        margin-bottom: 5.7vw;
    }
}
body.common #main .mainSection.otoku section.point .inner .link01{
    width: 90%;
    flex-wrap: wrap;
    justify-content: space-around;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01{
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 0 5vw
    }
}
body.common #main .mainSection.otoku section.point .inner .link01 .btn02{
    width: 44%;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01 .btn02{
        width: 100%;
    }
}
body.common #main .mainSection.otoku section.point .inner .link01 .btn02 a{
    width: 100%;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01 .btn02 a{
        font-size: 3.8vw;
    }
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01 .btn02:first-of-type a{
        padding: 4.6vw 0;
    }
}
body.common #main .mainSection.otoku section.point .inner .link01 .btn02:nth-of-type(2) a{
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01 .btn02:nth-of-type(2) a{
        padding: 7.15vw 0;
    }
}
body.common #main .mainSection.otoku section.point .inner .link01 .btn02:nth-of-type(3){
    margin: 80px auto 0;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.otoku section.point .inner .link01 .btn02:nth-of-type(3){
        margin-top: 0;
    }
}
/* お得・イチオシ情報 END*/

/* 202311 oa addcss end ↑↑↑*/


/* トップページ 202406 addcss ↓↓↓*/
#top #content section.otoku .bnr ul{
    width: 470px;
}
@media screen and (max-width: 768px) {
    #top #content section.otoku .bnr ul{
        width: 90vw;
        justify-content: space-evenly;
    }
}

/* 202406 addcss end ↑↑↑*/



/* サービス情報 202410 addcss ↓↓↓*/

@media screen and (min-width: 769px) {
    body.common #main .mainSection.service .helpful .help03 .lead{
        line-height: 1.5;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li div .txt span{
        font-size: 11px;
        line-height: 1.5;
        margin-top: 5px;
        margin-left: 50px;
        display: inline-block;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li div .detail{
        text-align: right;
        margin-right: 20px;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li div .detail a{
        padding: 0 15px 0 0;
        font-size: 16px;
        color: #2CB2C2;
        background-image: url(img/icon_arrow_right_lb.png);
        background-position: right center;
        background-repeat: no-repeat;
        background-size: 10px;
        transition: .3s all ease;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li:last-of-type{
        width: 735px;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li:last-of-type div.service_child03_txt{
        width: 545px;
    }
    body.common #main .mainSection.service .helpful .help03 .inner ul li:last-of-type div.detail{
        display: inline-block;
        margin-left: 180px;
    }
}

/* サービス情報 202410 addcss end ↑↑↑*/


/* カスタマーハラスメント 202410　*/
body.common #main .mainSection.customer-harassment .block01 {
    width: 670px;
    margin: 0 auto 50px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block01 {
        width: 90vw;
        margin: 0 auto 13vw;
    }
}
body.common #main .mainSection.customer-harassment .block02 {
    width: 670px;
    margin: 0 auto 50px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 {
        width: 90vw;
        margin: 0 auto 13vw;
    }
}


@media screen and (max-width: 768px) {
    body.common #main .customer-harassment .mainHeader h2 {
        line-height: 1.3;
    }
}
body.common #main .customer-harassment .mainContent > section h3 {
    text-align: left !important;
    margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
    body.common #main .customer-harassment .mainContent > section h3 {
        margin-bottom: 12vw;
    }
}
body.common #main .mainSection.customer-harassment h4 {
    margin-bottom: 18px;
    font-size: 26px;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment h4 {
        font-size: 5.2vw;
        margin: 0 auto 3vw;
    }
}

body.common #main .mainSection.customer-harassment .block02 h4{
    margin-bottom: 32px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 h4{
        margin-bottom: 6vw;
    }
}

body.common #main .mainSection.customer-harassment h5 {
    margin-bottom: 24px;
    font-size: 20px;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment h5 {
        font-size: 4.5vw;
        margin: 0 auto 4vw;
    }
}
body.common #main .mainSection.customer-harassment .example_ttl {
    margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .example_ttl {
        margin-bottom: 3.7vw;
    }
}
body.common #main .mainSection.customer-harassment h6 {
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment h6 {
        font-size: 4vw;
        margin: 0 auto 2vw;
    }
}
body.common #main .mainSection.customer-harassment .text {
    margin-bottom: 60px;
}

body.common #main .mainSection.customer-harassment .text:last-child {
    margin-bottom: 0;
}
body.common #main .mainSection.customer-harassment .block02 .list {
    margin-bottom: 34px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .list {
        margin-bottom: 5vw;
    }
}
body.common #main .mainSection.customer-harassment .block02 .list li{
    margin-bottom: 16px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .list li{
        margin-bottom: 4vw;
    }
}


body.common #main .mainSection.customer-harassment .block02 .example_table {
    margin-top: 30px;
    border: 1px solid #888;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .example_table {
        margin-top: 4vw;
    }
}
body.common #main .mainSection.customer-harassment .block02 .example_table dl{
    display: flex;
    border-bottom: 1px solid #888;
    font-size: 15px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .example_table dl{
        display: block;
        font-size: 3.7vw;
        line-height: 1.75;
    }
}
body.common #main .mainSection.customer-harassment .block02 .example_table dl:last-of-type{
    border-bottom: none;
}
body.common #main .mainSection.customer-harassment .block02 .example_table dl dt {
    border-right: 1px solid #888;
    min-width: 150px;
    padding: 7px 10px;
    line-height: 1.5;
    background: #f4f4f4;
    font-weight: bold;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .example_table dl dt {
        font-size: 3.7vw;
        border-right: none;
        border-bottom: 1px solid #888;
        font-weight: bold;
        padding: 2vw 3vw;
    }
}
body.common #main .mainSection.customer-harassment .block02 .example_table dl dd {
    padding-top: 5px;
    padding: 7px 10px 6px 7px;
    line-height: 1.5;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .example_table dl dd {
        font-size: 3.7vw;
        padding: 2vw 3vw 2.5vw;
    }
}
body.common #main .mainSection.customer-harassment .text p {
    line-height: 1.75;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .text p {
        font-size: 3.7vw;
        line-height: 1.75;
    }
}
body.common #main .mainSection.customer-harassment .block02 .text p{
    margin-left: 10px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .block02 .text p{
        margin-left: 3vw;
    }
}

body.common #main .mainSection.customer-harassment .text a {
    color: #2CB2C2;
}
body.common #main .mainSection.customer-harassment .text a:hover {
    opacity: 0.7;
}
body.common #main .mainSection.customer-harassment .notes li {
    font-size: 12px;
    line-height: 1.58;
}
body.common #main .mainSection.customer-harassment .list li {
    font-size: 15px;
    line-height: 1.75;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .list li{
        font-size: 3.7vw;
    }
}
body.common #main .mainSection.customer-harassment .bold {
    font-weight: bold;
}
body.common #main .mainSection.customer-harassment .return li {
    text-indent: -1em;
    margin: 0 0 0 1em;
}
body.common #main .mainSection.customer-harassment .note {
    margin-top: 16px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .note {
        margin-top: 4vw;
    }
}
body.common #main .mainSection.customer-harassment .note h6{
    margin-bottom: 6px;
}
@media screen and (max-width: 768px) {
    body.common #main .mainSection.customer-harassment .note h6{
        margin-bottom: 1vw;
    }
}

#footer .set02{
    width: 630px;
}

@media screen and (max-width: 768px) {
    #footer .set02{
        width: 90vw;
        display: block;
    }
}
@media screen and (max-width: 768px) {
    #footer .set02 li{
        margin: 0 0 6vw 0;
    }
    #footer .set02 li:last-of-type{
        margin: 0;
    }
    #footer .set02 li:nth-of-type(2){
        width: 65%;
    }
}
　

/* カスタマーハラスメント 202410 end ↑↑↑*/