.main-area-company {
  display: grid;
  grid-template-columns: 49.7142857143% 50.2857142857%;
  grid-template-rows: auto auto;
  overflow: hidden;
}
@media screen and (max-width: 800px) {
  .main-area-company {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}
.main-area-company .main-bk-company {
  grid-column: 2/3;
  grid-row: 1/3;
  background-position: bottom right;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/company/company-main-bk.png);
  aspect-ratio: 704/553;
}
@media screen and (max-width: 800px) {
  .main-area-company .main-bk-company {
    grid-column: 1/2;
    grid-row: 1/2;
    background-image: url(../img/company/company-main-bk-sp.png);
    aspect-ratio: 800/310;
  }
}
.main-area-company .main-photo-obi-company {
  grid-column: 2/3;
  grid-row: 1/3;
  background-position: top left;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/company/company-main-obi02.png);
  aspect-ratio: 704/553;
}
@media screen and (max-width: 800px) {
  .main-area-company .main-photo-obi-company {
    grid-column: 1/2;
    grid-row: 1/2;
    background-image: url(../img/company/company-main-obi02-sp.png);
    aspect-ratio: 800/310;
  }
}
.main-area-company .main-orange-obi-company {
  grid-column: 2/3;
  grid-row: 1/3;
  background-position: top right;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/company/company-main-obi01.png);
  aspect-ratio: 704/553;
}
@media screen and (max-width: 800px) {
  .main-area-company .main-orange-obi-company {
    grid-column: 1/2;
    grid-row: 1/2;
    background-image: url(../img/company/company-main-obi01-sp.png);
    aspect-ratio: 800/310;
  }
}
.main-area-company .main-title-company {
  grid-column: 1/3;
  grid-row: 1/2;
}
.main-area-company .main-title-company > div {
  padding: 5% 0 0 12.1428571429%;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .main-area-company .main-title-company > div {
    grid-column: 1/2;
    grid-row: 1/2;
    padding: 8.75% 0 0 6.25%;
  }
}
.main-area-company .company-menu {
  grid-column: 1/3;
  grid-row: 2/3;
  display: flex;
  align-items: flex-end;
  z-index: 20;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu {
    grid-column: 1/2;
    grid-row: 2/3;
  }
}
.main-area-company .company-menu > div {
  width: 100%;
  background-position: bottom right;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/company/company-main-menubk.png);
  aspect-ratio: 1400/70;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div {
    width: 100%;
    background-image: none;
    background-color: white;
  }
}
.main-area-company .company-menu > div > div {
  padding-top: 1.4285714286%;
  padding-right: 20%;
  padding-bottom: 1.4285714286%;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div {
    padding-top: 20px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
  }
}
.main-area-company .company-menu > div > div > ul {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul {
    justify-content: center;
    flex-wrap: nowrap;
  }
}
.main-area-company .company-menu > div > div > ul > li {
  padding-right: 2.8571428571%;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul > li {
    padding-right: 5px;
    padding-left: 0;
  }
}
.main-area-company .company-menu > div > div > ul > li .company-link-item {
  display: flex;
}
.main-area-company .company-menu > div > div > ul > li .company-link-item .nav-icon {
  width: 36px;
  background-position: bottom left;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/common/nav-link-icon.png);
  aspect-ratio: 36/30;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul > li .company-link-item .nav-icon {
    width: 20px;
    background-image: url(../img/common/nav-link-icon-sp.png);
    aspect-ratio: 34/31;
  }
}
.main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt {
  padding-top: 8px;
  padding-left: 0.7142857143vw;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt {
    padding-top: 0;
    padding-left: 0;
  }
}
.main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt > p {
  font-size: 14px;
  font-weight: 700;
  color: #d25926;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt > p {
    padding-left: 5px;
    font-size: 12px;
  }
}
.main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt > p > span {
  font-size: 11px;
  color: black;
  padding-left: 5px;
}
@media screen and (max-width: 800px) {
  .main-area-company .company-menu > div > div > ul > li .company-link-item .nav-txt > p > span {
    padding-left: 10px;
    font-size: 10px;
  }
}
.main-area-company .company-menu > div > div > ul > li:last-child {
  padding-right: 0;
}

.message-area {
  display: grid;
  grid-template-columns: 24.2857142857% 1fr;
  grid-template-rows: auto auto;
  overflow: hidden;
}
@media screen and (max-width: 800px) {
  .message-area {
    grid-template-columns: auto;
    grid-template-rows: auto;
  }
}
.message-area .m-bk {
  grid-column: 1/2;
  grid-row: 1/2;
  background-position: bottom right;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/company/message-bk.png);
  aspect-ratio: 340/272;
}
@media screen and (max-width: 800px) {
  .message-area .m-bk {
    grid-column: 1/2;
    grid-row: 1/2;
    background-image: url(../img/company/message-bk-sp.png);
    aspect-ratio: 800/413;
  }
}
/*.message-area .m-ph {
  grid-column: 2/3;
  grid-row: 1/3;
  background-position: bottom right;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/management/management-bk.png);
  aspect-ratio: 1061/455;
}
@media screen and (max-width: 800px) {
  .message-area .m-ph {
    grid-column: 1/2;
    grid-row: 1/2;
    background-image: url(../img/management/management-bk-sp.png);
    aspect-ratio: 800/413;
  }
}*/
.message-area .m-title {
  grid-column: 1/3;
  grid-row: 2/3;
  position: relative;
}
@media screen and (max-width: 800px) {
  .message-area .m-title {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
@media screen and (max-width: 800px) {
  .message-area .m-title > div {
    position: absolute;
    bottom: 2.1428571429vw;
  }
}

.company-title {
  width: 100%;
  padding-left: 12.7142857143vw;
  display: flex;
  align-items: baseline;
  overflow: hidden;
}
@media screen and (max-width: 800px) {
  .company-title {
    padding-left: 6.25vw;
  }
}
.company-title .title-icon {
  width: 46px;
  aspect-ratio: 46/59;
}
@media screen and (max-width: 800px) {
  .company-title .title-icon {
    width: 28px;
  }
}
.company-title .title-txt > p:nth-child(1) {
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 700;
  color: #d25926;
  padding-left: 10px;
}
@media screen and (max-width: 800px) {
  .company-title .title-txt > p:nth-child(1) {
    font-size: 20px;
  }
}
.company-title .title-txt > p:nth-child(2) {
  font-family: oswald;
  font-size: 14px;
  color: #a9a9a9;
  padding-left: 10px;
}
@media screen and (max-width: 800px) {
  .company-title .title-txt > p:nth-child(2) {
    font-size: 13px;
  }
}

.company01-title {
  padding: 80px 0 30px 0;
}
.company01-title > p {
  font-size: 24px;
  font-weight: bold;
  color: #d25926;
  line-height: 1.4;
}
@media screen and (max-width: 800px) {
  .company01-title > p {
    font-size: 20px;
  }
}

.company01-name > p {
  font-size: 14px;
  text-align: right;
}

.company01-txtarea {
  padding: 30px 0 80px 0;
}

.company02-table {
  width: 100%;
  border-collapse: collapse;
  margin: 30px 0 80px 0;
}
.company02-table tr {
  border-top: 1px solid #b2b2b2;
  border-bottom: 1px solid #b2b2b2;
}
.company02-table th {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
  box-sizing: border-box;
  text-align: left;
  padding: 10px 20px;
  vertical-align: top;
}
@media screen and (max-width: 800px) {
  .company02-table th {
    width: 100%;
    display: block;
    padding: 20px 20px 5px 20px;
  }
}
.company02-table td {
  width: auto;
  font-size: 16px;
  box-sizing: border-box;
  padding: 10px 20px 10px 0;
  vertical-align: top;
}
.company02-table td .item01 {
  display: inline-block;
  width: 150px;
}
.company02-table td .item02 {
  display: inline-block;
  width: 250px;
}
@media screen and (max-width: 800px) {
  .company02-table td {
    width: 100%;
    display: block;
    padding: 0 20px 20px 20px;
  }
}

.company03-area {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto auto;
  margin-bottom: 80px;
}
.company03-area .comany03-bk {
  grid-column: 1/2;
  grid-row: 1/3;
  background-position: top right;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../img/company/access-bk.png);
  aspect-ratio: 1400/1522;
  overflow: hidden;
}
@media screen and (max-width: 800px) {
  .company03-area .comany03-bk {
    background-image: none;
  }
}
.company03-area .company03-title-area {
  grid-column: 1/2;
  grid-row: 1/2;
  padding: 80px 0 50px 0;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-title-area {
    padding: 0 0 50px 0;
  }
}
.company03-area .company03-box {
  grid-column: 1/2;
  grid-row: 2/3;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.company03-area .company03-box > div {
  width: 64.2857142857vw;
  padding-bottom: 40px;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div {
    width: 90%;
  }
}
.company03-area .company03-box > div .company03-white-box {
  background-color: white;
  box-shadow: 0 10px 30px 10px #e7e7e7;
  padding: 3.5714285714vw;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div .company03-white-box {
    padding: 6.25vw;
  }
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-title01 {
  font-size: clamp(24px, 2vw, 28px);
  font-weight: 700;
  color: #d25926;
  padding-bottom: 5px;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-title01 {
    font-size: 20px;
  }
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-title02 {
  font-size: 16px;
  font-weight: 700;
  padding-bottom: 20px;
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box {
    display: flex;
    flex-direction: column;
  }
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map-txt {
  width: 40%;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map-txt {
    width: 100%;
  }
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map-txt > p {
  font-size: 14px;
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map-txt > p > span {
  font-weight: 700;
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map-txt > p:first-child {
  padding-bottom: 10px;
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map {
  width: 55%;
  box-sizing: border-box;
}
@media screen and (max-width: 800px) {
  .company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map {
    width: 100%;
    padding-top: 20px;
  }
}
.company03-area .company03-box > div .company03-white-box .company03-white-box-inner .map-box .map > iframe {
  width: 100%;
  max-height: 280px;
  aspect-ratio: 470/250;
}
.company03-area .company03-box > div:last-child {
  padding-bottom: 0;
}

.company04-area {
  padding: 50px 0 80px 0;
}
@media screen and (max-width: 800px) {
  .company04-area {
    padding: 30px 0 80px 0;
  }
}
.company04-area .company04-item {
  max-width: 800px;
  width: 57.1428571429%;
  aspect-ratio: 800/836;
  margin: 0 auto;
}
@media screen and (max-width: 800px) {
  .company04-area .company04-item {
    width: 85%;
  }
}

.history-area {
  width: 78.5714285714%;
  margin: 0 auto 80px auto;
  transform: translateY(-80px);
  background-color: white;
  box-shadow: 0 10px 20px 0 #e7e7e7;
}
@media screen and (max-width: 800px) {
  .history-area {
    width: 85%;
    transform: translateY(-20px);
  }
}
.history-area > div {
  padding: 50px 20px;
}
@media screen and (max-width: 800px) {
  .history-area > div {
    padding: 30px 15px;
  }
}
.history-area > div .history-title-area {
  padding: 40px 0;
}
@media screen and (max-width: 800px) {
  .history-area > div .history-title-area {
    padding: 20px 0;
  }
}
.history-area > div .history-title-area > div:nth-child(1) {
  font-size: clamp(40px, 4.2857142857vw, 50px);
  font-weight: 700;
  line-height: 1.4;
  color: #d25926;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .history-area > div .history-title-area > div:nth-child(1) {
    font-size: clamp(30px, 5vw, 40px);
  }
}
.history-area > div .history-title-area > div:nth-child(2) {
  font-size: clamp(18px, 1.4285714286vw, 20px);
  font-weight: 700;
  color: #7f7f7f;
  text-align: center;
  padding-top: 10px;
}
@media screen and (max-width: 800px) {
  .history-area > div .history-title-area > div:nth-child(2) {
    font-size: clamp(12px, 2.25vw, 18px);
  }
}
.history-area > div .history-table {
  width: 90%;
  border-collapse: collapse;
  margin: 0 auto 15px auto;
}
.history-area > div .history-table tr:nth-child(odd) {
  background-color: #fbf1ee;
}
.history-area > div .history-table tr:nth-child(even) {
  background-color: white;
}
.history-area > div .history-table th {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  font-weight: 700;
  color: #d25926;
  white-space: nowrap;
  box-sizing: border-box;
  text-align: left;
  padding: 20px;
  vertical-align: top;
}
@media screen and (max-width: 800px) {
  .history-area > div .history-table th {
    width: 100%;
    display: block;
    padding: 20px 20px 5px 20px;
  }
}
.history-area > div .history-table td {
  width: auto;
  font-size: 16px;
  box-sizing: border-box;
  padding: 20px 20px 20px 0;
  vertical-align: top;
}
@media screen and (max-width: 800px) {
  .history-area > div .history-table td {
    width: 100%;
    display: block;
    padding: 0 20px 20px 20px;
  }
}
.history-area > div .history-end {
  width: 90%;
  font-size: 16px;
  font-weight: 700;
  color: #d25926;
  margin: 0 auto;
  text-align: left;
  padding: 20px 0;
}