@charset "UTF-8";
/* CSS Document */

#companyArea .heading{
font-size: 150%;
}





#companyPhilosophy{
padding-top: 70px;
margin-top: -70px;
position: relative;
}
#companyPhilosophy::before{
content: '';
display: block;
position: absolute;
top: calc(50% + 70px);
left: 0;
right: 0;
transform: translate(0, -30%);
padding-top: 30%;
background-image: url(../images/company_philosophy_bg.png);
background-repeat: no-repeat;
background-position: center bottom;
background-size: 100% auto;
opacity: 0.2;
z-index: -1;
}
#philosophyTxt{
margin-top: 80px;
text-align: center;
}
#philosophyTxt h3{
font-size: 187.5%;
line-height: 1.5;
font-weight: 700;
}
#philosophyTxt p{
line-height: 3;
margin-top: 3em;
}
#philosophyImg{
display: flex;
margin-top: 20px;
}
#philosophyImg figure{
width: 50%;
}
#philosophyImg figure:nth-child(2n+1){
margin-top: 50px;
}
#philosophyImg figure figcaption{
padding: 0 10px;
margin-top: 10px;
font-size: 11px;
font-weight: 400;
}





@media screen and (max-width: 999px){
#companyPhilosophy{
padding-top: 70px;
margin-top: -70px;
}
#companyPhilosophy::before{
top: auto;
bottom: 0;
transform: none;
}
#philosophyTxt{
margin-top: 40px;
}
#philosophyTxt p{
margin-top: 2em;
}
#philosophyImg{
display: block;
margin-top: 30px;
}
#philosophyImg figure{
width: auto;
}
#philosophyImg figure:nth-child(2n+1){
margin-top: 0;
}
#philosophyImg figure figcaption{
padding: 0;
}
#philosophyImg figure+figure{
margin-top: 30px;
}
}/*999*/





#companyGreeting{
margin-top: 80px;
padding-top: 70px;
}
#greetingMain p.signature{
text-align: right;
}
#greetingMain{
margin-top: 40px;
display: flex;
justify-content: space-between;
}
#greetingMain figure{
width: 400px;
}
#greetingMain figure figcaption{
font-size: 187.5%;
font-weight: 700;
line-height: 1.5;
margin-top: 15px;
}
#greetingMain figure figcaption small{
font-size: 50%;
font-weight: 600;
color: #999999;
display: inline-block;
margin-left: 20px;
}
#greetingMain .txt{
width: calc(100% - 470px);
}
.greetingTxtBox+.greetingTxtBox{
margin-top: 40px;
}
#greetingMain .txt p+p{
margin-top: 2em;
}
#greetingMain .txt h3{
font-size: 125%;
padding-bottom: 10px;
margin-bottom: 10px;
border-bottom: 1px solid #111111;
}
#greetingMain .txt ul{
display: flex;
flex-wrap: wrap;
}
#greetingMain .txt ul li{
width: calc(50% - 20px);
list-style-type: disc;
margin-left: 20px;
padding-right: 20px;
}






@media screen and (max-width: 999px){
#companyGreeting{
margin-top: -20px;
}
#greetingMain{
margin-top: 30px;
display: block;
}
#greetingMain figure{
width: auto;
max-width: 300px;
margin: 0 auto;
}
#greetingMain .txt{
width: auto;
margin-top: 2em;
}
.greetingTxtBox+.greetingTxtBox{
margin-top: 30px;
}
#greetingMain .txt ul li{
width: auto;
padding-right: 0;
}
}/*999*/





#companyStaff{
margin-top: 80px;
padding-top: 70px;
}
#companyStaff ul.list{
display: flex;
flex-wrap: wrap;
margin-left: -50px;
margin-top: -10px;
}
#companyStaff ul.list>li{
width: 25%;
padding-left: 50px;
margin-top: 50px;
}
#companyStaff ul.list>li p.name{
font-size: 125%;
font-weight: 700;
line-height: 1.5;
margin-top: 0.5em;
}
#companyStaff ul.list>li h3{
font-weight: 700;
margin-top: 1em;
}
#companyStaff ul.list>li ul li{
list-style-type: disc;
margin-left: 20px;
}
#companyStaff ul.list>li p.excerpt{
margin-top: 1em;
}





@media screen and (max-width: 999px){
#companyStaff{
margin-top: -20px;
}
#companyStaff ul.list{
display: flex;
margin-left: -30px;
margin-top: -20px;
}
#companyStaff ul.list>li{
width: 50%;
padding-left: 30px;
}
#companyStaff ul.list>li p.name{
font-size: 125%;
font-weight: 700;
line-height: 1.5;
margin-top: 0.5em;
}
#companyStaff ul.list>li h3{
font-weight: 700;
margin-top: 1em;
}
#companyStaff ul.list>li ul li{
list-style-type: disc;
margin-left: 20px;
}
#companyStaff ul.list>li p.excerpt{
margin-top: 1em;
}
}/*999*/





#companyOutline{
margin-top: 80px;
padding-top: 70px;
}
#companyOutline dl{
margin-top: 30px;
display: flex;
flex-wrap: wrap;
}
#companyOutline dl dt{
width: 240px;
border-bottom: 1px solid #1d2086;
padding: 20px;
}
#companyOutline dl dd{
width: calc(100% - 240px);
border-bottom: 1px solid #cdcdcd;
padding: 20px;
}
#companyOutline dl dd p+p{
margin-top: 2em;
}
#companyOutline dl dd ul li{
list-style-type: disc;
margin-left: 20px;
}





@media screen and (max-width: 999px){
#companyOutline{
margin-top: -20px;
}
#companyOutline dl{
margin-top: 30px;
display: block;
}
#companyOutline dl dt{
width: auto;
border-bottom: none;
background-color: #dcdcdc;
padding: 10px 20px;
margin-top: 20px;
}
#companyOutline dl dd{
width: auto;
border-bottom: none;
padding: 10px 20px;
}
}/*999*/





#companyAccess{
margin-top: 80px;
padding-top: 70px;
}
#accessMap{
padding-top: 500px;
background-color: #cdcdcd;
margin-top: 40px;
}
#accessMap iframe{
display: block;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}





@media screen and (max-width: 999px){
#companyAccess{
margin-top: -20px;
}
#accessMap{
padding-top: 75%;
margin-top: 30px;
}
}/*999*/





#staffMain ul.list{
display: flex;
flex-wrap: wrap;
margin-left: -50px;
margin-top: -50px;
line-height: 1.5;
}
#staffMain ul.list.listCenter{
justify-content: center;
}
#staffMain ul.list.listLeft{
justify-content: flex-start;
}
#staffMain ul.list>li{
width: 25%;
padding-left: 50px;
margin-top: 50px;
}
#staffMain ul.list>li .staffFigure{

}
#staffMain ul.list>li figure{
overflow: hidden;
position: relative;
padding-top: 150%;
}
#staffMain ul.list>li figure img{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
font-family: 'object-fit: cover;';
}
#staffMain ul.list>li p.name{
font-size: 125%;
font-weight: 700;
margin-top: 0.5em;
}
#staffMain ul.list>li p.furigana{
font-size: 12px;
margin-top: 0.25em;
}
#staffMain ul.list>li h3{
font-weight: 700;
margin-top: 1em;
font-size: 75%;
}
#staffMain ul.list>li ul li{
list-style-type: disc;
margin-left: 20px;
}
#staffMain ul.list>li p.excerpt{
margin-top: 1em;
}
#staffMain ul.list>li p.staffContent{
font-size: 75%;
}
#staffNone{
text-align: center;
}





@media screen and (max-width: 999px){
#staffMain ul.list{
display: flex;
margin-left: -30px;
}
#staffMain ul.list.listCenter{
justify-content: flex-start;
}
#staffMain ul.list>li{
width: 100%;
padding-left: 30px;
}
#staffMain ul.list>li .staffFigure{
max-width: 240px;
margin: 0 auto;
}
#staffMain ul.list>li p.name{
font-size: 125%;
font-weight: 700;
line-height: 1.5;
margin-top: 0.5em;
}
#staffMain ul.list>li h3{
font-weight: 700;
margin-top: 1em;
}
#staffMain ul.list>li ul li{
list-style-type: disc;
margin-left: 20px;
}
#staffMain ul.list>li p.excerpt{
margin-top: 1em;
}
}/*999*/