@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* ////////////////////////////////////////////////
# common
//////////////////////////////////////////////// */
ul li, ol li,h2 {
    margin: 0;
}
main{
    font-family: "Noto Sans JP", sans-serif !important;
    font-optical-sizing: auto;
}
.bg_shadow{
    box-shadow: 0 0 10px rgba(102, 102, 102, 0.5);
}
.bg_shadow__blue{
    box-shadow: 0 0 10px rgba(0, 115, 183, 0.5);
}
.bg_color_blue{
    position: relative;
    background: #CCE7FF;
}
.bg_color_blue::before{
    content: '';
    background: #CCE7FF;
    display: block;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.bg_color_light_blue{
    position: relative;
    background: #E8F2FB;
}
.bg_color_light_blue::before{
    content: '';
    background: #E8F2FB;
    display: block;
    /* width: 100vw; */
    margin: 0 calc(50% - 50vw);
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.bg_color_white{
    position: relative;
    background: #fff;
}
.bg_color_white::before{
    content: '';
    background: #fff;
    display: block;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
a{
    transition: all .3s;
}
a:hover {
    opacity: .6;
}
.fixed__block__bottom.on_scroll{
    display: none;
}
.u-shadow-black{
    filter: drop-shadow(0px 0px 10px rgba(102,102,102,0.5));
}
.u-shadow-blue{
    filter: drop-shadow(0px 0px 20px rgba(0,115,183,0.5));
}
.block__has_full{
    margin: 0;
    max-width: unset;
}

@media all and (min-width: 768px) {
    .u-hide-pc-tab{
        display: none !important;
    }
    .u-hide-pc{
        display: none !important;
    }
    .u-hide-sp{
        display: block;
    }
    main p {
        font-size: 20px;
    }
    .h2__section_title{
        font-size: 42px;
        line-height: 1.5;
        text-align: center;
        margin-bottom: 50px;
        position: relative;
        padding-top: 50px;
    }
    .h2__section_title::after{
        content: '';
        display: block;
        background: #0073B7;
        width: 140px;
        height: 6px;
        border-radius: 99px;
        position: absolute;
        bottom: -13px;
        left: 50%;
        transform: translateX(-50%);
    }
    .h2__section_title_sub{
        font-size: 28px;
        font-weight: 400;
        display: block;
    }
    .sec_lead_text{
        font-size: 22px;
        text-align: center;
        margin-bottom: 0;
    }
    
    /* btn */
    .btn__item{
        margin-top: 30px;
    }
    .btn__item_wrap .btn__item + .btn__item{
        margin-top: 20px;
    }
    .btn__link01 {
        display: flex;
        box-sizing: border-box;
        width: 100%;
        min-height: 50px;
        height: auto;
        padding: 20px 35px 20px 14px;
        position: relative;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        text-align: center;
        background-color: #000099;
        border: 3px solid #fff;
        box-shadow: 0 0 10px rgba(102, 102, 102, 0.5);
        border-radius: 99px;
        background-repeat: no-repeat;
        background-size: 33px auto;
        background-position: 16px center;
        line-height: 1.2;
        margin: 0 auto;
        font-size: 22px;
        width: 422px;
        color: #fff !important;
    }
    .btn__link01 a, a:visited{
    }
    .btn__link01::before {
        content: '';
        position: absolute;
        right: 50px;
        transform-origin: center center;
        top: calc(50% - 3px);
        transform: rotate(40deg);
        background-color: #fff;
        display: inline-block;
        height: 2px;
        width: 10px;
    }
    .btn__link01::after  {
        content: '';
        position: absolute;
        right: 50px;
        transform-origin: center center;
        top: calc(50% + 2px);
        transform: rotate(-40deg);
        background-color: #fff;
        display: inline-block;
        height: 2px;
        width: 10px;
    }
    .btn__link01.btn__white{
        background: #fff;
        color: #0073B7 !important;
        border: 3px solid #0073B7;
    }
    .btn__link01.btn__white::before,
    .btn__link01.btn__white::after {
        background-color: #0073B7;
    }
    .btn__link01.btn__light_blue{
        background: #E8F2FB;
        color: #0073B7 !important;
        border: 3px solid #0073B7;
    }
    .btn__link01.btn__light_blue::before,
    .btn__link01.btn__light_blue::after {
        background-color: #0073B7;
    }

    .block__has_full .inbox__full{
        max-width: 100vw;
        padding-bottom: 50px;
    }
    .btn__goto_top{
        bottom: 50px;
    }

    .fs10 {font-size: 10px !important;}
    .fs11 {font-size: 11px !important;}
    .fs12 {font-size: 12px !important;}
    .fs13 {font-size: 13px !important;}
    .fs14 {font-size: 14px !important;}
    .fs15 {font-size: 15px !important;}
    .fs16 {font-size: 16px !important;}
    .fs17 {font-size: 17px !important;}
    .fs18 {font-size: 18px !important;}
    .fs19 {font-size: 19px !important;}
    .fs20 {font-size: 20px !important;}
    .fs21 {font-size: 21px !important;}
    .fs22 {font-size: 22px !important;}
    .fs23 {font-size: 23px !important;}
    .fs24 {font-size: 24px !important;}
    .fs25 {font-size: 25px !important;}
    .fs26 {font-size: 26px !important;}
    .fs27 {font-size: 27px !important;}
    .fs28 {font-size: 28px !important;}
    .fs29 {font-size: 29px !important;}
    .fs30 {font-size: 30px !important;}
    .fs31 {font-size: 31px !important;}
    .fs32 {font-size: 32px !important;}
    .fs33 {font-size: 33px !important;}
    .fs34 {font-size: 34px !important;}
    .fs35 {font-size: 35px !important;}
    .fs36 {font-size: 36px !important;}

    .text_underline{
        margin: 0 auto 30px;
    }
    .text_underline span{
        position: relative;
        background: linear-gradient(transparent 65%, #FFF667 65%);
        width: fit-content;
        /* font-size: clamp(28px, 2.5vw, 36px); */
        font-weight: bold;
        margin: 0 auto;
        display: block;
        line-height: 1.2;
    }
}
@media all and (max-width: 1000px) and (min-width: 768px){
    .u-hide-pc{
        display: block !important;
    }
}
@media screen and (max-width: 1240px) and (min-width: 768px) {
    .inbox__full_sp {
        max-width: calc(100vw - 20px* 2) !important;
    }
    .inbox__full {
        max-width: 1000px;
    }
    .inbox__full.kv_wrap{
        max-width: 100% !important;
    }
}
@media all and (max-width: 767px) {
    .u-hide-pc-tab{
        display: block;
    }
    .u-hide-pc{
        display: block;
    }
    .u-hide-sp{
        display: none !important;
    }

    main p {
        font-size: calc(16/375*100vw);
    }
    img {
        width: 100%;
    }
    .h2__section_title{
        font-size: calc(26/375*100vw);
        line-height: 1.5;
        text-align: center;
        margin-bottom: calc(30/375*100vw);
        position: relative;
        padding-top: calc(40/375*100vw);
    }
    .h2__section_title::after{
        content: '';
        display: block;
        background: #0073B7;
        width: calc(140/375*100vw);
        height: calc(6/375*100vw);
        border-radius: 99px;
        position: absolute;
        bottom: calc(-8/375*100vw);
        left: 50%;
        transform: translateX(-50%);
    }
    .h2__section_title_sub{
        font-size: calc(20/375*100vw);
        font-weight: 400;
        display: block;
    }
    .sec_lead_text{
        font-size: calc(18/375*100vw);
        text-align: center;
        margin-bottom: 0;
    }

    /* btn */
    .btn__item{
        margin-top: calc(30/375*100vw);
    }
    .btn__item_wrap .btn__item + .btn__item{
        margin-top: calc(20/375*100vw);
    }
    .btn__link01 {
        display: flex;
        box-sizing: border-box;
        width: 100%;
        min-height: 50px;
        height: auto;
        padding: calc(12/375*100vw) calc(35/375*100vw) calc(10/375*100vw) calc(14/375*100vw);
        position: relative;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        text-align: center;
        background-color: #000099;
        border: 3px solid #fff;
        box-shadow: 0 0 10px rgba(102, 102, 102, 0.5);
        border-radius: 99px;
        background-repeat: no-repeat;
        background-size: 33px auto;
        background-position: 16px center;
        line-height: 1.2;
        margin: 0 auto;
        font-size: calc(20/375*100vw);
        width: calc(340/375*100vw);
        color: #fff !important;
    }
    .btn__link01 a, a:visited{
        /* color: #fff; */
    }
    .btn__link01::before {
        content: '';
        position: absolute;
        right: calc(30/375*100vw);
        transform-origin: center center;
        /* top: calc(50% - 3px); */
        top: calc(50% - 4px);
        /* transform: rotate(40deg); */
        transform: rotate(40deg) scale(1.2);
        background-color: #fff;
        display: inline-block;
        height: 2px;
        width: 10px;
    }
    .btn__link01::after  {
        content: '';
        position: absolute;
        right: calc(30/375*100vw);
        transform-origin: center center;
        top: calc(50% + 3px);
        transform: rotate(-40deg) scale(1.2);
        background-color: #fff;
        display: inline-block;
        height: 2px;
        width: 10px;
    }
    .btn__link01.btn__white{
        background: #fff;
        color: #0073B7 !important;
        border: 3px solid #0073B7;
    }
    .btn__link01.btn__white::before,
    .btn__link01.btn__white::after {
        background-color: #0073B7;
    }
    .btn__link01.btn__light_blue{
        background: #E8F2FB;
        color: #0073B7 !important;
        border: 3px solid #0073B7;
    }
    .btn__link01.btn__light_blue::before,
    .btn__link01.btn__light_blue::after {
        background-color: #0073B7;
        right: calc(20/375*100vw);
    }

    .block__has_full .inbox__full {
        max-width: 100vw;
    }
    .btn__goto_top{
        bottom: 50px;
    }
    .inbox__full {
        max-width: calc(100vw - 18px * 2);
    }

    /* font size */
    .fs10_sp {font-size: calc(10 / 375 * 100vw) !important;}
    .fs11_sp {font-size: calc(11 / 375 * 100vw) !important;}
    .fs12_sp {font-size: calc(12 / 375 * 100vw) !important;}
    .fs13_sp {font-size: calc(13 / 375 * 100vw) !important;}
    .fs14_sp {font-size: calc(14 / 375 * 100vw) !important;}
    .fs15_sp {font-size: calc(15 / 375 * 100vw) !important;}
    .fs16_sp {font-size: calc(16 / 375 * 100vw) !important;}
    .fs17_sp {font-size: calc(17 / 375 * 100vw) !important;}
    .fs18_sp {font-size: calc(18 / 375 * 100vw) !important;}
    .fs19_sp {font-size: calc(19 / 375 * 100vw) !important;}
    .fs20_sp {font-size: calc(20 / 375 * 100vw) !important;}
    .fs21_sp {font-size: calc(21 / 375 * 100vw) !important;}
    .fs22_sp {font-size: calc(22 / 375 * 100vw) !important;}
    .fs23_sp {font-size: calc(23 / 375 * 100vw) !important;}
    .fs24_sp {font-size: calc(24 / 375 * 100vw) !important;}
    .fs25_sp {font-size: calc(25 / 375 * 100vw) !important;}
    .fs26_sp {font-size: calc(26 / 375 * 100vw) !important;}
    .fs27_sp {font-size: calc(27 / 375 * 100vw) !important;}
    .fs28_sp {font-size: calc(28 / 375 * 100vw) !important;}
    .fs29_sp {font-size: calc(29 / 375 * 100vw) !important;}
    .fs30_sp {font-size: calc(30 / 375 * 100vw) !important;}
    .fs31_sp {font-size: calc(31 / 375 * 100vw) !important;}
    .fs32_sp {font-size: calc(32 / 375 * 100vw) !important;}
    .fs33_sp {font-size: calc(33 / 375 * 100vw) !important;}
    .fs34_sp {font-size: calc(34 / 375 * 100vw) !important;}
    .fs35_sp {font-size: calc(35 / 375 * 100vw) !important;}
    .fs36_sp {font-size: calc(36 / 375 * 100vw) !important;}

    .text_underline{
        margin: 0 auto 30px;
    }
    .text_underline span{
        position: relative;
        background: linear-gradient(transparent 65%, #FFF667 65%);
        width: fit-content;
        font-size: calc(24/375*100vw);
        font-weight: bold;
        margin: 0 auto;
        display: block;
    }

}



/* ////////////////////////////////////////////////
# kv
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .block__has_full .inbox__full.kv_wrap{
        padding-bottom: 0;
    }
    .block__has_full .inbox__full{
        padding-bottom: 40px;
        width: 100%;
    }
    .inbox__full.kv_wrap{
        max-width: 100%;
    }
    .kv_wrap{
        position: relative;
        background: #fff;
    }
    .kv{
        position: relative;
    }
    .kv .kv_main {
        position: relative;
        width: 100%;
        margin: 0;
        background: #fff;
    }
    .kv .kv_main img{
        width: 100%;
        filter: drop-shadow(0px 0px 5px rgba(102,102,102,0.5));
    }

    .kv_catch{
        position: absolute;
        top: 0;
        left: 0;
        margin-top: calc(60/1920*100vw);
        margin-left: calc(200/1920*100vw);
        width: calc(845/1920*100vw);
    }
    .kv_catch img{
        width: 100%;
    }
}
@media all and (max-width: 767px){
    .block__has_full .inbox__full.kv_wrap{
        padding-bottom: 0;
    }
    .block__has_full .inbox__full{
        padding-bottom: 40px;
        width: 100%;
    }
    .inbox__full.kv_wrap{
        max-width: 100%;
    }
    .kv_wrap{
        position: relative;
        background: #fff;
    }
    .kv{
        position: relative;
    }
    .kv .kv_main {
        position: relative;
        width: 100%;
        margin: 0;
        background: #fff;
    }
    .kv .kv_main img{
        width: 100%;
        filter: drop-shadow(0px 0px 5px rgba(102,102,102,0.5));
    }

    .kv_catch{
        position: absolute;
        inset: 0;
        margin: calc(20/375*100vw) auto 0;
        width: calc(299/375*100vw);
    }
}



/* ////////////////////////////////////////////////
# intro-sec
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    main img{
        width: 100%;
    }
    .l-sec{
        /* padding-bottom: calc(30/1920*100vw); */
    }
    .l-sec__in {
        max-width: 1000px;
        margin: 0 auto;
        padding: 0 20px;
    }
    .intro-sec{
        padding-top: 50px;
        background-image: linear-gradient(#fff 0%, #E8F2FB 50%,#0099db 100%);
    }
    .intro-sec__heading{
        width: calc(700/1000*100%);
        max-width: 700px;
        margin: 0 auto;
    }
    .intro-sec__body{
        padding-bottom: 30px;
    }

    .intro-nayami-block{
        position: relative;
        padding: 30px 0;
    }
    .nayami-block__bubble{
    }

    .intro-lead-block{
        width: 540px;
        position: relative;
        background: url('/products/yoro/special1/resource/img/bg_box_white_pc.png') no-repeat;
        background-size: contain;
        background-position: center;
        margin: 0 auto;
    }
    .intro-lead-block::before{
        position: absolute;
        left: 15px;
        top: 20px;
        width: 76px;
        aspect-ratio: 1 / 1;
        content: '';
        background-image: url('/products/yoro/special1/resource/img/icon_box_border_left.svg');
        background-size: contain;
        background-repeat: no-repeat;
    }
    .intro-lead-block::after{
        position: absolute;
        right: 15px;
        bottom: 20px;
        width: 76px;
        aspect-ratio: 1 / 1;
        content: '';
        background-image: url('/products/yoro/special1/resource/img/icon_box_border_right.svg');
        background-size: contain;
        background-repeat: no-repeat;
    }
    .intro-lead__in{
        padding: 60px 0;
        background-size: cover;
    }
    .intro-lead__text{
        text-align: center;
        display: flex;
        flex-direction: column;
        font-weight: bold;
        line-height: 1.5;
        margin-bottom: 0;
    }
    .intro-lead__text .--01{
        font-size: 36px;
    }
    .intro-lead__text .--02{
        font-size: 24px;
    }
    .intro-lead__text .--03{
        margin-top: calc(24/1920*100vw);
        font-size: 28px;
    }
    .intro-lead__text .--04{
        font-size: 48px;
        margin-bottom: 0;
    }

}
@media all and (max-width: 767px){
  .l-sec{
    padding-bottom: calc(30/375*100vw);
  }
  .l-sec__in{
    max-width: calc(100vw - calc(18/375*100vw)*2);
    margin: 0 auto;
  }
  .intro-sec{
    padding-top: calc(20/375*100vw);
    background-image: linear-gradient(#fff 0%, #E8F2FB 50%,#0099db 100%);
  }
  .intro-sec__body{
    padding: calc(10/375*100vw) 0 0;
  }
  .intro-nayami-block{
    position: relative;
  }

  .nayami-block__bubble{
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .intro-lead-block{
    padding: calc(10/375*100vw) 0;
    position: relative;
    background-image: url('/products/yoro/special1/resource/img/bg_box_white.png');
    background-size: 100vw;
    background-position: center;
  }
  .intro-lead-block::before{
    position: absolute;
    left: 0;
    top: calc(10/375*100vw);
    width: calc(38/375*100vw);
    aspect-ratio: 1 / 1;
    content: '';
    background-image: url('/products/yoro/special1/resource/img/icon_box_border_left.svg');
    background-size: contain;
    background-repeat: no-repeat;
  }
  .intro-lead-block::after{
    position: absolute;
    right: 0;
    bottom: calc(10/375*100vw);
    width: calc(38/375*100vw);
    aspect-ratio: 1 / 1;
    content: '';
    background-image: url('/products/yoro/special1/resource/img/icon_box_border_right.svg');
    background-size: contain;
    background-repeat: no-repeat;
  }
  .intro-lead__in{
    padding: calc(18/375*100vw);
    
    background-size: cover;
  }
  .intro-lead__text{
    text-align: center;
    display: flex;
    flex-direction: column;
    font-weight: bold;
    line-height: 1.5;
  }
  .intro-lead__text .--01{
    font-size: calc(24/375*100vw);
  }
  .intro-lead__text .--02{
    font-size: calc(18/375*100vw);
  }
  .intro-lead__text .--03{
    margin-top: calc(16/375*100vw);
    font-size: calc(20/375*100vw);
  }
  .intro-lead__text .--04{
    font-size: calc(36/375*100vw);
  }
}


/* ////////////////////////////////////////////////
# yoro-sec
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .yoro-sec{
        background-image: linear-gradient(180deg,#e8f2fb 0%, #0099db 100%);
        position: relative;
        z-index: 4;
    }
    .yoro-sec::after{
        position: absolute;
        content: '';
        bottom: 0;
        width: 100%;
        height: 306px;
        background-color: #0099db;
        clip-path: polygon(0 100%, 0 0, 100% 0);
        transform: translateY(100%);
    }
    .yoro-sec__in{
        border-radius: 20px;
        background-color: #fff;
        /* padding: 0 calc(10/375*100vw); */
    }
    .l-sec__in.yoro-sec__in{
        padding: 0;
    }
    .yoro-sec .inbox__full {
        padding: 50px 0;
    }
    .yoro-sec__heading {
        position: relative;
        margin-bottom: 50px;
    }
    .yoro-sec__heading::before {
        position: absolute;
        content: '';
        width: 1060px;
        height: 212px;
        background-image: url('/products/yoro/special1/resource/img/bg_light_blue_bubble_pc.png');
        background-size: contain;
        background-repeat: no-repeat;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
    }
    .yoro-sec__heading .box__bubble {
        padding: 30px 100px;
        font-size: 42px;
    }
    .yoro-sec__heading .box__bubbles.text_underline{
        margin-bottom: 0;
    }
    .yoro-sec__body {
        padding-bottom: 40px;
    }
    .yoro__text {
        text-align: center;
        margin-bottom: 0;
    }
    .yoro-sec .l-block {
        max-width: 560px;
        margin: auto;
    }

    .yoro_contents_block {
        background: url(/products/yoro/special1/resource/img/bg_yoro_section_sp.png) top center no-repeat;
        background-size: contain;
        height: 763px;
    }
    .yoro_contents__balloon {
        position: relative;
        height: 763px;
    }
    .yoro_contents__balloon__text {
        position: absolute;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 0;
    }
    .yoro_contents__balloon__text span {
        line-height: 1.46;
    }
    .yoro_contents__balloon__text.--01 {
        left: calc(65 / 529 * 100%);
        top: calc(140 / 763 * 100%);
    }
    .yoro_contents__balloon__text.--02 {
        left: calc(196 / 529 * 100%);
        top: calc(65 / 763 * 100%);
    }
    .yoro_contents__balloon__text.--03 {
        left: calc(317 / 529 * 100%);
        top: calc(194 / 763 * 100%);
    }
    .yoro_contents__desc {
        padding-right: 250px;
        margin-top: -290px;
    }
    .yoro_contents__desc__box {
        padding: 24px;
        border-radius: 4px;
    }
    .yoro_contents__desc__box__lead {
        font-size: 16px;
        font-weight: 700;
    }
    .yoro_contents__desc__box sup {
        font-size: 12px;
    }
    .yoro_contents__desc__box__amount {
        margin-top: 6px;
        padding-top: 6px;
        border-top: 2px dotted #0073B7;
        font-size: 36px;
        font-weight: 700;
        line-height: 36px;
    }
    .yoro_contents__desc__box p {
        margin-bottom: 0;
        text-align: center;
    }
    .yoro_contents__desc__box__amount span {
        font-size: 20px;
        font-weight: 600;
    }
    .yoro_contents__desc__box+.yoro_contents__desc__box {
        margin-top: 20px;
    }
    .yoro__text{
        font-weight: 700;
        font-size: 28px;
        margin-top: calc(12/375*100vw);
    }
    .yoro__lead_img{
        width: 140px;
        margin: 0 auto;
    }
    .yoro__lead_title{
        font-weight: 700;
        text-align: center;
        position: relative;
    }
    .yoro__lead_title::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_yoro_new_free_bg_pc.png) center center no-repeat;
        background-size: cover;
        width: 459.8px;
        height: 138.8px;
        z-index: 1;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .yoro__lead_title p{
        position: relative;
        z-index: 2;
        padding: 28px 0;
        font-size: 42px;
        margin: 0;

    }
    .yoro__lead_title span{
        display: block;
        line-height: 1!important;
        font-size: 24px;
    }
    .yoro-sec .list__annotation_kanji_and_number{
        margin-bottom: 0;
    }
    .yoro-sec .list__annotation_kanji_and_number li::before {
        content: "*" counter(number);
        display: block;
        position: absolute;
        left: 0;
    }


}
@media (max-width: 1000px) and (min-width: 768px) {
    .inbox__full {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
    .yoro-sec__heading::before {
        width: calc(100% + 6%);
    }
    .yoro-sec__heading .box__bubble {
        padding: 2% 3%;
        margin-bottom: 2%;
    }
}
@media all and (max-width: 767px){
  .yoro-sec{
    background-image: linear-gradient(180deg,#e8f2fb 0%, #0099db 100%);
    position: relative;
    padding-bottom: calc(10/375*100vw);
    z-index: 4;
  }
  .yoro-sec::after{
    position: absolute;
    content: '';
    bottom: 0;
    width: 100%;
    height: calc(100/375*100vw);
    background-color: #0099db;
    clip-path: polygon(0 100%, 0 0, 100% 0);
    transform: translateY(100%);
  }
  .yoro-sec__in{
    border-radius: calc(20/375*100vw);
    background-color: #fff;
    /* padding: 0 calc(10/375*100vw); */
  }
    .yoro-sec .inbox__full {
        padding: 50px 0;
    }
    .yoro-sec__heading {
        position: relative;
        margin-bottom: calc(38 / 375 * 100vw);
    }
  .yoro-sec__heading::before{
    position: absolute;
    content: '';
    width: 100%;
    height: calc(105 / 375 * 100vw);
    background: url('/products/yoro/special1/resource/img/bg_light_blue_bubble.png') center top no-repeat;
    background-size: contain;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    filter: drop-shadow(0px 0px 20px rgba(0,115,183,0.5));
  }
  .yoro-sec__heading .box__bubble{
    padding: 16px 25px 16px;
    padding: calc(15/375*100vw)calc(10/375*100vw)calc(20/375*100vw);
    font-size: calc(26/375*100vw);
  }
  .yoro-sec__heading .box__bubbles.text_underline{
    margin-bottom: 0;
  }
  .yoro-sec__body{
    padding: 0 calc(10 / 375 * 100vw);
  }
  .yoro__text {
    text-align: center;
    margin-bottom: 0;
    }
    .yoro-sec__body {
        padding-bottom: calc(30 / 375 * 100vw);
    }
    .yoro_contents_block {
        background: url(/products/yoro/special1/resource/img/bg_yoro_section_sp.png) top center no-repeat;
        background-size: contain;
        height: calc(507/375*100vw);
        padding-bottom: calc(20 / 375 * 100vw);
    }
    .yoro_contents__balloon {
        position: relative;
    }
    .yoro_contents__balloon__text {
        position: absolute;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 0;
    }
    .yoro_contents__balloon__text span {
        line-height: 1.46;
    }
    .yoro_contents__balloon__text.--01 {
        max-width: calc(96/375*100vw);
        left: calc(22/375*100vw);
        top: calc(88/375*100vw);
    }
    .yoro_contents__balloon__text.--02 {
        left: calc(108/375*100vw);
        top: calc(44/375*100vw);
        gap: calc(4/375*100vw);
    }
    .yoro_contents__balloon__text.--03 {
        left: calc(197 / 375 * 100vw);
        top: calc(126 / 375 * 100vw);
        gap: calc(4/375*100vw);
    }
    .yoro_contents__desc {
        padding-top: calc(304/375*100vw);
        padding-right: calc(111/375*100vw);
    }
    .yoro_contents__desc__box {
        padding: calc(12/375*100vw) calc(11/375*100vw);
        border-radius: calc(4/375*100vw);
    }
    .yoro_contents__desc__box__lead {
        font-size: calc(14/375*100vw);
        font-weight: 700;
    }
    .yoro_contents__desc__box__amount {
        margin-top: calc(4/375*100vw);
        padding-top: calc(4/375*100vw);
        border-top: 2px dotted #0073B7;
        font-size: calc(24/375*100vw);
        font-weight: 700;
        line-height: calc(30/375*100vw);
    }
    .yoro_contents__desc__box p {
        margin-bottom: 0;
        text-align: center;
    }
    .yoro_contents__desc__box__amount span {
        font-size: calc(16/375*100vw);
        font-weight: 600;
    }
    .yoro_contents__desc__box+.yoro_contents__desc__box {
        margin-top: calc(20/375*100vw);
    }
    .yoro__text{
        font-weight: 700;
        margin-top: calc(12/375*100vw);
    }
    .yoro__lead_img{
        width:  calc(120/375*100vw);
        margin: 0 auto;
    }
    .yoro__lead_title{
        font-weight: 700;
        text-align: center;
        position: relative;
    }
    .yoro__lead_title::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_yoro_new_free_bg_sp.png) center center no-repeat;
        background-size: cover;
        position: absolute;
        width: 100%;
        height: calc(98.14/375*100vw);
        z-index: 1;
    }
    .yoro__lead_title p{
        position: relative;
        z-index: 2;
        padding: calc(18/375*100vw);
    }
    .yoro__lead_title span{
        display: block;
        line-height: 1!important;
    }
    .yoro-sec .list__annotation_kanji_and_number{
        margin-bottom: 0;
    }
    .yoro-sec .list__annotation_kanji_and_number li::before {
        content: "*" counter(number);
        display: block;
        position: absolute;
        left: 0;
    }
    
    
}


/* ////////////////////////////////////////////////
# point-sec
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .point-sec{
        position: relative;
    }
    .point__list__item__lead{
        width: fit-content;
        margin: 0 auto;
        position: relative;
        z-index: 15;
    }
    .point-sec.--01 .point__list__item__lead{
        transform:unset;
        transform: translateX(-30px);
    }
    .point-sec.--02 .point__list__item__lead{
        transform:unset;
        transform: translateX(-30px);
    }
    .point-sec.--03 .point__list__item__lead{
        transform:unset;
        transform: translateX(50px);
    }
    .point__list__item__lead-text{
        position: relative;
        z-index: 15;
        padding: 20px 0 52px;
        background: url(/products/yoro/special1/resource/img/img_point01_bubble_pc.png) left top no-repeat;
        background-size: contain;
        width: 400px;
        filter: drop-shadow(0px 0px 10px rgba(102,102,102,0.5));
    }
    .point-sec.--02 .point__list__item__lead-text{
        padding: 20px 0 52px;
        background: url(/products/yoro/special1/resource/img/img_point02_bubble_pc.png) left top no-repeat;
        background-size: contain;
        width: 460px;
    }
    .point-sec.--03 .point__list__item__lead-text {
        position: relative;
        z-index: 10;
        padding: 20px 0 52px 29px;
        background: url(/products/yoro/special1/resource/img/img_point03_bubble_pc.png) left top no-repeat;
        background-size: contain;
        width: 466px;
    }
    .point__list__item__lead-text p{
        font-size: 24px;
        font-weight: 700;
        text-align: center;
        margin-bottom: 0;
    }
    .point__list__item__lead-text::after {
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_point01_bubble_img_sp.png) left top no-repeat;
        background-size: contain;
        width: 160px;
        height: 160px;
        position: absolute;
        top: -23px;
        right: -132px;
        z-index: 15;
    }
    .point_contents_head_block {
        margin: 0 auto;
        border-radius: 10px;
        background: #fff;
        overflow: hidden;
        z-index: 10;
        position: relative;
    }
    .point_contents__head{
        background: #0073B7;
        border-radius: 10px;
        border: 2px solid #fff;
        position: relative;
        font-size: 28px;
        color: #fff;
        text-align: center;
        z-index: 10;
        padding: 7px 0;
    }
    .point_contents__head h3{
        margin: 0;
    }
    .point_contents__head span{
        font-size: 46px;
        margin-left: 10px;
    }
    .point_contents__head__in{
        padding: 28px 20px 30px;
    }
    .point_contents__head_text{
        text-align: center;
        font-weight: 700;
        font-size:36px;
        margin: 0;
    }
    .point-case-heading{
        width: auto;
        height: 46px;
        margin: 0 auto;
        display: block;
        margin-bottom: 36px;
    }
    .point_contents__body{
        margin-top: 50px;
    }
    .point_contents__in{
    }
    .point-sec .btn__item:has(.btn__link01.btn__white){
        margin-top: 0;
    }
    .point_contents_item-img{
        max-width: 500px;
        width: calc(500/872*100%);
    }
    .point_contents_item{
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: initial;
    }
    .point_contents_item:nth-of-type(2){
        flex-direction: row-reverse;
    }
    .point_contents_item + .point_contents_item {
        margin-top: 10px;
    }


    .point-sec.--01{
        background-color: #CCE7FF;
        padding-bottom: 124.4px;
    }
    .point-sec.--01::after {
        position: absolute;
        content: '';
        bottom: 0;
        width: 100%;
        height: 307px;
        background-color: #CCE7FF;
        clip-path: polygon(0 100%, 0 0, 100% 0);
        transform: translateY(100%);
    }
    .point-sec .btn__item {
        margin-top: 40px;
    }
    .point-sec.--01 .point_contents__in {
        margin: 0 20px;
    }
 

 
    .point-sec.--02 .point-case-heading {
        max-width: 771.28px;
        width: calc(771.28/1000*100%);
        height: auto;
        margin: 0 auto;
        display: block;
        margin-bottom: 20px;
    }
    .point-sec.--02 .point_contents_item:nth-of-type(2) {
        flex-direction: column;
        width: 700px;
        margin: 60px auto 0;
    }
    .point-sec.--02 .point_contents_item:nth-of-type(2) .point-case-heading{
        max-width: 771.28px;
        width: auto;
        height: 40px;
        margin-bottom: 30px;
    }
    .point-sec.--02 .point_contents_item:nth-of-type(2) .list__annotation{
        margin-top: 24px;
        margin-bottom: 0;
    }
 
    .point-sec.--02 .btn__item {
        /* margin-top: calc(30/375*100vw); */
    }
    .point-sec.--02{
        /* padding-bottom: calc(20/375*100vw); */
    }

    .point-sec.--03::before{
        position: absolute;
        content: '';
        top: 0;
        width: 100%;
        height: 306px;
        background-color: #fff;
        clip-path: polygon(0 -1%, 100% -1%, 100% 100%, 0 24%);
        }
    .point-sec.--03{
        padding-top: 134px;
        padding-bottom: 55px;
        background-color: #CCE7FF;
    }

    .point-sec.--03 .point__list__item__lead-text p {
        text-align: left;
        width: fit-content;
    }
    .point-sec.--03 .point__list__item__lead-text::after {
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_point03_bubble_img_sp.png) left top no-repeat;
        background-size: contain;
        width: 160px;
        height: 160px;
        position: absolute;
        top: -23px;
        left: -132px;
        z-index: 15;
    }
    .point-sec.--03 .point_contents_item + .point_contents_item {
        margin-top: 0;
    }
    .point_contents_item--white__wrap{
        display: flex;
        gap: 10px;
    }
    .point_contents_item.point_contents_item--white{
        flex-direction: column;
    }
    .point_contents_item--white{
        background: #fff;
        padding: 25px;
        border-radius: 10px;
        width: calc(100%/2);
    }
    .point_contents_item--white.bl01 .lead-img{
        margin: 0 auto;
        display: block;
    }
    .point_contents_item--white.bl02 .lead-img{
        max-width: calc(234.79/375*100vw);
        margin: 0 auto;
        display: block;
    }
    .desc-item{
        display: flex;
        align-items: center;
        margin-top: 20px;
    }
    .desc-item-icon{
        flex-shrink: 0;
        width: 100px;
        height: 100px;
    }
    .desc-item-text{
        margin-left: 10px;
        font-size: 20px;
        margin-bottom: 0;
    }
    .point-sec.--03 .btn__item {
        margin-top: 40px;
    }
    .point-sec.--03 .point_contents_item + .point_contents_item {
    }
    
    .point-sec .btn__item + img{
        margin-top: calc(30/375*100vw);
    }
    .point-sec .btn__link01.btn__white{
        font-size: 18px;
        width: 360px;
        padding: 14px 32px;
        margin: 0;
    }
    .point-sec .btn__link01::before,
    .point-sec .btn__link01::after{
        right: 31px;
    }
}

@media all and (max-width: 767px){
    .point-sec{
        position: relative;
    }
    .point__list__item__lead-text{
        position: relative;
        z-index: 10;
        padding: calc(12/375*100vw) 0 calc(27/375*100vw);
        background: url(/products/yoro/special1/resource/img/img_point01_bubble_sp.png) left top no-repeat;
        background-size: contain;
        width: calc(250/375*100vw);
        filter: drop-shadow(0px 0px 10px rgba(102,102,102,0.5));
    }
    .point__list__item__lead-text p{
        font-size: calc(18/375*100vw);
        font-weight: 700;
        text-align: center;
    }
    .point__list__item__lead-text::after{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_point01_bubble_img_sp.png) left top no-repeat;
        background-size: contain;
        width: calc(120/375*100vw);
        height: calc(120/375*100vw);
        position: absolute;
        top: calc(15/375*100vw);
        right: calc(-100/375*100vw);
        z-index: 10;
    }
    .point_contents_head_block{
        margin: 0 auto;
        border-radius: calc(10/375*100vw);
        background: #fff;
        overflow: hidden;
    }
    .point_contents__head{
        background: #0073B7;
        border-radius: calc(10/375*100vw);
        border: calc(2/375*100vw) solid #fff;
        position: relative;
    }
    .point_contents__head{
        font-size: calc(20/375*100vw);
        color: #fff;
        text-align: center;
    }
    .point_contents__head h3{
        margin: 0;
    }
    .point_contents__head span{
        font-size: calc(36/375*100vw);
        margin-left: calc(10/375*100vw);
    }
    .point_contents__head__in{
        padding: calc(18/375*100vw)calc(25/375*100vw);
    }
    .point_contents__head_text{
        text-align: center;
        font-weight: 700;
        font-size: calc(24/375*100vw);
        margin: 0;
    }
    .point-case-heading{
        max-width: calc(250/375*100vw);
        margin: 0 auto;
        display: block;
        margin-bottom: calc(12/375*100vw);
    }
    .point_contents__body{
        margin-top: calc(30/375*100vw);
    }
    .point_contents__in{
        /* padding: 0 calc(10/375*100vw); */
    }
    .point-sec .btn__item:has(.btn__link01.btn__white){
        margin-top: 0;
    }
    .point_contents_item + .point_contents_item {
        margin-top: calc(30/375*100vw);
    }

    .point-sec.--01{
        background-color: #CCE7FF;
        padding-bottom: calc(50/375*100vw);
    }
    .point-sec.--01::after{
        position: absolute;
        content: '';
        bottom: 0;
        width: 100%;
        height: calc(120/375*100vw);
        background-color: #CCE7FF;
        clip-path: polygon(0 -1%, 100% -1%, 100% 100%, 0 30%);
        transform: translateY(100%);
    }
    .point-sec .btn__item {
        margin-top: calc(40/375*100vw);
    }

 
    .point-sec.--02 .point-case-heading {
        max-width: calc(305.61/375*100vw);
        margin: 0 auto;
        display: block;
        margin-bottom: calc(20/375*100vw);
    }

    .point-sec.--02 .point_contents_item + .point_contents_item {
        margin-top: calc(40/375*100vw);
    }
    .point-sec.--02 .point_contents_item:nth-of-type(2) {
        padding: 0 calc(10/375*100vw);
    }
    .point-sec.--02 .btn__item {
        margin-top: calc(30/375*100vw);
    }
    .point-sec.--02{
        padding-bottom: calc(20/375*100vw);
    }

    .point-sec.--03::before{
        position: absolute;
        content: '';
        top: 0;
        width: 100%;
        height: calc(134 / 375 * 100vw);
        background-color: #fff;
        clip-path: polygon(0 -1%, 100% -1%, 100% 100%, 0 24%);
        }
    .point-sec.--03{
        padding-top: calc(30/375*100vw);
        padding-bottom: calc(40/375*100vw);
        background-color: #CCE7FF;
    }
    .point-sec.--03 .point__list__item__lead-text {
        position: relative;
        z-index: 10;
        padding: calc(12/375*100vw) calc(17/375*100vw) calc(27/375*100vw);
        background: url(/products/yoro/special1/resource/img/img_point03_bubble_sp.png) left top no-repeat;
        background-size: contain;
        margin-left: auto;
        width: fit-content;
    }
    .point-sec.--03 .point__list__item__lead-text p {
        text-align: left;
        width: fit-content;
    }
    .point-sec.--03 .point__list__item__lead-text::after {
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/img_point03_bubble_img_sp.png) left top no-repeat;
        background-size: contain;
        width: calc(120/375*100vw);
        height: calc(120/375*100vw);
        position: absolute;
        top: calc(15/375*100vw);
        left: calc(-100/375*100vw);
        z-index: 10;
    }
    .point_contents_item--white{
        background: #fff;
        padding: calc(10/375*100vw);
        border-radius: calc(10/375*100vw);
    }
    .point_contents_item--white.bl01 .lead-img{
        max-width: calc(292/375*100vw);
        margin: 0 auto;
        display: block;
    }
    .point_contents_item--white.bl02 .lead-img{
        max-width: calc(234.79/375*100vw);
        margin: 0 auto;
        display: block;
    }
    .desc-item{
        display: flex;
        align-items: center;
        margin-top: calc(10/375*100vw);
    }
    .desc-item-icon{
        flex-shrink: 0;
        width: calc(60/375*100vw);
        height: calc(60/375*100vw);
    }
    .desc-item-text{
        margin-left: calc(8/375*100vw);
        font-size: calc(14/375*100vw);
        margin-bottom: 0;
    }
    .point-sec.--03 .btn__item {
        margin-top: calc(30/375*100vw);
    }
    .point-sec.--03 .point_contents_item + .point_contents_item {
        margin-top: calc(12/375*100vw);
    }
    
    .point-sec .btn__item + img{
        margin-top: calc(30/375*100vw);
    }
    .point-sec .btn__link01.btn__white{
        font-size: calc(16/375*100vw);
        width: calc(309/375*100vw);
        min-height: 42px;
        padding: calc(8 / 375 * 100vw) calc(25 / 375 * 100vw) calc(8 / 375 * 100vw) calc(14 / 375 * 100vw);
    }
    .point-sec .btn__link01::before,
    .point-sec .btn__link01::after{
        right: calc(25 / 375 * 100vw);
    }
}


/* ////////////////////////////////////////////////
# voice-sec
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .voice-sec {
        padding-bottom: 50px;
    }
    .voice_block{
        max-width: 800px;
        margin: 78px auto 0;
        display: block;
    }
    .voice_item{
        position: relative;
        background: #fff;
        padding: 72px 50px 40px;
        border-radius: 2px;
    }
    .voice_item + .voice_item{
        margin-top: 68px;
    }
    .voice_item_text{
        margin-bottom: 0;
    }
    .voice_item_text span{
        border-bottom: 1px solid #0099DB;
        display: block;
        line-height: 1.75;
        font-size: clamp(16px, 2vw, 20px);
        letter-spacing: -0.03em;
    }
    .voice_item:before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice01.png) no-repeat center center;
        background-size: cover;
        position: absolute;
        width: 130px;
        height: 130px;
        top: -65px;
        left: 35px;
    }
    .voice_item:nth-of-type(2)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice02.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(3)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice03.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(4)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice04.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(5)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice05.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item::after{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice01_text_pc.png) no-repeat center center;
        background-size: cover;
        position: absolute;
        width: 208px;
        height: 76px;
        top: -28px;
        right: -32px;
    }
    .voice_item:nth-of-type(2)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice02_text_pc.png) no-repeat center center;
        background-size: cover;
        width: 316px;
    }
    .voice_item:nth-of-type(3)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice03_text_pc.png) no-repeat center center;
        background-size: cover;
        width: 316px;
    }

    .voice_item:nth-of-type(4)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice04_text_pc.png) no-repeat center center;
        background-size: cover;
        width: 319px;
    }
    .voice_item:nth-of-type(5)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice05_text_pc.png) no-repeat center center;
        background-size: cover;
        width: 354px;
    }
    .voice_item:nth-of-type(6)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice05_text_pc.png) no-repeat center center;
        background-size: cover;
        width: 334px;
    }
    .voice__annotation{
      max-width: 800px;
      margin-inline: auto;
      margin-top: 30px;
    }
    .voice__annotation .list__annotation li::before{
      content: "＊";
    }
}
@media all and (max-width: 1000px) and (min-width: 768px){
    .voice_block{
        padding: 0 20px;
    }
}
@media all and (max-width: 767px){
    .voice_item + .voice_item {
        margin-top: calc(60/375*100vw);
    }
    .voice .about_h3_title{
        margin: calc(60/375*100vw) 0 calc(13/375*100vw);

    }
    .voice_block{
        margin: calc(60/375*100vw) auto 0;
        display: block;
    }
    .voice_item{
        position: relative;
        background: #fff;
        padding: calc(50/375*100vw) calc(20/375*100vw) calc(20/375*100vw);
        border-radius: 2px;
        margin-right: calc(10/375*100vw);
    }
    .voice_item + .voice_item{
        margin-top: 68px;
    }
    .voice_item_text{
        margin-bottom: 0;
    }
    .voice_item_text span{
        border-bottom: 1px solid #0099DB;
        display: block;
        line-height: 1.5;
        font-size: calc(16/375*100vw);
        letter-spacing: -0.03em;
    }
    .voice_item:before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice01.png) no-repeat center center;
        background-size: cover;
        position: absolute;
        width: calc(100/375*100vw);
        height: calc(100/375*100vw);
        top: calc(-55/375*100vw);
        left: calc(0/375*100vw);
    }
    .voice_item:nth-of-type(2)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice02.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(3)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice03.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(4)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice04.png) no-repeat center center;
        background-size: cover;
    }
    .voice_item:nth-of-type(5)::before{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice05.png) no-repeat center center;
        background-size: cover;
        z-index: 1;
    }
    .voice_item::after{
        content: '';
        display: block;
        background: url(/products/yoro/special1/resource/img/icon_voice01_text_sp.png) no-repeat center center;
        background-size: cover;
        position: absolute;
        width: calc(164/375*100vw);
        height: calc(52/375*100vw);
        top: calc(-26/375*100vw);
        right: calc(-22/375*100vw);
    }
    .voice_item:nth-of-type(2)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice02_text_sp.png) no-repeat center center;
        background-size: cover;
        width: calc(248/375*100vw);
    }
    .voice_item:nth-of-type(3)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice03_text_sp.png) no-repeat center center;
        background-size: cover;
        width: calc(262/375*100vw);
        right: calc(-24 / 375 * 100vw);
    }

    .voice_item:nth-of-type(4)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice04_text_sp.png) no-repeat center center;
        background-size: cover;
        width: calc(248/375*100vw);
    }
    .voice_item:nth-of-type(5)::after{
        background: url(/products/yoro/special1/resource/img/icon_voice05_text_sp.png) no-repeat center center;
        background-size: cover;
        width: calc(262/375*100vw);
        right: calc(-15 / 375 * 100vw);
        z-index: 0;
    }
    .voice__annotation{
      margin-top: calc(30 / 375 * 100vw);
    }
    .voice__annotation .list__annotation li::before{
      content: "＊";
    }

}


/* ////////////////////////////////////////////////
# about
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .about_h3_title{
        font-size: 36px;
        line-height: 1.5;
        text-align: center;
    }
    .about_h3_title span{
        font-size: 52px;
    }
    .strong_point_data{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        max-width: 560px;
        margin: 0 auto;
        position: relative;
    }
    .strong_point_data_item{
        position: relative;
        text-align: center;
        width: calc(265/1000*100vw);
        height: calc(265/1000*100vw);
        max-width: 265px;
        max-height: 265px;
        background: #0099DB;
        border-radius: 999px;
        filter: drop-shadow(0px 0px 5px rgba(102,102,102,0.5));
    }
    .data_text_wrap{
        z-index: 1;
        color: #fff;
        display: block;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .data_text_wrap p{
        margin-bottom: 0;
    }
    .data_text_label{
        font-size: calc(28/1000*100vw);
        padding-bottom: calc(8/1000*100vw);
        font-weight: bold;
        line-height: 1.3;
    }
    .data_text{
        font-size: calc(28/1000*100vw);
        font-weight: bold;
        position: relative;
        width: fit-content;
        margin: 0 auto;
    }
    .strong_point_data_item:nth-of-type(2) .data_text::after{
        content: '＊1';
        font-size: 14px;
        font-size: calc(14/1000*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: 10%;
        right: 0;
    }
    .strong_point_data_item:nth-of-type(3) .data_text::after{
        content: '＊3';
        font-size: 14px;
        font-size: calc(14/1000*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: 10%;
        right: 0;
    }
    .strong_point_data_item:nth-of-type(4) .data_text::after{
        content: '＊4';
        font-size: 14px;
        font-size: calc(14/1000*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: calc(-10/1000*100vw);
        right: calc(-15/1000*100vw);
    }
    .data_text_l{
        font-size: 58px;
        font-size: calc(58/1000*100vw);
        line-height: 1.379310345;
    }
    .data_text_sub{
        font-size: 22px;
        font-size: calc(22/1000*100vw);
        line-height: 1.4;
    }
    .strong_point_data_item:nth-of-type(1) + .strong_point_data_item:nth-of-type(2){
        margin-left: 30px;
    }
    .strong_point_data_item:nth-of-type(3) + .strong_point_data_item:nth-of-type(4){
        margin-left: 30px;
    }
    .strong_point_data_item:nth-of-type(3),.strong_point_data_item:nth-of-type(4){
        margin-top: 30px;
    }
    .strong_point_data_item:nth-of-type(4) .data_text_label{
        padding-bottom: 0;
    }

    .list__annotation_kanji_and_number{
        max-width: 800px;
        margin: 20px auto 0;
    }
    .list__annotation_kanji_and_number li::before {
        content: "＊" counter(number);
        display: block;
        position: absolute;
        left: 0;
    }
    .list__annotation_kanji_and_number li + li{
        margin-top: 8px !important;
    }

    .about .data_text_sub sup{
        font-size: 14px;
        /* margin-left: -10px; */
    }
    .about .list__annotation_kanji_and_number{
        margin-top: 60px ;
        margin-bottom: 50px ;
    }
}
@media all and (min-width: 1001px){
    .data_text_label{
        font-size: 28px;
        padding-bottom: 8px;
    }
    .data_text{
        font-size: 28px;
    }
    .strong_point_data_item:nth-of-type(2) .data_text::after{
        font-size: 14px;
    }
    .strong_point_data_item:nth-of-type(3) .data_text::after{
        font-size: 14px;
    }
    .strong_point_data_item:nth-of-type(4) .data_text::after{
        font-size: 14px;
        right: -15px;
    }
    .data_text_l{
        font-size: 58px;
    }
    .strong_point_data_item:nth-of-type(4) .data_text_l{
        line-height: .8;
    }
    .data_text_sub{
        font-size: 22px;
    }
}
@media all and (max-width: 1000px) and (min-width: 768px){
    .data_text_l{
        line-height: 1;
    }
}
@media all and (max-width: 767px){
    .about .data_text_sub sup{
        font-size: calc(12/375*100vw);
        /* margin-left: -10px; */
    }
    .about_h3_title{
        font-size: calc(24/375*100vw);
        line-height: 1.5;
        text-align: center;
        margin: calc(20/375*100vw) 0 calc(20/375*100vw);
    }
    
    .about_h3_title span{
        font-size: calc(32/375*100vw);
    }
    .strong_point_data{
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        margin: 0 auto;
        position: relative;
        width: calc(339/375*100vw);
    }
    .strong_point_data_item{
        position: relative;
        text-align: center;
        width: calc(160/375*100vw);
        height: calc(160/375*100vw);
        background: #0099DB;
        border-radius: 999px;
        filter: drop-shadow(0px 0px 5px rgba(102,102,102,0.5));
        display: flex;
        justify-content: center;
    }
    .data_text_wrap{
        z-index: 1;
        color: #fff;
        display: block;
        width: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .data_text_wrap p{
        margin-bottom: 0;
    }
    .data_text_label{
        font-size: calc(18/375*100vw);
        padding-bottom: calc(0/375*100vw);
        font-weight: bold;
        line-height: 1.3;
    }
    .data_text{
        font-size: calc(22/375*100vw);
        font-weight: bold;
        position: relative;
        width: fit-content;
        margin: 0 auto;
    }
    .strong_point_data_item:nth-of-type(2) .data_text::after{
        content: '＊1';
        font-size: calc(12/375*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: 10%;
        right: 0;
    }
    .strong_point_data_item:nth-of-type(3) .data_text::after{
        content: '＊3';
        font-size: calc(12/375*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: 10%;
        right: 0;
    }
    .strong_point_data_item:nth-of-type(4) .data_text::after{
        content: '＊4';
        font-size: calc(12/375*100vw);
        line-height: 1.5;
        font-weight: 400;
        position: absolute;
        top: calc(-13/375*100vw);
        right: calc(-9/375*100vw);
    }
    .data_text_l{
        font-size: calc(35/375*100vw);
        line-height: 1.4;
    }
    .data_text_sub{
        font-size: calc(14/375*100vw);
        line-height: 1.5;
        letter-spacing: -0.03em;
    }
    
    .strong_point_data_item:nth-of-type(1) + .strong_point_data_item:nth-of-type(2){
        margin-left: calc(19/375*100vw);
    }
    .strong_point_data_item:nth-of-type(3) + .strong_point_data_item:nth-of-type(4){
        margin-left: calc(19/375*100vw);
    }
    .strong_point_data_item:nth-of-type(3),.strong_point_data_item:nth-of-type(4){
        margin-top: calc(19/375*100vw);
    }
    .strong_point_data_item:nth-of-type(4) .data_text_label{
        padding-bottom: 0;
    }
    .strong_point_data_item:nth-of-type(4) .data_text_l{
        line-height: .5;
    }

    .list__annotation_kanji_and_number li{
        margin: calc(30/375*100vw) auto 0;
        font-size: calc(12/375*100vw);
        line-height: 1.5;
        padding-left: calc(25/375*100vw);
    }
    .list__annotation_kanji_and_number li::before {
        content: "＊" counter(number);
        display: block;
        position: absolute;
        left: 0;
    }
    .list__annotation_kanji_and_number li + li{
        margin-top: calc(10/375*100vw) !important;
    }
    
}



/* ////////////////////////////////////////////////
# faq-sec
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .faq-sec{
        background-color: #E8F2FB;
    }
    .faq-sec .l-sec__in{
        padding-bottom: 50px;
    }
    .faq-block {
        max-width: 800px;
        margin: auto;
    }
    .faq__item {
        background-color: #fff;
        border-radius: 10px;
        padding: 20px;
    }
    .faq__item + .faq__item{
        margin-top: calc(20/375*100vw);
    }
    .faq__item .btn__item{
        margin-top: calc(20/375*100vw);
        padding-left: calc(10/375*100vw);
    }
    .faq__item .btn__item .btn__link01{
        width: 100%;
    }
    .faq__item .btn__item {
        margin-top: 10px;
        padding: 0 189px;
    }
    .faq__question__block,
    .faq__answer__block {
        display: flex;
        align-items: stretch;
        gap: 20px;
    }
    .faq__answer__block {
        position: relative;
        margin-top: 20px;
        padding-top: 20px;
    }
    .faq__answer__block::before {
        position: absolute;
        content: '';
        background-image: linear-gradient(to right, #0099DB, #0099DB 5px, transparent 5px, transparent 10px);
        background-size: 10px 1px;
        background-repeat: repeat-x;
        top: 0;
        width: 100%;
        height: 1px;
    }
    .faq__icon{
        flex-shrink: 0;
    }
    .faq__icon img {
        width: 70px;
        height: 70px;
        filter: drop-shadow(0 0 10px rgba(0, 115, 183, 0.5));
    }
    .faq__question, .faq__answer {
        display: flex;
        align-items: center;
        margin-bottom: 0;
    }

    .faq__answer.bl_phone{
        flex-direction: column;
        align-items: initial;
    }
}
@media all and (max-width: 767px){
    .faq-sec{
        background-color: #E8F2FB;
    }
    .faq-block{
     padding-top: calc(10/375*100vw);
    }
    .faq__item{
        background-color: #fff;
        border-radius: calc(10/375*100vw);
        padding: calc(16/375*100vw) calc(10/375*100vw);
    }
    .faq__item + .faq__item{
        margin-top: calc(20/375*100vw);
    }
    .faq__item .btn__item{
        margin-top: calc(20/375*100vw);
        padding-left: calc(10/375*100vw);
    }
    .faq__item .btn__item .btn__link01{
        width: 100%;
    }
    .faq__question__block,
    .faq__answer__block{
        display: flex;
        align-items: center;
        gap: calc(12/375*100vw);
    }
    .faq__answer__block{
        position: relative;
        margin-top: calc(20/375*100vw);
        padding-top: calc(20/375*100vw);
    }
    .faq__answer__block::before{
        position: absolute;
        content: '';
        background-image: linear-gradient(to right, #0099DB, #0099DB 5px, transparent 5px, transparent 10px);
        background-size: calc(10/375*100vw) calc(1/375*100vw);
        background-repeat: repeat-x;
        top: 0;
        width: 100%;
        height: calc(1/375*100vw);
    }
    .faq__icon{
        flex-shrink: 0;
        width: calc(50/375*100vw);
        height: calc(50/375*100vw);
        box-shadow: 0 0 10px rgba(0, 115, 183, 0.5);
        border-radius: 9999px;
    }
    .faq__question,
    .faq__answer{
        margin-bottom: 0;
    }
    .faq__answer.bl_phone{
        flex-direction: column;
        align-items: initial;
    }
}


/* ////////////////////////////////////////////////
# bnrarea
//////////////////////////////////////////////// */
.bnrarea_list_img-03.animated {
    animation-delay: .9s !important;
}
.popin.animated {
    animation: poko .7s cubic-bezier(.175, .885, .32, 1.275) forwards;
    animation-delay: .2s;
    opacity: 0;
}
@keyframes poko {
    0% {
     opacity: 0;
     -webkit-transform: scale(.7);
     transform: scale(.7)
    }
    to {
     opacity: 1;
     -webkit-transform: scale(1);
     transform: scale(1)
    }
}
.bnrarea {
    background-color: #fff;
    margin: 85px auto 0px;
    max-width: 550px;
    width: 55%;
}
.bnrarea_tit {
    font-size: 20px;
    letter-spacing: .04em;
    line-height: 1.66;
    text-align: center;
}
.bnrarea_tit span {
    display: inline-block;
    position: relative;
}
.bnrarea_tit span:after, .bnrarea_tit span:before {
    bottom: 8px;
    content: "";
    display: block;
    height: 29px;
    position: absolute;
    width: 14px;
}
.bnrarea_tit span:before {
    background: url(/products/yoro/special1/resource/img/bnrarea_border_left.png) 0 bottom no-repeat;
    background-size: contain;
    left: -34px;
}
.bnrarea_tit span:after {
    background: url(/products/yoro/special1/resource/img/bnrarea_border_right.png) 0 bottom no-repeat;
    background-size: contain;
    right: -34px;
}
.bnrarea_list {
    margin: 22px auto 0;
    max-width: 482px;
}
.bnrarea li {
list-style: none;
}
.bnrarea img{
    width: 100%;
    display: block;
    transition: all .3s;
}
@media all and (max-width: 767px){
    .bnrarea {
        margin-bottom: 0;
        margin-top: 15.28vw;
        width: 90.28vw;
    }
    .bnrarea_tit {
        font-size: 3.89vw;
        line-height: 1.41;
    }
    .bnrarea_tit span:before {
        left: -5.56vw;
    }
    .bnrarea_tit span:after {
        right: -5.56vw;
    }
    .bnrarea_list {
        margin-top: 4.17vw;
    }
    
}


/* ////////////////////////////////////////////////
# modal
//////////////////////////////////////////////// */
@media all and (min-width: 768px), print {
    .modaal-container{
        max-width: 700px;
        border-radius: 10px;
        border: 3px solid #0073B7;
    }
    .modaal-content-container{
        width: 400px;
        margin: 0 auto;
        padding: 40px 0;
    }
    .modaal-content-container .list__annotation li{
        margin-top: 20px !important;
        padding-left: 10px;
    }
    .modaal-content-container ul.list__annotation{
        margin: 0 !important;
    }
    .modaal-content-container img{
        width: 100%;
    }
    .modaal-close {
        position: absolute;
        right: 20px;
        top: 20px;
        z-index: 1000;
        cursor: pointer;
        opacity: 1;
        width: 30px;
        height: 30px;
        background: #F3F3F3 !important;
        transition: all .2s ease-in-out;
        border: 2px solid #0073B7 !important;
        border-radius: 4px;
        filter: drop-shadow(0px 0px 4px rgba(102,102,102,0.5));
    }
    .modaal-close:after, .modaal-close:before {
        display: block;
        content: " ";
        position: absolute;
        top: 8px;
        left: 12px;
        width: 2px;
        height: 12px;
        border-radius: 4px;
        background: #0073B7;
        transition: background .2s ease-in-out;
    }
}
@media all and (max-width: 767px){
    .modaal-container{
        border-radius: calc(10/375*100vw);
        border: calc(3/375*100vw) solid #0073B7;
    }
    .modaal-content-container{
        margin: 0 auto;
        padding: calc(20/375*100vw);
    }
    .modaal-content-container .list__annotation li{
        margin-top: calc(14/375*100vw) !important;
        padding-left: calc(10/375*100vw);
    }
    .modaal-content-container ul.list__annotation{
        margin: 0 !important;
    }
    .modaal-close {
        position: absolute;
        right: calc(20/375*100vw);
        top: calc(20/375*100vw);
        z-index: 1000;
        cursor: pointer;
        opacity: 1;
        width: calc(30/375*100vw);
        height: calc(30/375*100vw);
        background: #F3F3F3 !important;
        transition: all .2s ease-in-out;
        border: calc(2/375*100vw) solid #0073B7 !important;
        border-radius: calc(4/375*100vw);
        filter: drop-shadow(0px 0px 4px rgba(102,102,102,0.5));
    }
    .modaal-close:after, .modaal-close:before {
        display: block;
        content: " ";
        position: absolute;
        top: calc(8/375*100vw);
        left: calc(12/375*100vw);
        width: calc(2/375*100vw);
        height: calc(12/375*100vw);
        border-radius: calc(4/375*100vw);
        background: #0073B7;
        transition: background .2s ease-in-out;
    }
}



@media all and (min-width: 768px){
    .lead__heading {
        position: relative;
        padding: 0 34px;
        text-align: center;
        width: fit-content;
        margin: auto;
    }
    .lead__heading {
        --deco-width: 20;
        --deco-height: 33;
    }
    .point__list__item.--02 .lead__heading {
        margin-bottom: calc(5 / 375 * 100vw);
    }
    .lead__heading::before, .lead__heading::after {
        position: absolute;
        top: 10px;
        content: '';
        background: #0099DB;
        width: calc(var(--deco-width) *1px);
        height: calc(var(--deco-height) *1px);
    }
    .lead__heading::before {
        left: 0;
        clip-path: polygon(0 0, 50% 0, 100% 100%, 80% 100%);
        transform: rotate(-5deg);
    }
    .lead__heading::after {
        right: 0;
        clip-path: polygon(100% 0, 50% 0, 0 100%, 20% 100%);
        transform: rotate(5deg);
    }
    .lead__heading:has(.fs28)::before, .lead__heading:has(.fs28)::after {
        top: 6px;
    }
    .lead__heading p {
        line-height: 1.5;
        font-weight: bold;
        display: inline-block;
    }
    .compare_block {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
        text-align: center;
        margin-bottom: 12px;
    }
    .compare_block p {
        margin-bottom: 0;
    }
    .compare_block__heading {
        font-weight: 600;
        padding: 4px 20px;
        border-radius: 4px;
        display: inline-block;
        line-height: 1.5;
        position: relative;
        transform: translateY(50%);
    }
    .compare_block__deposit .compare_block__heading {
        background-color: #fff;
        border: 2px solid #E7BDCE;
    }
    .compare_block__text {
        border-radius: 4px;
        padding: 30px 20px 20px;
    }
    .compare_block__deposit .compare_block__text {
        background-color: #F3F3F3;
    }
    .compare_block__insurance .compare_block__heading {
        color: #fff;
        background-color: #000099;
    }
    .compare_block__insurance .compare_block__text {
        box-sizing: content-box;
        background-color: #EAE9F5;
        border: 2px solid #000099;
        font-weight: 600;
    }
    .compare_block__text p {
        line-height: 1.5;
    }
    
}
@media all and (max-width: 767px){
    .lead__heading {
        position: relative;
        padding: 0 calc(22 / 375 * 100vw);
        text-align: center;
        width: fit-content;
        margin: auto;
    }
    .lead__heading:has(.fs18_sp) {
        --deco-width: 11;
        --deco-height: 18;
    }
    .point__list__item.--02 .lead__heading {
        margin-bottom: calc(5 / 375 * 100vw);
    }
    .lead__heading::before, .lead__heading::after {
        position: absolute;
        top: calc(4 / 375 * 100vw);
        content: '';
        background: #0099DB;
        width: calc(var(--deco-width) / 375 * 100vw);
        height: calc(var(--deco-height) / 375 * 100vw);
    }
    .lead__heading::before {
        left: 0;
        clip-path: polygon(0 0, 50% 0, 100% 100%, 80% 100%);
        transform: rotate(-5deg);
    }
    .lead__heading::after {
        right: 0;
        clip-path: polygon(100% 0, 50% 0, 0 100%, 20% 100%);
        transform: rotate(5deg);
    }
    .lead__heading p {
        line-height: 1.5;
        font-weight: bold;
        display: inline-block;
    }

    .compare_block {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: calc(20 / 375 * 100vw);
        text-align: center;
        margin-bottom: calc(10 / 375 * 100vw);
    }
    .compare_block__heading {
        font-weight: 600;
        padding: calc(3 / 375 * 100vw) calc(15 / 375 * 100vw);
        border-radius: calc(4 / 375 * 100vw);
        display: inline-block;
        line-height: 1.5;
        position: relative;
        transform: translateY(50%);
    }
    .compare_block__text {
        border-radius: calc(4 / 375 * 100vw);
        padding: calc(20 / 375 * 100vw) calc(5 / 375 * 100vw) calc(6 / 375 * 100vw);
    }
    .compare_block__deposit .compare_block__heading {
        background-color: #fff;
        border: calc(2 / 375 * 100vw) solid #E7BDCE;
        margin-bottom: 0;
    }
    .compare_block__insurance .compare_block__heading {
        color: #fff;
        background-color: #000099;
        margin-bottom: 0;
    }
    .compare_block__deposit .compare_block__text {
        background-color: #F3F3F3;
    }
    .compare_block__insurance .compare_block__text {
        box-sizing: content-box;
        background-color: #EAE9F5;
        border: calc(2 / 375 * 100vw) solid #000099;
        font-weight: 600;
    }
    .compare_block__text p {
        line-height: 1.5;
        margin-bottom: 0;
    }
    .point__list__item.--02 .list__annotation {
        margin-top: calc(15 / 375 * 100vw);
    }
    .point_contents_item .list__annotation li {
        line-height: 1.5;
        font-size: calc(12 / 375 * 100vw);
    }

}

/* cta contents */
.cta_contents {
    margin: 0 auto;
    max-width: 1000px;
    width: 95%;
}
.cta_contents p{
  padding: 3rem 0 2rem;
}
@media all and (max-width: 767px){
  .cta_contents{
    max-width: 90.28vw;
  }
}
