@charset "UTF-8";
html {font-size: 62.5%;}
#Wrap {width: 100%;}
#contentsAll {font-feature-settings: 'palt'; text-align: justify; text-justify: inter-ideograph;} 
#contentsAll p {font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic', 'メイリオ', sans-serif;}
#contentsAll a:hover {cursor: pointer; opacity: .5;}
#contentsAll ul li {list-style: none;}
#contentsAll .imgMaxWidth {width: 100%;}

#contentsAll img,
#contentsAll span {
    display: block;
    image-rendering: -webkit-optimize-contrast; /*4/16追加*/
}

#contentsAll .futuraFont {
    font-family: futura-pt, sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;
}

/*************************************SP****************************************/
@media screen and ( max-width:560px ) {

    #contentsAll {
        width: calc(750*(100vw/750)); 
        margin: 0 auto;
    }

    #contentsAll h2 {
        margin: calc(80*(100vw/750)) auto calc(40*(100vw/750));
        font-size: calc(50*(100vw/750));
        letter-spacing: .1em;
        text-align: center;
    }

    #contentsAll h3 {
        font-size: calc(28*(100vw/750));
        letter-spacing: .025em;
        text-align: center;
    }

    #contentsAll .categorySubList {
        width: calc(590*(100vw/750));
        margin: calc(60*(100vw/750)) auto 0;
    }
    #contentsAll .categorySubList li {
        width: calc(590*(100vw/750));
    }
    #contentsAll ul li:nth-of-type(n+2) {
        margin-top: calc(80*(100vw/750));
    }
    #contentsAll ul li a p {
        line-height: 1.5; 
    }
    #contentsAll ul li a p span:nth-of-type(1) {
        margin-top: calc(30*(100vw/750));
        color: #666;
        font-size: calc(22*(100vw/750));
    }
    #contentsAll ul li a p span:nth-of-type(2) {
        margin-top: calc(8*(100vw/750));
        font-size: calc(24*(100vw/750));
    }

    .footer .footer-inner {
        margin: calc( 140 * (100vw / 750)) auto 0 !important;
    }
    
}

/*************************************PC****************************************/
@media screen and (max-width: 1200px) and (min-width: 561px) {
    #contentsAll {font-size: calc(10* (100vw / 1200)) !important;}
}
@media only screen and (min-width: 561px) {

    #contentsAll {
        width: 120rem;
        margin: 0 auto;
    }

    #contentsAll h2 {
        margin: 8rem auto 3rem;
        font-size: 2.5rem;
        letter-spacing: .1em;
        text-align: center;
    }

    #contentsAll h3 {
        font-size: 1.5rem;
        letter-spacing: .025em;
        text-align: center;
    }

    #contentsAll .categorySubList {
        display: flex;
        flex-wrap: wrap;
        width: 112.5rem;
        margin: 6rem auto 0;
    }
    #contentsAll .categorySubList li {
        width: 33rem;
        margin: 0 2.2rem;
    }
    #contentsAll ul li:nth-of-type(n+4) {
        margin-top: 6rem;
    }
    #contentsAll ul li a p {
        line-height: 1.5; 
    }
    #contentsAll ul li a p span:nth-of-type(1) {
        margin-top: 2rem;
        color: #666;
        font-size: 1.2rem;
    }
    #contentsAll ul li a p span:nth-of-type(2) {
        margin-top: .25rem;
        font-size: 1.3rem;
    }

    .main-area::after {
        margin: 15rem auto 0 !important;
    }

}