/*============================
共通
================================*/
main h2{
    text-align:center;
    font-size: min(100vw / 375 * ( 18 + 16 ) / 2 , 18px);    
    margin-bottom: min( 100vw / 750 * 40 , 40px);
    font-weight:bold;
}

/*============================
#fv
============================*/
div.fv {
    position:relative;
    text-align:center;
}
div.fv .fv__title{
    position: absolute;
    left:50%;
    top:50%;
    z-index:1;
    transform:translate(-50%, -50%);
    width:100%;
}
div.fv h1 {
    font-size: min(100vw / 375 * ( 32 + 16 ) / 2 , 32px);
    line-height: calc(1em / 32 * 48);
    font-weight:bold;
    margin-bottom: min( 100vw / 750 * 24 , 24px);
}
div.fv figure {
    position:relative;
    z-index:0;
}
div.fv figure img {
}


/*============================
#start
============================*/
section.links {
    padding: min( 100vw / 750 * 56 , 56px) min( 100vw / 750 * 16 , 16px);
}
section.links div.container div.grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: min( 100vw / 750 * 28 , 28px);
}
@media screen and (max-width:750px){
    section.links div.container div.grid {
        grid-template-columns: 1fr;    
    }
}

section.links div.container div.grid a {
    padding: min( 100vw / 750 * 30 , 30px) min( 100vw / 750 * 20 , 20px);
    background: var(--bac-main);
    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
    border-radius: min( 100vw / 750 * 4 , 4px);
    text-align: center;
    color: var(--col-main);     
    font-size: min(100vw / 375 * ( 15 + 16 ) / 2 , 15px);
    line-height: calc(1em / 15 * 22.5);
    
}
section.links div.container div.grid a i{
    color: var(--col-accent);
    height: min( 100vw / 750 * 32 , 32px);
    font-size: min(100vw / 375 * ( 32 + 16 ) / 2 , 32px);
    margin-bottom: min( 100vw / 750 * 12 , 12px);
    
}
section.links div.container div.grid a h3 {
    font-size: min(100vw / 375 * ( 16 + 16 ) / 2 , 16px);
    line-height: calc(1em / 16 * 24);
    margin-bottom: min( 100vw / 750 * 8 , 8px);
    font-weight:bold;
}

/*============================
#help
============================*/
section#help{
    background-color: var(--bac-accent);
}


/*============================
#faq
============================*/
section#faq{
    padding: min( 100vw / 750 * 56 , 56px) min( 100vw / 750 * 16 , 16px);
}
section#faq .posts__list ul{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 min( 100vw / 750 * 32 , 32px) ;
}

@media screen and (max-width:750px){
    section#faq .posts__list ul{
        grid-template-columns: 1fr;
    }
}