@charset "UTF-8";

* {
    font-size: 100%;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
}

a {
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    text-decoration: none;
}

li {
    list-style: none;
}

.section_title {
    text-align: center;
}

h2 {
    color: #011d0e;
    font-size: 1.5rem;
    font-weight: 300;
    margin-bottom: 10px;
}

.section_title p {
    color: #0071bc;
    font-size: 0.875rem;
}

.padding {
    padding: 0 180px;
}

/* ------------------------
header
------------------------ */
header {
    background-color: #fff;
    width: 100%;
    height: 80px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
}

.nav {
    font-size: 1.125rem;
    display: flex;
    gap: 1em;
}

.nav a {
    color: #212121;
}

.nav a:hover {
    opacity: 0.7;
}

/* ------------------------
overview
------------------------ */
#overview {
    background-color: #f0f0f0;
    width: 100%;
    padding: 50px 0 90px;
    margin-top: 80px;
}

#overview .section_title {
    margin-bottom: 50px;
}

.overview_list {
    color: #011d0e;
    background-color: #fff;
    width: 65%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-bottom: 20px;
    margin: 0 auto;
}

.overview_list dt {
    width: 30%;
    font-weight: 600;
    padding: 20px 0 20px 10px;
    border-bottom: 1px solid #b9b9b9;
}

.overview_list dd {
    width: 65%;
    padding: 20px 0 20px 10px;
    border-bottom: 1px solid #b9b9b9;
}

/* ------------------------
contact
------------------------ */
#contact {
    background-image: url(../image/bg_footer.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 300px;
    padding: 90px 0 85px;
}

.contact_contents {
    color: #011d0e;
    display: flex;
    justify-content: space-between;
}

.office_name {
    width: 135px;
    border: 2px solid #0071bc;
    border-radius: 1.3rem;
    text-align: center;
    line-height: 2.3;
}

.tel {
    font-size: 1.875rem;
    margin: 20px 0 5px;
}

.tel img {
    position: relative;
    top: 3px;
}

.office_address {
    font-size: 0.875rem;
}

.office_address img {
    position: relative;
    top: 10px;
    margin-right: 3px;
}

.consaltation p {
    font-size: 1.125rem;
    margin-bottom: 1em;
}

.consaltation button {
    background-color: rgba( 255, 255, 255, 0);
    width: 350px;
    height: 80px;
    border: 2px solid #0071bc;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.5s;
}

.consaltation a {
    color: #011d0e;
    height: 80px;
    font-size: 1.5rem;
    display: block;
    padding-left: 30px;
    line-height: 3.3;
}

.chevron {
    height: 28px;
}

.consaltation button:hover {
    background-color: #0071bc;
    transition: all 0.5s;
}

.consaltation a:hover {
    color: #fff;
    position: relative;
    left: 14px;
    transition: all 0.5s;
}

/* ------------------------
footer
------------------------ */
footer {
    background-color: #1b5d88;
    width: 100%;
    height: 80px;
    display: flex;
    justify-content: end;
    align-items: center;
}