/* カスタマイズ用CSS */
.ec-label {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    margin-bottom: 5px;
}

#site-title {
    text-align: center;
    line-height: 110% !important;
    max-width: none;
    margin: 0 calc(50% - 50vw) 0.5em;
    padding: 4px calc(50vw - 45%) 2.5px calc(50vw - 50%);
}

.cont-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-right: auto;
    margin-left: auto;
    justify-content: center;
}

.btn_blk {
    display: flex; /* Flexboxを適用 */
    flex-direction: column; /* 縦方向に配置 */
    align-items: center; /* 中央揃え */
    justify-content: center; /* テキストを中央配置 */
    min-height: 80px; /* 最小の高さを統一 */
    text-align: center;
}

.btn_blk a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 350px;
    min-height: 100%; /* 親要素の高さを継承 */
    font-weight: bold;
    text-align: center;
    color: #fff;
    text-decoration: none;
    transition: 0.6s;
    padding: 1em;
    background: #1c1b1b;
    border: 1px solid #1c1b1b;
    box-sizing: border-box;
}

.ec-contactRole p,
.ec-footerTitle p{
    margin-bottom: 1em;
}

.ec-footerTitle__logo {
    font-weight: normal !important;
}

/* レスポンシブ対応 */
@media(min-width:767px) {
    #site-title {
        font-size: 0.75vw;
    }

    .ec-footerTitle .ec-footerTitle__logo a,
    .ec-footerTitle p{
        font-size: 0.75vw;
    }

    .wrap_pc2 {
        flex-grow: 1;
        width: calc((100% - 30px * 2) / 2);
        display: flex;
    }
    
    .pc-none {
        display: none;
    }
}

@media(max-width:767px) {
    #site-title {
        font-size: 2vw;
    }

    .ec-footerTitle .ec-footerTitle__logo a,
    .ec-footerTitle p{
        font-size: 3vw;
    }
    
    .wrap_sp1 {
        flex-grow: 1;
        width: 100%;
        display: flex;
    }
    
    .sp-none {
        display: none;
    }
}