@charset "UTF-8";
/* --- font --- */
@font-face {
  font-family: "NotoSansJP";
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP"), local("NotoSansJP-Regular"), local("NotoSansJP-Regular"), url("/font/NotoSansJP-Regular.woff2") format("woff2"), url("/font/NotoSansJP-Regular.woff") format("woff");
}
@font-face {
  font-family: "NotoSansJP";
  font-style: normal;
  font-weight: 700;
  src: local("NotoSansJP-Bold"), local("NotoSansJP-Bold"), url("/font/NotoSansJP-Bold.woff2") format("woff2"), url("/font/NotoSansJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "NotoSansJP-Black";
  font-style: normal;
  font-weight: 900;
  src: local("NotoSansJP-Black"), local("NotoSansJP-Black"), url("/font/NotoSansJP-Black.woff2") format("woff2"), url("/font/NotoSansJP-Black.woff") format("woff");
} 
@font-face {
  font-family: "DINAlternate";
  font-style: normal;
  font-weight: 700;
    src: local("DINAlternate-Bold"), local("DINAlternate-Bold"), url("/font/DINAlternate-Bold.woff2") format("woff2"), url("/font/DINAlternate-Bold.woff") format("woff");
}
.fDIM{
    font-family: "DINAlternate", "NotoSansJP", "Noto Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.nsjp{
  font-family: "NotoSansJP", "DINAlternate", "Noto Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

body #mbspTop {
  font-family: "NotoSansJP", "DINAlternate", "Noto Sans", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  line-height: 1.6;
 /*  overflow: hidden; */
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 16px;
  text-align: left;
}
#mbspTop a:link{text-decoration:none;}
#mbspTop a:visited{text-decoration:none;}
#mbspTop a:hover{text-decoration:none;opacity:0.6;transition: 0.25s ease-in-out;}
#mbspTop a:active{text-decoration:none;}

/* --- topだけパンクズを表示しない場合 --- */
#mbsBreadcrumbNav{
    display:none;
}


/* --- キービジュアル --- */
.kvWrap{
    width:100%;
    height:617px;
    background-color:#FDF8ED;
    margin:0 0 80px 0;
    padding:0;
    position:relative;
    /*background:#FDF8ED url(../../top/_img_bg/_top_KV_sample2.png) no-repeat center center;*/
}
.kvWrap .logoPC{
    position:absolute;
    width:560px;
    top:233px;
    left:50%;
    margin-left:-280px;
}
.kvWrap .ttl01{
    font-size:37px;
    font-weight:900;
    font-family: "NotoSansJP-Black", sans-serif;
    text-align:center;
    position:absolute;
    width:100%;
    top:325px;
    display:none;
}
.kvParts{
    position:relative;
    width:1221px;
    height:617px;
    margin:0 auto;
}
.kvParts .abso{
    position:absolute;
    opacity:0;
}
.kvParts .logoSP,
.kvParts .parts3sp,
.kvParts .parts8sp{
    display:none;
}
.kvParts .parts1{
    top:47px;
    left:193px;
    width:213px;
}
.kvParts .parts2{
    top:50px;
    left:670px;
    width:70px;
}
.kvParts .parts3pc{
    top:42px;
    left:935px;
    width:287px;
}
.kvParts .parts4{
    top:339px;
    right:10px;
    width:89px;
}
.kvParts .parts5{
    bottom:1px;
    right:175px;
    width:230px;
}
.kvParts .parts6{
    bottom:1px;
    right:385px;
    width:125px;
}
.kvParts .parts7{
    bottom:21px;
    left:480px;
    width:119px;
}
.kvParts .parts8pc{
    bottom:10px;
    left:15px;
    width:300px;
}
.kvParts .parts9{
    top:185px;
    left:1px;
    width:97px;
}

/* --- フェードインアニメ用 --- */
.fadeUp {
    animation-name:fadeUpAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeUpAnime{
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- 本編 --- */
.explanation01{
    width:1000px;
    margin:0 auto 120px auto;
}

.explanation01 a.aBtn01{
    display:block;
    width:536px;
    margin:0 auto 120px auto;
    border-radius:10px;
    border-top:3px solid #000;
    border-right:3px solid #000;
    border-bottom:3px solid #000;
    border-left:19px solid #000;
    background:url("../../top/_img_bg/arrow-r.svg") no-repeat;
    background-position: right 23px center;
    background-size:10px 18px;
    padding:32px 0;
    color:#000;
}
.explanation01 .aBtn01 .tx01{
    text-align:center;
    font-size:32px;
    font-weight:700;
}
.explanation01 .aBtn01 .ttl02{
    text-align:center;
    font-size:16px;
    font-weight:400;
}

.explanation01 .ttlTpoint{
    text-align:center;
    margin-bottom:48px;
    line-height:1;
}
.explanation01 .ttlTpoint img{
    width:495px;
    margin-bottom:12px;
}
.explanation01 .ttlTpoint .tx{
    display:block;
    font-size:32px;
    font-weight:700;
}

.explanation01 .tx02{
    font-size:16px;
    font-weight:400;
    text-align:center;
    margin:0 0 60px 0;
}
.explanation01 .spgtBnr{
    width:800px;
    margin:0 auto 60px;
}
.explanation01 .spgtBnr img{
    width:100%;
}
.explanation01 .ttlMov{
    font-size:32px;
    font-weight:700;
    text-align:center;
    margin:0 0 40px 0;
}
.explanation01 .mov01{
    width:800px;
    height:450px;
    margin:0 auto 120px auto;
    background:#ccc;
                position:relative;
}
.mov01 iframe{
    width:100%;
    height:100%;
}
/*
            .explanation01 .mov01 s{
                width:400px;
                text-align:center;
                position:absolute;
                top:80px;
                left:50%;
                font-size:100px;
                font-weight:bold;
                margin-left:-200px;
                color:#ff0;
                opacity:0.7;
                text-shadow:
                    -5px 0 10px rgba(000,000,000,1),
                    10px 10px 10px rgba(000,000,000,1);
                transform: rotate(-15deg);
            }
*/
.explanation01 .ttlEach{
    font-size:32px;
    font-weight:700;
    text-align:center;
    margin:0 0 40px 0;
}

.explanation01 .toEachPage{
    width:1000px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding:0;
    margin:0 0 80px 0;
}
.toEachPage .btnBox{
    display:block;
    width:480px;
    height:223px;
    margin:0 0 40px 0;
    border-radius:10px;
    border-top:3px solid #000;
    border-right:3px solid #000;
    border-bottom:3px solid #000;
    border-left:19px solid #000;
    background:url("../../top/_img_bg/arrow-r.svg") no-repeat;
    background-position: right 23px center;
    background-size:10px 18px;
    color:#000;
    box-sizing: border-box;
}
.toEachPage .btnBox .ttl03{
    font-size:32px;
    font-weight:700;
    line-height:1.2;
    margin-bottom:16px;
    padding-left:175px;
}
.toEachPage .btnBox .tx03{
    font-size:16px;
    font-weight:400;
    line-height:1.6;
    padding-left:175px;
}
.toEachPage .tokuten{
    padding-top:50px;
    background:url("../../top/_img_bg/tokuten.svg") no-repeat;
    background-size:150px 122px;
    background-position: top 50px left 10px ;
}
.toEachPage .rank{
    padding-top:50px;
    background:url("../../top/_img_bg/rank.svg") no-repeat;
    background-size:117px 135px;
    background-position: top 50px left 30px ;
}
.toEachPage .mente{
    padding-top:34px;
    background:url("../../top/_img_bg/top-menu-mo.svg") no-repeat;
    background-size:150px 101px;
    background-position: top 61px left 0 ;
}
.toEachPage .appli{
    padding-top:54px;
    background:url("../../top/_img_bg/top-menu-app.svg") no-repeat;
    background-size:135px 133px;
    background-position: top 45px left 22px ;
}

/* --- 入会について --- */
.aboutMbsp{
    width:100%;
    background-color:#F6F6F6;
    padding:120px 0;
    margin:0 0 120px 0;
}
.aboutMbsp .ttl02b{
    font-size:32px;
    font-weight:700;
    text-align:center;
    margin:0 0 40px 0;
}
.aboutMbsp .innerBox{
    width:1000px;
    box-sizing: border-box;
    background-color:#fff;
    padding:55px 78px 80px;
    margin:0 auto;
}
.innerBox .ttl03b{
    font-size:32px;
    font-weight:700;
    color:#FF6E00;
    border-bottom:5px solid #FF6E00;
    margin:0 0 24px 0;
}
.innerBox .tx04{
    font-size:16px;
    font-weight:400;
    margin:0 0 1em 0;
}
.innerBox .link01 a{
    display:inline-block;
    color:#000;
    font-size:16px;
    border-bottom:1px solid #333;
    margin-bottom:2.5em;
}
.innerBox .how2join{
    width:100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    box-sizing: border-box;
    padding:0;
    margin:0 0 40px 0;
    border-bottom:1px solid #000;
}
.forApps .innerApps{
    width:396px;
    height:212px;
    background:url("../../top/_img_bg/top-app.png") no-repeat;
    background-size:146px 158px;
    background-position: top 23px left 0 ;
}
.forCards .innerApps{
    width:396px;
    height:212px;
    background:url("../../top/_img_bg/top-card.svg") no-repeat;
    background-size:177px 111px;
    background-position: top 50px left 30px ;
}
.innerBox .how2join .ttl04{
    font-size:22px;
    font-weight:700;
    text-align:center;
    background-color:#f6f6f6;
    border-radius: 50px;
    height:44px;
    line-height:44px;
}
.forApps .innerApps .tx05{
    font-size:22px;
    font-weight:700;
    padding:44px 0 10px 155px;
}
.forApps .innerApps .tx06{
    padding:0 0 0 155px;
    font-size:16px;
}
.forApps .innerApps .tx06 img{
    float:left;
    margin-right:0.5em;
}
.forApps .innerApps .tx06:after {
    content: "";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.forCards .innerApps .tx07{
    font-size:22px;
    font-weight:700;
    padding:44px 0 10px 240px;
}
.forCards .innerApps .tx08{
    padding:0 0 0 240px;
    font-size:16px;
}
.forCards .innerApps .tx08 b{
    font-size:29px;
    font-weight:700;
}
.forCards .innerApps .tx08 i{
    font-size:14px;
    font-weight:400;
}

/* --- 退会について --- */
.innerBox .aboutTaikai .ttl02c span{
    font-size:16px;
    font-weight:700;
    background-color:#f6f6f6;
    display:inline-block;
    border-radius: 50px;
    padding:0.3em 2em
}
.aboutTaikai .conditionList{
    margin:16px 0 1em 1em;
    padding:0;
}
.aboutTaikai .conditionList li{
    list-style-type: disc;
    font-size:16px;
    margin-left: 0.5em;
}
.aboutTaikai .tx09{
    font-size:16px;
    margin-bottom:0.5em;
}
.aboutTaikai .tx10 a{
    color:#000;
    font-size:16px;
    border-bottom:1px solid #333;
}

/* --- アプリで一元管理 --- */
#recomApps{
    width:100%;
    padding:96px 0 96px 0;
    background-color:#000;
    color:#fff;
    margin-bottom:96px;
}
#recomApps .ttl21{
    font-size:32px;
    font-weight:550;
    text-align:center;
    margin-bottom:60px;
    color:#fff;
}
.canDo{
    width:1000px;
    margin:0 auto 96px auto;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
}
.canDo li{
    width:220px;
    font-size:16px;
    border: 1px solid #c5c5c5;
    border-radius: 10px;
    padding:27px 0 16px 0;
    text-align:center;
    box-sizing: border-box;
}
.canDo li img{
    width:73px;
    margin-bottom:8px;
}
#recomApps .ttl22{
    font-size:24px;
    font-weight:550;
    text-align:center;
    margin-bottom:60px;
}
.usefulAppsTbSP{
    display:none;
}
.usefulAppsTbPC{
    display:table;
    width:1000px;
    box-sizing: border-box;
    padding:0;
    margin:0 auto 60px auto;
    border-top:1px solid #aaa;
    border-left:1px solid #aaa;
}
.usefulAppsTbPC .hd .tedge {
    background-image: linear-gradient(
        to top right,
        transparent, transparent 50%,
        #aaa 49.5%, #aaa 50.5%,
        transparent 50%, transparent
    );
    border-bottom:1px solid #aaa;
    border-right:1px solid #aaa;
}
.usefulAppsTbPC th{
    color:#000;
    font-size:16px;
    font-weight:550;
    text-align:center;
    vertical-align:middle;
    white-space:nowrap;
    padding:1.5em 1em;
    background-color:#fff;
    border-right:1px solid #aaa;
    border-bottom:1px solid #aaa;
    line-height:50px;
}
.usefulAppsTbPC .hd th{
    background-color:#f6f6f6;
}
.usefulAppsTbPC .onlyCard th img{
    width:60px;
    margin-right:5px;
    vertical-align:middle;
    background-color:#fff;
    text-align:left;
    /* border:1px solid #ddd; */
    border-radius:2px;
}
.usefulAppsTbPC .useApp th img{
    width:50px;
    height:50px;
    margin-right:5px;
    vertical-align:middle;
}
.usefulAppsTbPC td{
    background-color:#fff;
    color:#111;
    font-size:16px;
    text-align:center;
    vertical-align:middle;
    white-space:nowrap;
    padding:1.5em 1em;
    border-right:1px solid #aaa;
    border-bottom:1px solid #aaa;
}
.usefulAppsTbPC .onlyCard td{
    font-weight:normal;
}
.usefulAppsTbPC .useApp td,
.usefulAppsTbPC .useApp th{
    font-weight:550;
    color:#e2001d;
}
#recomApps .ttl23{
    font-size:24px;
    font-weight:550;
    text-align:center;
    margin-bottom:20px;
    color:#fff;
}
#recomApps .QRbox{
    width:100px;
    margin:0 auto;
    background-color:#fff;
    border-radius:10px;
    padding:10px;
}
#recomApps .QRbox img{
    width:100px;
    vertical-align:bottom;
}

/* --- 臨時のお知らせ --- */
#noticeEX{
    width:100%;
    margin-bottom:120px;
    padding:120px 0;
    background-color:#f6f6f6;
    text-align:center;
}
#noticeEX .tx01{
    font-size:32px;
    font-weight:550;
    margin-bottom:1em;
}
#noticeEX .link01{
    font-size:16px;
    font-weight:400;
}
#noticeEX a:link{text-decoration:underline;color:#333;}
#noticeEX a:visited{text-decoration:underline;color:#333;}
#noticeEX a:hover{text-decoration:underline;color:#333;opacity:0.7;transition: 0.25s ease-in-out;}
#noticeEX a:active{text-decoration:underline;color:#333;}

/* ---------------------------- スマホ --------------------------- */
@media screen and (max-width:767px){

                #forSAGYOU{
                    display:none;
                }

    #mbspTop{
    width:100%; overflow:hidden;
    }

/* --- キービジュアル --- */
    .kvWrap{
        width:100vw;
        height:135vw;
        background-color:#FDF8ED;
        margin:0 0 15vw 0;
        padding:0;
        position:relative;
        /*
        background:#FDF8ED url(../../top/_img_bg/_top_KV_sample3.png) no-repeat center center;
        background-size: cover;
        */
    }
    .kvWrap .logoSP{
        position:absolute;
        width:37vw;
        top:47vw;
        left:50%;
        margin-left:-18.5vw;
    }
    .kvWrap .ttl01{
        font-size:5vw;
        font-weight:900;
        font-family: "NotoSansJP-Black", sans-serif;
        text-align:center;
        position:absolute;
        width:100%;
        top:78vw;
        display:none;
    }
    .kvParts{
        position:relative;
        width:100vw;
        height:135vw;
        margin:0;
    }
    .kvWrap .logoPC,
    .kvParts .parts3pc,
    .kvParts .parts8pc{
        display:none;
    }
    .kvWrap .logoSP,
    .kvParts .parts3sp,
    .kvParts .parts8sp{
        display:block;
    }
    .kvParts .parts1{
        top:108.8vw;
        left:61vw;
        width:33vw;
    }
    .kvParts .parts2{
        top:49vw;
        left:84vw;
        width:11.3vw;
    }
    .kvParts .parts3sp{
        top:7.5vw;
        left:58.4vw;
        width:41.6vw;
    }
    .kvParts .parts4{
        top:82.8vw;
        left:83.2vw;
        width:12.1vw;
        right:auto;
    }
    .kvParts .parts5{
        top:6.6vw;
        left:6.4vw;
        width:28.4vw;
        bottom:auto;
        right:auto;
    }
    .kvParts .parts6{
        top:23vw;
        left:28.7vw;
        width:16.3vw;
        bottom:auto;
        right:auto;
    }
    .kvParts .parts7{
        top:33vw;
        left:6.4vw;
        width:18.8vw;
        bottom:auto;
        right:auto;
    }
    .kvParts .parts8sp{
        bottom:0;
        left:0;
        width:43vw;
    }
    .kvParts .parts9{
        top:66.6vw;
        left:6.3vw;
        width:13.8vw;
    }

/* --- 本編 --- */
    .explanation01{
        width:100vw;
        margin:0 auto 21vw auto;
    }
    .explanation01 a.aBtn01{
        display:block;
        width:87vw;
        margin:0 auto 20vw auto;
        background:url("../../top/_img_bg/arrow-r.svg") no-repeat;
        background-position: right 4.4vw center;
        background-size:1.8vw 3.3vw;
        padding:6.4vw 0;
        box-sizing: border-box;
    }
    .explanation01 .aBtn01 .tx01{
        font-size:5vw;
    }
    .explanation01 .aBtn01 .ttl02{
        font-size:4.3vw;
    }
    .explanation01 .ttlTpoint{
        text-align:center;
        font-size:6.4vw;
        margin-bottom:8.5vw;
    }
    .explanation01 .ttlTpoint img{
        width:88vw;
        margin-bottom:3vw;
    }
    .explanation01 .ttlTpoint .tx{
        display:block;
        font-size:6.4vw;
        font-weight:700;
    }
    
    .explanation01 .tx02{
        font-size:4.3vw;
        font-weight:400;
        text-align:left;
        margin:0 6vw 15vw;
    }
    .explanation01 .spgtBnr{
        width:88vw;
        margin:0 auto 15vw;
    }
    .explanation01 .spgtBnr img{
        width:100%;
    }
    .explanation01 .ttlMov{
        font-size:6.5vw;
        margin:0 0 9vw 0;
    }
    .explanation01 .mov01{
        width:100vw;
        height:56.3vw;
        margin:0 auto 20vw auto;
        background:#ccc;
                    position:relative;
    }
    .mov01 iframe{
        width:100%;
        height:100%;
    }
        
                .explanation01 .mov01 s{
                    width:80vw;
                    text-align:center;
                    position:absolute;
                    top:10vw;
                    left:50%;
                    font-size:25vw;
                    font-weight:bold;
                    margin-left:-40vw;
                    color:#ff0;
                    opacity:0.7;
                    text-shadow:
                        -5px 0 10px rgba(000,000,000,1),
                        10px 10px 10px rgba(000,000,000,1);
                    transform: rotate(-11deg);
                }

    .explanation01 .ttlEach{
        font-size:6.5vw;
        margin:0 0 8.5vw 0;
    }
    .explanation01 .toEachPage{
        width:92vw;
        display: block;
        margin:0 auto 20vw auto;
    }
    .toEachPage .btnBox{
        display:block;
        width:100%;
        height:47vw;
        margin:0 0 6.5vw 0;
        background:url("../../top/_img_bg/arrow-r.svg") no-repeat;
        background-position: right 4.4vw center;
        background-size:1.8vw 3.3vw;
        color:#000;
        box-sizing: border-box;
    }
    .toEachPage .btnBox .ttl03{
        font-size:5vw;
        font-weight:700;
        line-height:1.2;
        margin-bottom:4vw;
        padding-left:38vw;
    }
    .toEachPage .btnBox .tx03{
        font-size:4vw;
        padding-left:40vw;
    }
    .toEachPage .tokuten{
        padding-top:8vw;
        background:url("../../top/_img_bg/tokuten.svg") no-repeat;
        background-size:30vw auto;
        background-position: top 11vw left 4.2vw ;
    }
    .toEachPage .rank{
        padding-top:8vw;
        background:url("../../top/_img_bg/rank.svg") no-repeat;
        background-size:21vw auto;
        background-position: top 11vw left 6.5vw ;
    }
    .toEachPage .mente{
        padding-top:6vw;
        background:url("../../top/_img_bg/top-menu-mo.svg") no-repeat;
        background-size:34vw auto;
        background-position: top 11vw left 0 ;
    }
    .toEachPage .appli{
        padding-top:8vw;
        background:url("../../top/_img_bg/top-menu-app.svg") no-repeat;
        background-size:27vw auto;
        background-position: top 10vw left 4vw ;
    }

/* --- 入会について --- */
.aboutMbsp{
    width:100vw;
    padding:20vw 0;
    margin:0 0 20vw 0;
}
.aboutMbsp .ttl02b{
    font-size:6.5vw;
    margin:0 0 10vw 0;
}
.aboutMbsp .innerBox{
    width:90vw;
    padding:10vw 4.3vw 11vw;
}
.innerBox .ttl03b{
    font-size:6.5vw;
    padding-bottom:0.5em;
    margin:0 0 6vw 0;
}
.innerBox .tx04{
    font-size:4.3vw;
    margin:0 0 1em 0;
}
.innerBox .link01 a{
    display:inline-block;
    color:#000;
    font-size:3.8vw;
    border-bottom:1px solid #333;
    margin-bottom:2.5em;
}
.innerBox .how2join{
    width:100%;
    display: block;
    box-sizing: border-box;
    padding:0 0 12vw 0;
    margin:0 0 12vw 0;
    border-bottom:1px solid #000;
}
.forApps .innerApps{
    width:100%;
    height:auto;
    background:url("../../top/_img_bg/top-app.png") no-repeat;
    background-size:39vw auto;
    background-position: top 6.4vw center ;
}
.forCards .innerApps{
    width:100%;
    height:auto;
    background:url("../../top/_img_bg/top-card.svg") no-repeat;
    background-size:47vw auto;
    background-position: top 8vw center;
}
.innerBox .how2join .ttl04{
    font-size:4.3vw;
    height:10vw;
    line-height:10vw;
}
.forApps .innerApps .tx05{
    font-size:5.8vw;
    font-weight:700;
    text-align:center;
    padding:54vw 0 5.6vw 0;
}
.forApps .spAppDLbtn{
    width:78vw;
    height:15vw;
    display:block;
    margin:0 auto 12vw auto;
    text-align:center;
    background-color:#000;
    color:#fff;
    line-height:15vw;
    font-weight:700;
    font-size:5.8vw;
    border-radius: 5px;
}
.forApps .innerApps .tx06{
    display:none;
}
.forCards .innerApps .tx07{
    font-size:5.8vw;
    font-weight:700;
    text-align:center;
    padding:41vw 0 3vw 0;
}
.forCards .innerApps .tx08{
    font-size:4.3vw;
    text-align:center;
    padding:0;
}
.forCards .innerApps .tx08 b{
    font-size:7.7vw;
}
.forCards .innerApps .tx08 i{
    font-size:3.7vw;
}

/* --- 退会について --- */
.innerBox .aboutTaikai .ttl02c span{
    font-size:4.3vw;
}
.aboutTaikai .conditionList{
    margin:4.3vw 0 1em 1em;
    padding:0;
}
.aboutTaikai .conditionList li{
    list-style-type: disc;
    font-size:4vw;
    margin-left: 0.5em;
}
.aboutTaikai .tx09{
    font-size:4vw;
    margin-bottom:0.5em;
}
.aboutTaikai .tx10 a{
    font-size:3.7vw;
}

/* --- recomApps --- */
    #recomApps{
        width:100%;
        padding:14vw 0 14vw 0;
        margin-bottom:14vw;
    }
    #recomApps .ttl21{
        font-size:6.4vw;
        font-weight:550;
        text-align:center;
        margin-bottom:8.5vw;
        color:#fff;
    }
    .canDo{
        width:90vw;
        margin:0 auto 10vw auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        box-sizing: border-box;
    }
    .canDo li{
        width:44vw;
        border-radius: 10px;
        padding:6vw 0 3vw 0;
        margin-bottom:2vw;
        line-height:1.3;
        font-size:3.7vw;
    }
    .canDo li:nth-child(1){
        padding-bottom:7vw;
    }
    .canDo li img{
        width:auto;
        height:13vw;
        margin-bottom:1vw;
    }
    #recomApps .ttl22{
        font-size:5.3vw;
        margin-bottom:6.4vw;
    }
    .usefulAppsTbPC{
        display:none;
    }
    .usefulAppsTbSP{
        display:table;
        width:90vw;
        box-sizing: border-box;
        padding:0;
        margin:0 auto 10vw auto;
        border-top:1px solid #aaa;
        border-left:1px solid #aaa;
    }
    .usefulAppsTbSP .hd .tedge {
        background-image: linear-gradient(
            to top right,
            transparent, transparent 50%,
            #aaa 49.5%, #aaa 50.5%,
            transparent 50%, transparent
        );
        border-bottom:1px solid #aaa;
        border-right:1px solid #aaa;
        background-color:#fff;
    }
    .usefulAppsTbSP th{
        color:#000;
        font-size:3.5vw;
        font-weight:550;
        text-align:center;
        vertical-align:middle;
        white-space:nowrap;
        padding:1.5em 0.5em;
        background-color:#fff;
        border-right:1px solid #aaa;
        border-bottom:1px solid #aaa;
        background-color:#f6f6f6;
    }
    .usefulAppsTbSP .hd th{
        background-color:#fff;
    }
    .usefulAppsTbSP th.onlyCard {
        font-weight:normal;
    }
    .usefulAppsTbSP th.onlyCard img{
        height:11vw;
        margin:0 0 5px 0;
        /* border:1px solid #ddd; */
        border-radius:2px;
    }
    .usefulAppsTbSP  th.useApp img{
        height:11vw;
        margin:0 0 5px 0;
        /* border:1px solid #000; */
        border-radius:8px;
    }
    .usefulAppsTbSP  th.useApp{
        color:#e2001d;
        line-height:1.4;
    }
    .usefulAppsTbSP td{
        background-color:#fff;
        color:#111;
        font-size:3.5vw;
        text-align:center;
        vertical-align:middle;
        padding:1.5em 0.2em;
        border-right:1px solid #aaa;
        border-bottom:1px solid #aaa;
    }
    .usefulAppsTbSP .onlyCard td{
        font-weight:normal;
    }
    .usefulAppsTbSP tr td:nth-child(3){
        font-weight:550;
        color:#e2001d;
    }
    #recomApps .ttl23{
        font-size:24px;
        font-weight:550;
        text-align:center;
        margin-bottom:20px;
        color:#fff;
    }
    .dlAppNow{
        width:90vw;
        margin:0 auto;
    }
    .dlAppNow .btn a{
        display:block;
        width:100%;
        background-color:#fff;
        color:#000;
        font-size:4.5vw;
        font-weight:550;
        text-align:center;
        margin:0 auto;
        line-height:3em;
        border-radius: 8px;
    }
    
    /* --- 臨時のお知らせ --- */
    #noticeEX{
        margin-bottom:21vw;
        padding:21vw 0;
    }
    #noticeEX .tx01{
        font-size:6.4vw;
        margin-bottom:1em;
    }
    #noticeEX .link01{
        font-size:3.6vw;
    }
    
}/* スマホ */