/* sec01
***********************************************************/
#sec01 {
  margin: 0 auto;
  padding: 14vw 4vw 0;
  box-sizing: border-box;
  max-width: 2000px;
}
#sec01 h2 {
     text-align: left;
     font-size: 24px;
     font-weight: bold;
     color: #083a71;
}
#sec01 .aboutbox {
     padding: 10vw 0 0;
     text-align: left;
     border-bottom: 1px solid #083a71;
}
#sec01 .aboutbox_item {
     padding: 4.5vw 2vw;
     border-top: 1px solid #083a71;
     box-sizing: border-box;
     display: -webkit-box;
     display: flex;
     flex-wrap: nowrap;
     align-items: center;
}
#sec01 .aboutbox_item p:first-child {
     width: 70px;
     font-size: 24px;
     color: #083a71;
     font-family: 'Roboto';
     line-height: 1;
}
#sec01 .aboutbox_item h3 {
     width: 300px;
     font-size: 48px;
     font-family: 'Roboto';
     font-weight: 400;
     letter-spacing: 6px;
     color: #083a71;
     line-height: 1;
}

#sec01 .aboutbox_item h3 + p {
     font-size: 20px;
     color: #000;
     font-weight: 500;
     flex: 1;
}
#sec01 .aboutbox_item span {
     margin: 0.5rem 0 0;
     font-size: 16px;
     display: block;
     color: #666;
     font-weight: 300;
     width: 100%;
}
#sec01 .aboutbox_item .dlwrap {
     flex: 1;
}
#sec01 .aboutbox_item dl {
     margin: 1.5rem 0 0;
     display: flex;
     flex-wrap: wrap;
     font-size: 20px;
     color: #000;
     font-weight: 500;
}
#sec01 .aboutbox_item dt {
     width: 180px;
}
#sec01 .aboutbox_item dl:first-child {
     margin: 0;
}

/* sec02
***********************************************************/
#sec02 {
  margin: 0 auto;
  padding: 4vw 4vw 0;
  box-sizing: border-box;
  max-width: 2000px;
}
.txt_wrapper p.president {
     margin: 1vw 0 0;
     text-align: right;
     color: #000;
     font-size: 22px;
     letter-spacing: 5px;
}
.txt_wrapper p.president span {
     margin: 0 40px 0 0;
     display: inline-block;
     font-size: 16px;
}
.txt_wrapper p.txtc {
  padding: 2vw 80px;
}

table.outline {
     margin: 2vw 80px 0;
     max-width: 1240px;
     box-sizing: border-box;
}
table.outline tr {
}
table.outline th {
     padding: 2vw 40px 0 0;
     width: 260px;
     color: #083a71;
}
table.outline td {
     padding: 2vw 0 0;
}



/*全体（110px以下）
***********************************************************/
@media screen and (max-width:1000px) {
#sec01 .aboutbox_item {
     padding: 8vw 0;
     display: block;
}
#sec01 .aboutbox_item p:first-child {
     width: 100%;
     font-size: 18px;
}
#sec01 .aboutbox_item h3 {
     padding: 5vw 0 0;
     width: 100%;
     font-size: 28px;
     letter-spacing: 6px;
}
#sec01 .aboutbox_item h3 + p {
     padding: 6vw 0 0;
     width: 100%;
     font-size: 20px;
}
#sec01 .aboutbox_item .dlwrap {
     padding: 4vw 0 0;
}
#sec01 .aboutbox_item dl {
     padding: 2vw 0 0;
     display: block;
     font-size: 20px;
}
#sec01 .aboutbox_item dt {
     width: auto;
}
}




/*全体（820px以下）
***********************************************************/
@media screen and (max-width:820px) {
#sec01 {
     padding: 30vw 20px 0;
}
#sec01 h2 {
     font-size: 16px;
}
#sec01 .aboutbox {
     padding: 20vw 0 0;
}
#sec02 {
     padding: 8vw 20px 0;
}
.txt_wrapper p.president {
     margin: 0;
     font-size: 18px;
}
.txt_wrapper p.president span {
     margin: 0;
     font-size: 16px;
     display: block;
}
.txt_wrapper p.txtc {
  margin: 0 auto;
  width: 40%;
  padding: 10vw 0 4vw;
}

table.outline {
     margin: 0vw 30px 0;
     width: 100%;
     box-sizing: border-box;
}
table.outline tr {
}
table.outline th {
     padding: 6vw 0 0 0;
     display: block;
}
table.outline td {
     padding: 1vw 0 0;
     display: block;
}
}
