@charset "utf-8";

/* secTop */
.secTop .boxTop{
    color: #fff;
    background: url(../img/company/imgTop.jpg) #b2adaf center top no-repeat;
    padding: 0 12rem;
    margin-top: 3rem;
    height: 32rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.secTop .titGreeting{
    font-size: var(--pcFontSize26);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing26_100);
    line-height: var(--pcLineHeight26_44);
}
.secTop .txtName{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_50);
    margin: 1.9rem 0 0;
}
.secTop .txtGreeting{
    margin-top: 4.5rem;
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_50);
    line-height: var(--pcLineHeight15_28);
}
.secTop .txtGreeting .txt + .txt{
    margin-top: 2.8rem;
}
@media only screen and (max-width:1215px){
    .secTop .boxTop{
        width: 100%;
        height: auto;
        aspect-ratio: 345 / 160;
        background: url(../img/company/imgTop_sp.jpg) #b2adaf center top / 100% no-repeat;
        padding: 0 2rem;
        margin-top: 1.5rem;
    }
    .secTop .titGreeting{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_30);
        line-height: var(--spLineHeight14_22);
    }
    .secTop .txtName{
        font-size: var(--spFontSize11);
        letter-spacing: var(--spLetterSpacing11_30);
        margin: 1rem 0 0;
    }
    .secTop .txtGreeting{
        margin-top: 1.5rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_30);
        line-height: var(--spLineHeight12_24);
    }
    .secTop .txtGreeting .txt + .txt{
        margin-top: 1rem;
    }
}

/* secOutline */
.secOutline{
    margin-top: 5rem;
}
.secOutline .subtit{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    letter-spacing: var(--pcLetterSpacing18_50);
    color: #fff;
    background-color: var(--borderColorDarkGrey);
    padding: 3.5rem 2.8rem 3rem;
}
.secOutline .boxTable{
    display: block;
    margin-top: 1rem;
}
.secOutline .boxTable tbody{
    display: block;
}
.secOutline .boxTable tr{
    display: flex;
    background-image: repeating-linear-gradient(90deg, var(--borderColorGrey), var(--borderColorGrey) 1px, transparent 1px, transparent 4px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 1px;
    padding: 2.3rem 0 2rem;
}
.secOutline .boxTable th,
.secOutline .boxTable td{
    display: block;
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_50);
    line-height: var(--pcLineHeight15_30);
    padding: 0 3rem;
}
.secOutline .boxTable th{
    width: 17.8rem;
    border-right: 0.1rem solid var(--grayColorE8);
}
.secOutline .boxTable td{
    flex: 1;
}
.secOutline .boxTable .txtList{
    padding-left: 1em;
}
.secOutline .boxTable .txtList li{
    padding-left: 1em;
    position: relative;
}
.secOutline .boxTable .txtList li::before{
    content: "・";
    position: absolute;
    top: 0;
    left: 0;
}
.secOutline .boxMap{
    margin: 5rem 0 0;
}
.secOutline .boxMap iframe{
    width: 100%;
    height: 40rem;
}
.secOutline .btnBack{
    margin: 5rem auto 0;
    font-size: var(--pcFontSize15);
    letter-spacing: var(--pcLetterSpacing15_50);
}
@media only screen and (max-width:1215px){
    .secOutline{
        margin-top: 3rem;
    }
    .secOutline .subtit{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing14_30);
        padding: 1.9rem 1.5rem 1.7rem;
    }
    .secOutline .boxTable{
        margin-top: 0;
    }
    .secOutline .boxTable tr{
        display: block;
        background-image: repeating-linear-gradient(90deg, var(--grayColorB8), var(--grayColorB8) 1px, transparent 1px, transparent 2px);
        padding: 1.5rem 1.5rem 1.5rem;
    }
    .secOutline .boxTable th,
    .secOutline .boxTable td{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_50);
        line-height: var(--spLineHeight12_22);
    }
    .secOutline .boxTable th{
        width: 100%;
        border-right: none;
        font-weight: bold;
        padding: 0;
    }
    .secOutline .boxTable td{
        padding: 0;
    }
    .secOutline .boxMap{
        margin: 3rem 0 0;
    }
    .secOutline .boxMap iframe{
        height: 20rem;
    }
    .secOutline .btnBack{
        margin: 3rem auto 0;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing12_30);
    }
}