
html,body{
    /*overflow: clip;*/
}

.contents{
    position: relative;
}

.fixedBtn{
    position: absolute;
    width: 257px;
    height: 155px;
    right: 28px;
    bottom: 0;
    z-index: 10;
    transition: opacity .5s ease;
    /*opacity: .5;*/
    /*background-color: red;*/
    a{
        display: block;
        width: 100%;
        height: 100%;

    }
}

.fixedBtn.is-active{
    opacity: 1;
}

.contentsWrap1{
    /*margin-top: -173px;*/
}

.contentsWrap2{
    position: relative;
}

.bannerItem--scrollToTop{
    display: none;
}

.bannerItem--toCmp--americanclassic{
    display: none;
}

.contentsWrap2__modal{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 22px;
    margin: auto;
    display: block;
    aspect-ratio: 646 / 368;
    width: 88%;
}

.contents {
    /*background-color: #000;*/
}

.bannerItem--toCmp {
    /*display: none;*/
}

.bannerItem--nextCmp{
    display: none;
}

[class^="contentsWrap"] img {
    vertical-align: middle;
    width: 100%;
}

.contentsWrap1 {
    position: relative;
}

.contentsWrap1 img {
    display: block;
    margin: 0 auto;
}

.anchorBtn {
    display: block;
    width: 100%;
    height: 107px;
    background-color: transparent;
    /*background-color: red;*/
    position: absolute;
    /*top: 172px;*/
    top: 0;
    left: 0;
    right: 0;
    pointer-events: none;
}

.contentsWrap3 {
    position: relative;
}

.contentsCampaign {
    position: relative;
}

.contentsCampaign img {
    vertical-align: middle;
}

.contentsCampaign .icon--twitter {
    position: absolute;
    left: 16px;
    top: 97px;
}

.contentsCampaign_03 {
    text-align: center;
}

.contentsCampaign_04 {
    position: relative;
}

.contentsWrap4 .btn--twitter img {
    width: 100%;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}


.contentsWrap4 .btn--twitter {
    position: absolute;
    width: 526px;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 122px;
}

.anchorDest {
    position: absolute;
    top: 204px;
    width: 100%;
    height: 50px;
    background-color: transparent;
    pointer-events: none;
}

.contentsCampaign_03 {
    position: relative;
}

.contentsCampaign_03__bnr {
    width: 527px;
    position: absolute;
    top: 34px;
    left: 0;
    right: 0;
    margin: auto;
}

.contentsWrap4 {
    position: relative;
}

.contentsWrap4 .rule {
    position: absolute;
    text-align: center;
    bottom: 63px;
    left: 0;
    right: 0;
    margin: auto;
    width: 188px;
}

.contentsCampaign_03 .btn--rule {
    position: absolute;
    bottom: 59px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}

.contentsWrap3 .btn {
    position: absolute;
    bottom: 120px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}

.contentsWrap3 .btn img {
    width: 533px;
}

.contentsWrap1.banner1 {
    transition: all .6s;
    box-shadow: 0 0 8px #808080d9;
}

.contentsWrap1.banner2 {
    transition: all .6s;
    margin: 46px 0;
    box-shadow: 0 0 8px #808080d9;
}

.contentsWrap1.banner1 img:hover {
    transition: all .6s;
    opacity: 0.8;
}

.contentsWrap1.banner2 img:hover {
    transition: all .6s;
    opacity: 0.8;
}

.txtBox {
    /*background-color: #d41e19;*/
    /*width: 680px;*/
    /*margin: auto;*/
}

.txtBox__inner {
    /*padding-top: 75px;*/
    /*padding-bottom: 75px;*/
}

.u-font--l {
    font-size: 20px;
    font-weight: bold;
}

#cplppagetop img{
        width: 100%;
}

.txtBox .txtBox__inner .txt span {
    display: block;
    font-weight: bold;
    margin-left: -9px;
}

.btn--magazine {
    padding: 100px 0;
    /*padding-bottom: 0;*/
    background-color: #039947;
}

.contentsWrap8 {
    /*padding-bottom: 32px;*/
}

.btn--magazine img:hover {
    transition: all .6s;
    opacity: .8;
}

.note {
    /*background-color: #000;*/
    background-color: #eb1d1c;
    color: #fff799;
    background-size: 100% 100%;

    line-height: 1.8;
    padding: 50px;
    /*padding-top: 100px;*/
}

.txtBox .u-bg-transParents {
    background-color: rgba(255, 255, 255, 0.19);
    padding: 0.5em .7em;
    display: inline-block;
    margin-top: 1em;
    font-size: 15px;
    margin-bottom: 1em;
}

.u-bg-transParents span {
    font-weight: bold;
}

.contentsWrap4 .btn--guideline {
    position: absolute;
    width: 242px;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 28px;
}

.contentsWrap7 {
    position: relative;
}

.btn--coupon {
    text-align: center;
    padding-top: 55px;
    padding-bottom: 45px;
}

.contentsWrap7 [class^="banner"] {
    display: block;
    margin: auto;
    margin-top: 45px;
    box-shadow: 0 0 8px #808080d9;
    transition: all .6s;
}

.contentsWrap7 [class^="banner"] img:hover {
    transition: all .6s;
    opacity: 0.8;
}

.contentsWrap7 .banner1 {
    margin-top: 20px;
}

.guidelineBtn {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 300px;
    text-align: center;
}

.guidelineBtn a {
    display: block;
    margin: auto;
}

.contentsWrap1.data1 {
    position: relative;
    background-color: #ed0000;
    padding-bottom: 35px;
}

/*.anchorBtn{*/
/*    position: absolute;*/
/*    bottom: 0;*/
/*    left: 0;*/
/*    background-color: red;*/
/*    width: 100%;*/
/*}*/

.contentsWrap1.data1 .data1__txtBox {
    width: 680px;
    margin: auto;
    margin-top: 35px;

    /*background: url("../images/dot_line--1.jpg") repeat-x top left / auto auto,*/
    /*url("../images/dot_line--2.jpg") repeat-y left top / auto auto,*/
    /*url("../images/dot_line--1.jpg") repeat-x bottom left / auto auto,*/
    /*url("../images/dot_line--2.jpg") repeat-y right top / auto auto;*/

}

.contentsWrap1.data1 .data1__txtBox__inner {
    padding: 20px;
}

.contentsWrap1.data1 .data1__txtBox__inner .txt {
    color: #00572d;
    /*font-size: 27px;*/
}

.contentsWrap1.data1 .data1__txtBox__inner .txt span {
    display: block;
    font-weight: bold;
    margin-left: -9px;
}

.contentsWrap1.data4 {
    position: relative;
    margin-top: 87px;
}

.contentsWrap1.data4 .followBtn {
    position: absolute;
    bottom: 280px;
    left: 0;
    right: 0;
    margin: auto;
    transition: all .6s;
}

.contentsWrap1.data4 .followBtn:hover {
    opacity: 0.8;
}

.contentsWrap1.data4 .guideline {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 167px;
    text-align: center;
}

.contentsWrap1.data4 .guideline .guideline__txt {
    font-size: 34.6px;
    font-weight: bold;
    text-align: center;
    position: relative;
    padding-right: 16px;
}

.guideline__img img {
    border-bottom: 3px solid #fff;
}

.guideline__img img:hover {

}

/*.bannerItems {*/
/*    !*margin-top: 30px;*!*/
/*}*/

.bannerItems .bannerItem img {
    vertical-align: middle;
}

.bannerItems .bannerItem {
    transition: all .6s;
    box-shadow: 0 0 8px #808080d9;
    position: relative;
}

.bannerItems .bannerItem:hover {
    opacity: .8;
}

.bannerItems .bannerItem:not(:first-child) {
    margin-top: 25px;
}

.hirutokuBanner {
    overflow: hidden;
    padding: 10px 0;
    background: #ffffff;
}

.hirutokuBanner > img {
    box-shadow: 0 0 8px grey;
}

.cpBanner {
    overflow: hidden;
    padding: 10px 0;
    background: #fbc200;
}

.cpBanner > img {
    box-shadow: 0 0 8px grey;
}

.cpBanner .btnSpecialSite {
    position: absolute;
    left: 360px;
    top: 240px;
}

.ambassadorSNS {
    position: absolute;
    top: 33%;
    left: 6%;
    width: 32%;
}

.ambassadorSNS li {
    margin-bottom: 8px;
}

.btn_detail {
    position: absolute;
    top: 60.93%;
    left: 49.3%;
    width: 49%;
}

.campaignDesc {
    margin: 40px 0;
    color: #008b39;
}

.campaignDescText dt {
    font-weight: bold;
}

.campaignDescText dd {
    padding-left: 1em;
    margin-bottom: 15px;
}

.specialBanner {
    margin-bottom: 60px;
    padding: 10px 0;
    overflow: hidden;
}

.specialBanner .btnSpecialSite {
    position: absolute;
    top: 234px;
    left: 12px;
}

.specialBanner > img {
    box-shadow: 0 0 8px grey;
}

.cpLink {
    background: #42b035;
    padding: 20px 0;
}

.cpLinkList li:nth-child(n + 2) {
    margin-top: 20px;
}

.backAngleLine {
    position: relative;
    overflow: hidden;
    padding: 200px 0 0;
}

.backAngleLine:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fbc200;
    z-index: -1;
}

.backAngleLine:after {
    content: '';
    position: absolute;
    top: -30px;
    left: -20px;
    width: 130%;
    height: 100%;
    background: #42b035;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
    z-index: -1;
}

.sns {
    padding-top: 42px;
}

.sns .snsItems {
    margin: auto;
    width: 90%;
    max-width: 340px;
    overflow: hidden;
    display: flex;
    justify-content: space-around;
    /*padding-top: 70px;*/
}

.sns .snsItem:nth-child(1) {
    width: 23.3%;
}

.sns .snsItem:nth-child(2) {
    width: 28%;
}

.sns .snsItem:nth-child(3) {
    width: 33%;
}

.sns .snsItem img {
    width: 100%;
}

.sns .snsItem a:hover {
    opacity: 0.8;
}

.snsItems {
    width: 665px;
    margin: auto;
    display: flex;
    justify-content: space-between;
}

.snsItems .snsItem {

}

#cboxOverlay {
    background: #ed9999 !important;
}

#cboxClose {
    width: 30px !important;
    height: 30px !important;
}

.policyArea {
    font-size: 14px;
    color: #fff;
    background-color: #e9380c;
    padding: 6% 4.32%;
    line-height: 1.8em;
}

.policyArea .title {
    text-align: center;
    font-size: 32px;
    line-height: 1em;
    margin-bottom: 30px;
}

.policyArea .cpTitle {
    margin-bottom: 21px;
}

.policyArea .policySection {
    margin-bottom: 21px;
}

.policyArea .policySection a {
    color: #fff;
}

.policyArea .policySection .sectionBlock:not(:last-child) {
    margin-bottom: 21px;
}

.contentsWrap8 {
    position: relative;
}

.contentsWrap8_btn {
    position: absolute;
    text-align: center;
    width: 648px;
    left: 0;
    right: 0;
    bottom: 140px;
    margin: auto;
}

.bannerItems {
    /*background-color: #000;*/
}

.contentsWrap9 {

}

.contentsWrap1 {
    position: relative;
}

.contentsWrap1 .sns {
    display: flex;
    justify-content: center;
    margin-bottom: -65px;
    margin-top: -18px;
}

.contentsWrap1 .sns .snsItems {
    width: 100%;
    max-width: 480px;
}

.bannerItem--scrollToTop {
    /*display: none;*/
}

.bannerItems .bannerItem.bannerItem--toCmp {
    display: none;
}

.bannerItem--toCmp--nightvalue {
    /*display: none;*/
}

.contentsWrap5 {
    position: relative;
    /*padding-bottom: 110px;*/
}

.contentsWrap6 {
    padding-bottom: 110px;
    background-color: #fcc201;
    position: relative;
}

.contentsWrap5__btn {
    position: absolute;
    right: 0;
    bottom: 0;
    margin-bottom: 85px;
    margin-right: 73px;
}

.contentsWrap5__youtube{
    position: absolute;
    /*top: 110px;*/
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.contentsWrap6 .btn{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 143px;
    margin: auto;
    width: 596px;


}
.contentsWrap5__youtube__inner{
    position: relative;
    width: 592px;
    height: 334px;
    margin: 0 auto;
}
.contentsWrap5__youtube__inner iframe{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
}

.contentsToggle {
    padding-top: 35px;
    padding-bottom: 143px;
    background-color: #008b39;
}

.contentsToggle__btn {
    text-align: center;
    width: 583px;
    margin: 0 auto;
    height: 117px;
    position: relative;
}

.contentsToggle__btn img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
}

.js-toggleBtn.-open .openBtnImg {
    opacity: 0;
}

.contentsYoutube {
    /*background-color: #fbc200;*/
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.contentsYoutube + .contentsYoutube{
    /*padding-top: 70px;*/
}


.contentsYoutube__inner {
    position: relative;
    width: 630px;
    height: 354px;
    margin: 0 auto;
}

.contentsYoutube__inner iframe {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.bnr_02{
    transition: all .6s;

    position: relative;
    margin-top: 2em;
    &:hover{
        opacity: .8;
    }
}

.bnr_02 img{
    box-shadow: 0 0 8px #808080d9;
}

/*.note{*/
/*    background-color: #fbc200;*/
/*    background-size: 100% 100%;*/
/*    color: #008b39;*/
/*    line-height: 1.8;*/
/*    padding: 50px;*/
/*}*/