@charset "UTF-8";

/*--------------------------------
reset
--------------------------------*/
html,body,div,p,img,iframe,a,span,blockquote,q,address,cite,
pre,code,em,small,strong,b,i,
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer,time,
h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
table,tbody,thead,tfoot,th,tr,td,
form,fieldset,legend,label,select,input,textarea,button{
    margin: 0;
    padding: 0;
    border: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: baseline;
}
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer{
    display: block;
}
ul li{
    list-style-type: none;
}
h1,h2,h3,h4,h5,h6{
    font-weight: 500;
}
body{
    line-height: 1;
}
a{
    text-decoration: none;
}
img{
    vertical-align: middle;
}
table{
    border-collapse: collapse;
    border-spacing: 0;
}
select,option,input:not([type=checkbox]):not([type=radio]),textarea,button{
    font: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
blockquote::before,blockquote::after,q::before,q::after{
    content: '';
    content: none;
}
[type=submit],[type=button],[type=reset],[type=file],button{
    cursor: pointer;
}
:focus{
    outline: none;
}

/*--------------------------------
base
--------------------------------*/
body{
    font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #1a1a1a;
}
h2,h3,h4,h5,h6{
    line-height: 1.3;
    font-weight: bold;
}
a{
    color: #fff;
}
img{
    max-width: 100%;
    height: auto;
}
.wrap{
    margin: auto;
    max-width: 768px;
    position: relative;
}
.h2-box{
    margin-bottom: 20px;
}
.h2{
    margin-bottom: 2px;
    padding: 0 22px;
    font-size: 20px;
    text-align: center;
}
.h2.white{
    background: url(../images/white-heading-left.webp) no-repeat left bottom / 23px, url(../images/white-heading-right.webp) no-repeat right bottom / 23px;
    color: white;
}
.h2.pink{
    background: url(../images/pink-heading-left.webp) no-repeat left bottom / 23px, url(../images/pink-heading-right.webp) no-repeat right bottom / 23px;
    color: #ff669a;
}
.lr-box{
    display: flex;
}
.lr-box .left,
.lr-box .right{
    flex: 1;
}
.lr-box .left{
    margin-right: 4px;
}
.lr-box .right{
    margin-left: 4px;
}
.about,
.howto,
.reward,
.example,
.other-reward,
.accept{
    padding: 24px 16px 16px;
}
.bg-pink{
    background: #f583ac;
}
.bg-blue{
    background: #73c6d9;
}
.bg-color .box{
    margin-bottom: 16px;
    padding: 16px;
    background: white;
    position: relative;
}
.bg-color .box:last-child{
    margin-bottom: 0;
}
.bg-color .box.grow{
    margin-top: 32px;
    padding: 28px 16px 16px;
}
.bg-color .box.grow .h3{
    margin: auto;
    padding: 6px 8px;
    width: 160px;
    background: white;
    position: absolute;
    top: -18px;
    left: 0;
    right: 4px;
    line-height: 1;
}
.bg-color.bg-pink .box.grow .h3{
    border: solid 2px #f583ac;
    box-shadow: 3px 3px #f583ac;
}
.bg-color.bg-blue .box.grow{
    margin-top: 16px;
    margin-bottom: 0;
    padding: 27px 16px 8px;
}
.bg-color.bg-blue .box.grow .h3{
    width: 132px;
    border: solid 2px #73c6d9;
    box-shadow: 3px 3px #73c6d9;
}
.bg-white .box{
    margin: 16px 0;
    padding: 16px;
    border: solid 3px #1a1a1a;
    align-items: center;
}
.btn{
    display: block;
    background: url(../images/header-btn-arrow.webp) no-repeat right 8px center / 20px, #feb724;
    border-radius: 4px;
    position: relative;
    text-align: center;
    font-weight: bold;
    color: white;
}
.bold{
    font-weight: bold;
}
.marker{
    background: linear-gradient(transparent 60%, #ff6 60%);
}
.yellow{
    color: #ffff66;
}
.about .h3::after, .example .right .h3::before, .example .right .h3::after{
    margin: auto;
    content: "";
    position: absolute;
}

/*--------------------------------
contents
--------------------------------*/
.header{
    padding: 8px 16px;
    align-items: center;
}
.header .logo{
    max-width: 160px;
}
.header .btn{
    padding: 8px 28px 8px 4px;
    line-height: 1;
    font-size: 17px;
}
.hero{
    position: relative;
}
.hero .h1{
    width: 30px;
    position: absolute;
    top: 12px;
    left: 12px;
    bottom: 12px;
}
.hero .box{
    padding: 8px 16px;
}
.hero .box:nth-child(2){
    background: url(../images/hero-top-bg.webp) center / 24px;
}
.hero .box:nth-child(3){
    background: url(../images/hero-mid-bg.webp) center / 24px;
}
.hero .box:nth-child(4){
    background: url(../images/hero-btm-bg.webp) center / 24px;
}
.hero .lr-box{
    align-items: center;
}
.hero .lr-box .left{
    margin-right: 4px;
    margin-bottom: -8px;
    max-width: 160px;
}
.hero .lr-box .right{
    margin-left: 4px;
}
.hero .right .text{
    margin-bottom: 4px;
    text-align: center;
    text-shadow: -2px -2px 0px #fff,-2px -1px 0px #fff,-2px 0px 0px #fff,-2px 1px 0px #fff,-2px 2px 0px #fff,-1px -2px 0px #fff,-1px 2px 0px #fff,0px -2px 0px #fff,0px 2px 0px #fff,1px -2px 0px #fff,1px 2px 0px #fff,2px -2px 0px #fff,2px -1px 0px #fff,2px 0px 0px #fff,2px 1px 0px #fff,2px 2px 0px #fff;
    line-height: 1.3;
    font-size: 14px;
}
.hero .text .pink{
    color: #ff399e;
}
.hero .right .big{
    font-size: 16px;
    line-height: 1.2;
}
.hero .box:nth-child(2) .right .big{
    font-size: 24px;
}
.hero .right .btn{
    padding: 4px 32px 4px 4px;
    background: url(../images/hero-btn-arrow.webp) no-repeat right 8px center / 24px, #a3cc52;
    line-height: 1.2;
}
.about .box:nth-child(2){
    padding: 16px 72px 16px 16px;
    background: url(../images/about-bg1.webp) no-repeat right -40px bottom / auto 200px, white;
}
.about .box:nth-child(3){
    padding: 16px 16px 16px 72px;
    background: url(../images/about-bg2.webp) no-repeat left -40px bottom / auto 200px, white;
}
.about .box .text{
    margin-bottom: 12px;
    text-shadow: -2px -2px 0px #fff, -2px -1px 0px #fff, -2px 0px 0px #fff, -2px 1px 0px #fff, -2px 2px 0px #fff, -1px -2px 0px #fff, -1px 2px 0px #fff, 0px -2px 0px #fff, 0px 2px 0px #fff, 1px -2px 0px #fff, 1px 2px 0px #fff, 2px -2px 0px #fff, 2px -1px 0px #fff, 2px 0px 0px #fff, 2px 1px 0px #fff, 2px 2px 0px #fff;
}
.about .box .text:last-child{
    margin-bottom: 0;
}
.about .box.point{
    margin: -3px -2px;
    padding: 16px;
    border: double 8px #f583ac;
}
.about .h3{
    margin: 0 auto 13px;
    padding: 0 8px 8px;
    border-bottom: solid 3px #ff6699;
    position: relative;
    text-align: center;
}
.about .h3 img{
    max-width: 340px;
    width: 100%;
}
.about .h3::after{
    width: 100%;
    height: 1px;
    background: #ff6699;
    left: 0;
    right: 0;
    bottom: -6px;
}
.about .h4{
    margin-bottom: 4px;
    font-size: 16px;
}
.about .box.point .li{
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: solid 1px #ff6699;
    align-items: center;
}
.about .box.point .li:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.about .box.point .left{
    margin-right: 8px;
    flex: 0.2;
}
.about .box.point .right{
    margin-left: 8px;
}
.about .box.point .text{
    line-height: 1.4;
}
.howto > .text{
    margin-bottom: 16px;
}
.howto .box{
    margin: 42px 0 16px;
    position: relative;
}
.howto .box:last-child{
    margin: 63px 0 0;
}
.howto .box .step{
    padding: 2px 16px 2px 12px;
    background: #1a1a1a;
    position: absolute;
    top: -29px;
    left: -3px;
    color: white;
}
.howto .step .num{
    padding: 4px 6px 2px;
    display: inline-block;
    background: white;
    border-radius: 100px;
    position: relative;
    top: -1px;
    left: 4px;
    text-align: center;
    line-height: 1;
    font-size: 14px;
    font-weight: bold;
    color: #1a1a1a;
}
.howto .lr-box{
    align-items: center;
}
.howto .lr-box .left{
    margin-right: 8px;
    max-width: 80px;
    flex: 0.4;
}
.howto .lr-box .right{
    margin-left: 8px;
}
.howto .left .h3{
    margin-bottom: 8px;
}
.howto .note{
    background-image: linear-gradient(180deg, #ccc 1px, transparent 1px);
    background-size: 100% 1.8em;
    line-height: 1.8em;
    padding-bottom: 1px;
}
.howto .note .small{
    font-size: 14px;
}
.howto .box.ready{
    margin: 0 0 16px;
    background: url(../images/howto-ready-deco.webp) no-repeat top 12px right 16px / 90px;
}
.howto .box.ready .h3{
    margin-bottom: 12px;
    width: 140px;
}
.reward > .text{
    margin-bottom: 16px;
    color: white;
}
.reward .box .lr-box{
    margin-bottom: 12px;
    align-items: center;
}
.reward .box:last-child .lr-box{
    margin-bottom: 0;
}
.reward .lr-box .left{
    max-width: 140px;
}
.reward .lr-box .pink{
    line-height: 1.2;
    text-align: left;
    color: #c2537c;
}
.reward .box > .text{
    margin-bottom: 12px;
}
.reward .box > .text:last-child{
    margin-bottom: 0;
}
.reward .lr-box .big{
    font-size: 32px;
}
.reward .box:last-child .text.pink{
    margin-bottom: 8px;
}
.reward .box:last-child .big{
    font-size: 28px;
}
.example .box{
    padding: 0;
}
.example .box:last-child{
    margin-bottom: 0;
}
.example .box:nth-child(2){
    background: url(../images/example-deco1.webp) no-repeat left 8px bottom 8px / 50px;
}
.example .box:nth-child(3){
    background: url(../images/example-deco2.webp) no-repeat right 8px bottom 8px / 40px;
}
.example .box:nth-child(4){
    background: url(../images/example-deco3.webp) no-repeat left 8px bottom 8px / 35px;
}
.example .box:nth-child(5){
    background: url(../images/example-deco4.webp) no-repeat right 8px bottom 8px / 45px;
}
.example .lr-box .left{
    margin-right: 8px;
    max-width: 80px;
    flex: 0.3;
}
.example .left .icon{
    background: #ff669a;
    border-radius: 0 0 32px 0;
}
.example .lr-box .right{
    margin-left: 8px;
    padding-right: 16px;
    max-width: 320px;
    display: flex;
    align-items: center;
}
.example .right .h3{
    position: relative;
    line-height: 1;
}
.example .right .h3::before,
.example .right .h3::after{
    width: 32px;
    height: 2px;
    background: #1a1a1a;
    left: -4px;
}
.example .right .h3::before{
    transform: rotate(-15deg);
    top: -8px;
}
.example .right .h3::after{
    transform: rotate(15deg);
    bottom: -12px;
}
.example .box .text{
    margin: 16px;
    text-align: center;
    font-size: 14px;
}
.example .result .text{
    margin: -4px 16px 16px;
    font-size: 24px;
    line-height: 0.8;
}
.example .result .text.pink{
    color: #ff6699;
}
.example .result .text .big{
    font-size: 36px;
}
.example .result .text .marker{
    padding: 0 8px;
}
.other-reward .lr-box .left{
    margin-right: 8px;
}
.other-reward .lr-box .right{
    margin-left: 8px;
}
.other-reward .box .icon{
    margin-bottom: 8px;
    text-align: center;
}
.other-reward .box .icon img{
    width: 100px;
}
.other-reward .box .result{
    margin-bottom: 8px;
    text-align: center;
}
.other-reward .result .text{
    line-height: 1;
    font-size: 18px;
}
.other-reward .result .text .big{
    font-size: 36px;
}
.other-reward .result .text.blue{
    color: #5897a6;
}
.other-reward .box > .text{
    font-size: 14px;
}
.accept .lr-box .left{
    margin-right: 8px;
    flex: 0.4;
}
.accept .lr-box .right{
    margin-left: 8px;
}
.accept .right .h3{
    font-size: 16px;
}
.accept .box .text{
    margin-bottom: 12px;
}
.accept .box .text:last-child{
    margin-bottom: 0;
}
.accept .btn-box{
    margin: 32px 0 16px;
}
.accept .btn-box .text{
    margin: 0 16px 8px;
    text-align: center;
}
.accept .text img{
    max-width: 400px;
    width: 100%;
}
.accept .btn-box .btn{
    padding: 11px 64px 11px 11px;
    background: url(../images/btn-arrow.webp) no-repeat right 12px center / 36px, #feb724;
    line-height: 1.2;
    font-size: 18px;
    text-decoration: none;
}
.top-btn{
    width: 60px;
    height: 60px;
    padding-top: 20px;
    display: none;
    background: url(../images/top-btn-arrow.webp) no-repeat top 6px center / 30px, #a3cc52;
    border-radius: 4px;
    position: fixed;
    right: 16px;
    bottom: 16px;
    font-size: 12px;
    text-align: center;
    color: white;
}
.footer{
    padding: 24px 92px 24px 16px;
    background: #1a1a1a;
}
.footer .text{
    font-size: 14px;
    text-align: center;
    color: white;
}
.footer .text a{
    text-decoration: underline;
}

/*--------------------------------
tablet
--------------------------------*/
@media (min-width: 600px){
    .tbrn{
        display: none;
    }
    body{
        font-size: 24px;
    }
    .h2-box{
        margin-bottom: 40px;
    }
    .h2{
        margin-bottom: 4px;
        padding: 0 36px;
        font-size: 32px;
    }
    .h2.white{
        background: url(../images/white-heading-left.webp) no-repeat left bottom / 36px, url(../images/white-heading-right.webp) no-repeat right bottom / 36px;
    }
    .h2.pink{
        background: url(../images/pink-heading-left.webp) no-repeat left bottom / 36px, url(../images/pink-heading-right.webp) no-repeat right bottom / 36px;
    }
    .lr-box .left{
        margin-right: 8px;
    }
    .lr-box .right{
        margin-left: 8px;
    }
    .about,
    .howto,
    .reward,
    .example,
    .other-reward,
    .accept{
        padding: 48px 32px 32px;
    }
    .bg-color .box{
        margin-bottom: 32px;
        padding: 32px;
    }
    .bg-color .box.grow{
        margin-top: 64px;
        padding: 47px 32px 32px;
    }
    .bg-color .box.grow .h3{
        padding: 8px 16px 12px;
        width: 230px;
        top: -32px;
        right: 7px;
    }
    .bg-color.bg-pink .box.grow .h3{
        border: solid 4px #f583ac;
        box-shadow: 6px 6px #f583ac;
    }
    .bg-color.bg-blue .box.grow{
        margin-top: 32px;
        padding: 54px 32px 16px;
    }
    .bg-color.bg-blue .box.grow .h3{
        width: 222px;
        border: solid 4px #73c6d9;
        box-shadow: 6px 6px #73c6d9;
    }
    .bg-white .box{
        margin: 32px 0;
        padding: 28px;
        border: solid 4px #1a1a1a;
    }
    .btn{
        background: url(../images/header-btn-arrow.webp) no-repeat right 12px center / 32px, #feb724;
        border-radius: 8px;
    }
    .header{
        padding: 16px 32px;
    }
    .header .logo{
        max-width: 337px;
    }
    .header .btn{
        padding: 16px 44px 16px 8px;
        font-size: 24px;
    }
    .hero .h1{
        width: 49px;
        top: 24px;
        left: 24px;
        bottom: 24px;
    }
    .hero .box{
        padding: 16px 32px;
    }
    .hero .box:nth-child(2){
        background: url(../images/hero-top-bg.webp) center / 44px;
    }
    .hero .box:nth-child(4){
        background: url(../images/hero-btm-bg.webp) center / 44px;
    }
    .hero .lr-box .left{
        margin-right: 8px;
        margin-bottom: -16px;
        max-width: 320px;
    }
    .hero .lr-box .right{
        margin-left: 8px;
    }
    .hero .right .text{
        margin-bottom: 8px;
        text-shadow: -3px -3px 0px #fff,-3px -2px 0px #fff,-3px -1px 0px #fff,-3px 0px 0px #fff,-3px 1px 0px #fff,-3px 2px 0px #fff,-3px 3px 0px #fff,-2px -3px 0px #fff,-2px 3px 0px #fff,-1px -3px 0px #fff,-1px 3px 0px #fff,0px -3px 0px #fff,0px 3px 0px #fff,1px -3px 0px #fff,1px 3px 0px #fff,2px -3px 0px #fff,2px 3px 0px #fff,3px -3px 0px #fff,3px -2px 0px #fff,3px -1px 0px #fff,3px 0px 0px #fff,3px 1px 0px #fff,3px 2px 0px #fff,3px 3px 0px #fff;
        font-size: 18px;
    }
    .hero .right .big{
        font-size: 28px;
    }
    .hero .box:nth-child(2) .right .big{
        font-size: 42px;
    }
    .hero .right .btn{
        padding: 12px 64px 12px 8px;
        background: url(../images/hero-btn-arrow.webp) no-repeat right 16px center / 48px, #a3cc52;
    }
    .about .box:nth-child(2){
        padding: 32px 122px 32px 32px;
        background: url(../images/about-bg1.webp) no-repeat right -60px bottom / auto 350px, white;
    }
    .about .box:nth-child(3){
        padding: 32px 32px 32px 122px;
        background: url(../images/about-bg2.webp) no-repeat left -60px bottom / auto 350px, white;
    }
    .about .box .text{
        margin-bottom: 24px;
        text-shadow: -3px -3px 0px #fff, -3px -2px 0px #fff, -3px -1px 0px #fff, -3px 0px 0px #fff, -3px 1px 0px #fff, -3px 2px 0px #fff, -3px 3px 0px #fff, -2px -3px 0px #fff, -2px 3px 0px #fff, -1px -3px 0px #fff, -1px 3px 0px #fff, 0px -3px 0px #fff, 0px 3px 0px #fff, 1px -3px 0px #fff, 1px 3px 0px #fff, 2px -3px 0px #fff, 2px 3px 0px #fff, 3px -3px 0px #fff, 3px -2px 0px #fff, 3px -1px 0px #fff, 3px 0px 0px #fff, 3px 1px 0px #fff, 3px 2px 0px #fff, 3px 3px 0px #fff;
    }
    .about .box.point{
        margin: -4px -4px;
        padding: 32px;
        border: double 12px #f583ac;
    }
    .about .h3{
        margin: 0 auto 26px;
        padding: 0 0px 12px;
        border-bottom: solid 4px #ff6699;
    }
    .about .h3 img{
        max-width: 400px;
    }
    .about .h3::after{
        height: 2px;
        bottom: -8px;
    }
    .about .box.point .li{
        margin-bottom: 16px;
        padding-bottom: 16px;
        border-bottom: solid 2px #ff6699;
    }
    .about .h4{
        margin-bottom: 8px;
        font-size: 24px;
    }
    .howto > .text{
        margin-bottom: 32px;
    }
    .howto .box.ready{
        margin: 0 0 32px;
        background: url(../images/howto-ready-deco.webp) no-repeat top 16px right 28px / 130px;
    }
    .howto .box.ready .h3{
        margin-bottom: 16px;
        width: 180px;
    }
    .howto .box{
        margin: 63px 0 32px;
    }
    .howto .box .step{
        padding: 2px 32px 2px 24px;
        top: -43px;
        left: -4px;
    }
    .howto .step .num{
        padding: 2px 7px 2px;
        border-radius: 100px;
        top: -1px;
        left: 4px;
        font-size: 22px;
    }
    .howto .lr-box .left{
        margin-right: 16px;
        max-width: 100px;
    }
    .reward .lr-box .left{
        max-width: 309px;
    }
    .reward .lr-box .big{
        font-size: 52px;
    }
    .reward > .text{
        margin-bottom: 32px;
    }
    .reward .box .lr-box{
        margin-bottom: 24px;
    }
    .reward .box > .text{
        margin-bottom: 24px;
    }
    .reward .box:last-child .text.pink{
        margin-bottom: 16px;
    }
    .reward .box:last-child .big{
        font-size: 44px;
    }
    .example .box{
        padding: 0;
    }
    .example .lr-box .left{
        margin-right: 16px;
        max-width: 154px;
    }
    .example .lr-box .right{
        margin-left: 16px;
        padding-right: 24px;
        max-width: 458px;
    }
    .example .right .h3::before,
    .example .right .h3::after{
        width: 42px;
        height: 3px;
        background: #1a1a1a;
        left: -8px;
    }
    .example .right .h3::before{
        top: -16px;
    }
    .example .right .h3::after{
        bottom: -22px;
    }
    .example .box .text{
        margin: 28px;
        text-align: center;
        font-size: 16px;
    }
    .example .result .text{
        margin: -8px 28px 28px;
        font-size: 32px;
    }
    .example .result .text .big{
        font-size: 52px;
    }
    .example .box:nth-child(2){
        background: url(../images/example-deco1.webp) no-repeat left 16px bottom 16px / 80px;
    }
    .example .box:nth-child(3){
        background: url(../images/example-deco2.webp) no-repeat right 16px bottom 16px / 60px;
    }
    .example .box:nth-child(4){
        background: url(../images/example-deco3.webp) no-repeat left 16px bottom 16px / 60px;
    }
    .example .box:nth-child(5){
        background: url(../images/example-deco4.webp) no-repeat right 16px bottom 16px / 60px;
    }
    .other-reward .lr-box .left{
        margin-right: 16px;
    }
    .other-reward .lr-box .right{
        margin-left: 16px;
    }
    .other-reward .box .icon{
        margin-bottom: 16px;
    }
    .other-reward .box .icon img{
        width: 140px;
    }
    .other-reward .box .result{
        margin-bottom: 16px;
    }
    .other-reward .result .text{
        font-size: 26px;
    }
    .other-reward .result .text .big{
        font-size: 46px;
    }
    .other-reward .box > .text{
        font-size: 18px;
    }
    .accept .lr-box .left{
        margin-right: 16px;
        flex: 0.5;
    }
    .accept .lr-box .right{
        margin-left: 16px;
    }
    .accept .right .h3{
        font-size: 24px;
    }
    .accept .box .text{
        margin-bottom: 24px;
    }
    .accept .btn-box{
        margin: 64px 16px 32px;
    }
    .accept .btn-box .text{
        margin: 0 32px 16px;
    }
    .accept .text img{
        max-width: 496px;
    }
    .accept .btn-box .btn{
        padding: 16px 80px 16px 16px;
        background: url(../images/btn-arrow.webp) no-repeat right 16px center / 60px, #feb724;
        line-height: 1.2;
        font-size: 28px;
    }
    .top-btn{
        width: 80px;
        height: 80px;
        padding-top: 26px;
        background: url(../images/top-btn-arrow.webp) no-repeat top 8px center / 40px, #a3cc52;
        border-radius: 8px;
        right: 32px;
        bottom: 32px;
        font-size: 16px;
    }
    .footer{
        padding: 40px 142px 40px 32px;
    }
    .footer .text{
        font-size: 20px;
    }
}
@media (min-width: 768px){
    body{
        font-size: 28px;
    }
    .h2{
        font-size: 36px;
    }
    .btn{
        background: url(../images/header-btn-arrow.webp) no-repeat right 16px center / 40px, #feb724;
    }
    .bg-color .box.grow .h3{
        width: 286px;
        top: -34px;
    }
    .header .btn{
        padding: 16px 52px 16px 8px;
    }
    .header .btn{
        font-size: 36px;
    }
    .hero .h1{
        width: 60px;
    }
    .hero .right .text{
        font-size: 26px;
    }
    .hero .right .big{
        font-size: 38px;
    }
    .hero .right .btn{
        font-size: 34px;
    }
    .hero .box:nth-child(2) .right .big{
        font-size: 50px;
    }
    .about .h4{
        font-size: 28px;
    }
    .about .box.point .left{
        flex: 0.15;
    }
    .about .box:nth-child(2){
        padding: 32px 140px 32px 32px;
        background: url(../images/about-bg1.webp) no-repeat right -58px bottom / auto 338px, white;
    }
    .about .box:nth-child(3){
        padding: 32px 32px 32px 140px;
        background: url(../images/about-bg2.webp) no-repeat left -60px bottom / auto 350px, white;
    }
    .howto .step .num{
        font-size: 22px;
    }
    .howto .box.ready .h3{
        width: 220px;
    }
    .howto .box .step{
        top: -49px;
    }
    .howto .box{
        margin: 69px 0 32px;
    }
    .howto .lr-box .left{
        max-width: 120px;
    }
    .howto .note .small{
        font-size: 22px;
    }
    .reward .lr-box .big{
        font-size: 62px;
    }
    .reward .box:last-child .big{
        font-size: 44px;
    }
    .example .box .text{
        font-size: 22px;
    }
    .example .result .text{
        font-size: 32px;
    }
    .example .result .text .big{
        font-size: 62px;
    }
    .other-reward .result .text{
        font-size: 28px;
    }
    .other-reward .result .text .big{
        font-size: 56px;
    }
    .other-reward .box > .text{
        font-size: 24px;
    }
    .accept .right .h3{
        font-size: 28px;
    }
    .accept .btn-box{
        margin: 64px 32px 32px;
    }
    .accept .btn-box .btn{
        font-size: 36px;
    }
    .top-btn{
        width: 100px;
        height: 100px;
        padding-top: 32px;
        background: url(../images/top-btn-arrow.webp) no-repeat top 10px center / 50px, #a3cc52;
        right: calc((100vw - 706px) / 2);
        bottom: 32px;
        font-size: 20px;
    }
    .footer{
        padding: 48px 142px 48px 32px;
    }
    .footer .text{
        font-size: 24px;
    }
}