@charset "utf-8";

/* ==============================
   全体設定
============================== */
main { 
    background: #f1f7ef; padding-bottom: 80px;
}

.contets_outline { 
    padding-top: 0; padding-bottom: 0;
    background: #fff; 

}

.dl_company { 
    display: flex; 
    flex-wrap: wrap; 
}

.dl_company dt { 
    width: 100%; 
    padding: 10px; 
    background: #F8F8F8;
}

.dl_company dd { 
    width: 100%; 
    border-bottom: 1px solid #DBDBDB; 
    padding: 10px; 
}

.dl_company.top { border-top: 1px solid #DBDBDB; }
@media screen and (min-width:768px) {
.dl_company dd { 
    border-top: 1px solid #DBDBDB; 
}
.dl_company.top { border-top:initial; }
}

.dl_company.last { 
    margin-bottom: 50px; 
}

.a_button_daen { 
    margin-top: 20px; 
    text-align: center; 
}

/* ==============================
   背景画像・トップ部分
============================== */
.wrap .div_back { 
    width: 100%; 
    height: 90vw; 
    position: relative; 
    background: url(../img/top_bg.jpg) no-repeat; 
    background-size: cover; 
    margin-bottom: 50px; 
    background-attachment: fixed;
}

@media screen and (min-width:375px) {
    .wrap .div_back { height:70vw; }
}
@media screen and (min-width:414px) {
    .wrap .div_back { height:60vw; }
}
@media screen and (min-width:960px) {
    .wrap .div_back { margin-bottom:0; }
}
@media (max-width:768px) {
    .wrap .div_back { background-attachment: scroll; }
    
}


.wrap .div_back .div_back_in { 
    width: 90%; 
    position: absolute; 
    left: 50%; 
    top: 50%; 
    transform: translate(-50%, -50%); 
    color:#fff; 
    font-family: "Oswald", sans-serif; 
}

.wrap .div_back .div_back_in h3 strong { 
    width:100%; 
    font-size:40px; 
    font-weight:bold; 
    line-height:1.2em; 
    text-align:center; 
}

.wrap .div_back .div_back_in h3 { 
    margin-bottom:10px; 
    font-size:14px; 
    letter-spacing:0.1em; 
    text-align:center; 
}

.wrap .div_back .div_back_in span { 
    letter-spacing:0.1em; 
    line-height:2em; 
    font-size:14px; 
    text-align:center; 
    display:block; 
}

/* ==============================
   PC用フォント・レイアウト
============================== */
.address_block { font-weight:bold; }
@media screen and (min-width:600px) {
    .wrap .div_back .div_back_in span { font-size:18px; }
    .dl_company { font-size:14px; }

    .dl_company dt { 
        width:20%; 
        border-top:1px solid #B2B2B2; 
        padding:20px 0 20px 20px; 
        background:#F8F8F8;
        margin-top: -1px;
    }

    .dl_company dd { 
        width:80%; 
        border-top:0;
        border-bottom:1px solid #B2B2B2; 
        margin-top: -1px;
        padding-top:20px; padding-bottom:20px; 
    }
    .contets_outline { padding-bottom:0; }
    .contets_outline .dl_company dd { padding-left:40px;}
    .contets_outline .dl_company:first-child dd { border-top:1px solid #B2B2B2; }
    .contets_outline .dl_company:last-child dt { border-bottom:1px solid #B2B2B2; }

    .dl_company dd .TEL { font-size:15px; }
    .dl_company:last-child { margin-bottom:80px; }
    .contents .p_lead { text-align:center; }

    .wrap .div_back { height:70vw; }
    .div_back .div_back_in { width: 50%; }
    .wrap .div_back .div_back_in h3 { margin-bottom:30px; }
    .div_back .div_back_in span { font-size:16px; }

    .office_block { display:flex; flex-wrap:wrap;}
    .address_block { width:240px; font-weight:normal; }
}
@media (min-width:768px) and (max-width:1024px) {
 .address_block { width:100%; }
    .contets_outline .dl_company dd br.inline_pc { display:none; }
}


/* 本社 */
.dl_company dt.inline_pc { border-top:none; display:block; }

@media screen and (min-width:768px) {
    .contets_outline { padding:80px 0 60px 0; }
    .dl_company { width:90%; margin:0 auto; }


}
