.company {
  padding: 0 20px;
  margin: 109px 0 0;
}
@media (max-width: 767px) {
  .company {
    padding: 0 5.33vw;
    margin: 29.07vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company {
    padding: 0;
    margin: 32px 0 0;
  }
}
.company-philosophy {
  padding-bottom: 120px;
}
.company-philosophy .c-subtitle {
  margin: 27px 0 0;
}
.company-philosophy .c-text {
  margin: 22px 0 0;
}
.company-philosophy .c-text + .c-text {
  margin: 24px 0 0;
}
.company-philosophy__image {
  position: relative;
  z-index: 1;
  margin: 60px 0 0;
  border-radius: 40px 0 40px 0;
  overflow: hidden;
}
.company-philosophy__president {
  margin: 32px 0 0;
  text-align: right;
  color: var(--color-black01);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
@media (max-width: 767px) {
  .company-philosophy {
    padding-bottom: 32vw;
  }
  .company-philosophy .c-subtitle {
    margin: 7.2vw 0 0;
  }
  .company-philosophy .c-text {
    margin: 5.87vw 0 0;
  }
  .company-philosophy .c-text + .c-text {
    margin: 6.4vw 0 0;
  }
  .company-philosophy__image {
    margin: 16vw 0 0;
    border-radius: 10.67vw 0 10.67vw 0;
  }
  .company-philosophy__president {
    margin: 8.53vw 0 0;
    font-size: 4.27vw;
  }
}
@media screen and (min-width: 768px), print {
  .company-philosophy {
    padding-bottom: 120px;
  }
  .company-philosophy .c-subtitle {
    margin: 56px 0 0;
  }
  .company-philosophy .c-text {
    margin: 38px 0 0;
  }
  .company-philosophy .c-text + .c-text {
    margin: 24px 0 0;
  }
  .company-philosophy__image {
    margin: 80px 0 0;
    border-radius: 120px 0 120px 0;
  }
  .company-philosophy__president {
    margin: 48px 0 0;
  }
}
.company-values {
  padding-bottom: 120px;
}
.company-values__row {
  margin: 36px 0 0;
}
.company-values__image {
  width: 200px;
  margin: 0 auto;
}
.company-values__block {
  margin: 24px 0 0;
}
.company-values__subtitle {
  white-space: nowrap;
}
.company-values__list {
  margin: -3px 0 0;
}
.company-values__list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 8px;
  padding: 16px 0 15px;
  border-bottom: 1px solid var(--color-grey02);
}
.company-values__list li span {
  color: var(--color-orange01);
  font-family: var(--wf-helvetica);
}
@media (max-width: 767px) {
  .company-values {
    padding-bottom: 32vw;
  }
  .company-values__row {
    margin: 9.6vw 0 0;
  }
  .company-values__image {
    width: 53.33vw;
  }
  .company-values__block {
    margin: 6.4vw 0 0;
  }
  .company-values__list {
    margin: -0.8vw 0 0;
  }
  .company-values__list li {
    gap: 2.13vw;
    padding: 4.27vw 0 4vw;
  }
}
@media screen and (min-width: 768px), print {
  .company-values {
    padding-bottom: 120px;
  }
  .company-values__row {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 64px;
    margin: 66px 0 0;
  }
  .company-values__image {
    flex: 0 0 200px;
    width: 200px;
    margin: 0;
  }
  .company-values__block {
    flex: 0 0 496px;
    width: 496px;
    margin: -10px 0 0;
  }
  .company-values__list {
    margin: 6px 0 0;
  }
  .company-values__list li {
    gap: 16px;
  }
}
.company-brand {
  padding-bottom: 120px;
}
.company-brand__text {
  margin: 29px 0 0;
}
.company-brand__area {
  margin: 24px -20px 0;
}
.company-brand__area .p-scroll-area__arrow {
  top: -40px;
}
.company-brand__area .p-scroll-area__contents {
  padding: 0 20px;
}
.company-brand__image {
  width: 760px;
}
@media (max-width: 767px) {
  .company-brand {
    padding-bottom: 32vw;
  }
  .company-brand__text {
    margin: 7.73vw 0 0;
  }
  .company-brand__area {
    margin: 6.4vw -5.33vw 0;
  }
  .company-brand__area .p-scroll-area__arrow {
    top: -10.67vw;
  }
  .company-brand__area .p-scroll-area__contents {
    padding: 0 5.33vw;
  }
  .company-brand__image {
    width: 202.67vw;
  }
}
@media screen and (min-width: 768px), print {
  .company-brand {
    padding-bottom: 120px;
  }
  .company-brand__text {
    margin: 58px 0 0;
  }
  .company-brand__area {
    margin: 40px 0 0;
  }
  .company-brand__area .p-scroll-area__contents {
    padding: 0;
  }
}
.company-quality {
  padding-bottom: 113px;
}
.company-quality__text {
  margin: 29px 0 0;
}
.company-quality__row {
  margin: 31px 0 0;
}
.company-quality__block + .company-quality__block {
  margin: 29px 0 0;
}
.company-quality__subtitle + .company-quality__text {
  margin: 11px 0 0;
  line-height: 36px;
}
.company-quality__list li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.company-quality__list li + li {
  margin: 4px 0 0;
}
.company-quality__subtitle + .company-quality__list {
  margin: 13px 0 0;
}
@media (max-width: 767px) {
  .company-quality {
    padding-bottom: 30.13vw;
  }
  .company-quality__text {
    margin: 7.73vw 0 0;
  }
  .company-quality__row {
    margin: 8.27vw 0 0;
  }
  .company-quality__block + .company-quality__block {
    margin: 7.73vw 0 0;
  }
  .company-quality__subtitle + .company-quality__text {
    margin: 2.93vw 0 0;
    line-height: 9.6vw;
  }
  .company-quality__list li + li {
    margin: 1.07vw 0 0;
  }
  .company-quality__subtitle + .company-quality__list {
    margin: 3.47vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company-quality {
    padding-bottom: 385px;
  }
  .company-quality__text {
    margin: 58px 0 0;
  }
  .company-quality__row {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 62px;
    margin: 39px 0 0;
  }
  .company-quality__block + .company-quality__block {
    margin: 0;
  }
}
.company-profile {
  padding-bottom: 118px;
}
.company-profile__list {
  margin: 6px 0 0;
}
.company-profile__list .p-dl__box .c-map-link {
  margin: 7px 0 0;
}
.company-profile__list .p-dl__box .c-text {
  margin: 7px 0 0;
}
.company-profile__list .p-dl__box .c-text + .c-text {
  margin: 0;
}
@media (max-width: 767px) {
  .company-profile {
    padding-bottom: 31.47vw;
  }
  .company-profile__list {
    margin: 1.6vw 0 0;
  }
  .company-profile__list .p-dl__box .c-map-link {
    margin: 1.87vw 0 0;
  }
  .company-profile__list .p-dl__box .c-text {
    margin: 1.87vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company-profile {
    padding-bottom: 120px;
  }
  .company-profile__list {
    margin: 26px 0 0;
  }
  .company-profile__list .p-dl__box {
    margin: -7px 0 0;
  }
  .company-profile__list .p-dl__box .c-map-link {
    margin: 7px 0 0;
  }
  .company-profile__list .p-dl__box .c-text {
    margin: 7px 0 0;
  }
  .company-profile__list .p-dl__box .c-text + .c-text {
    margin: 0;
  }
  .company-profile__list .p-dl__box + .p-dl__box {
    margin: 32px 0 0;
  }
}
.company-organization_chart {
  padding-bottom: 120px;
}
.company-organization_chart__area {
  margin: 37px -20px 0;
}
.company-organization_chart__area .p-scroll-area__arrow {
  top: -40px;
  right: -20px;
}
.company-organization_chart__area .p-scroll-area__contents {
  padding: 0 20px;
}
.company-organization_chart__image {
  display: block;
  width: 698px;
}
@media (max-width: 767px) {
  .company-organization_chart {
    padding-bottom: 32vw;
  }
  .company-organization_chart__area {
    margin: 9.87vw -5.33vw 0;
  }
  .company-organization_chart__area .p-scroll-area__arrow {
    top: -10.67vw;
    right: -5.33vw;
  }
  .company-organization_chart__area .p-scroll-area__contents {
    padding: 0 5.33vw;
  }
  .company-organization_chart__image {
    width: 186.13vw;
  }
}
@media screen and (min-width: 768px), print {
  .company-organization_chart {
    padding-bottom: 120px;
  }
  .company-organization_chart__area {
    margin: 66px 0 0;
  }
  .company-organization_chart__area .p-scroll-area__contents {
    padding: 0;
  }
  .company-organization_chart__image {
    width: 760px;
  }
}
.company-history {
  padding-bottom: 120px;
}
.company-history__list {
  margin: 5px 0 0;
}
@media (max-width: 767px) {
  .company-history {
    padding-bottom: 32vw;
  }
  .company-history__list {
    margin: 1.33vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company-history {
    padding-bottom: 120px;
  }
  .company-history__list {
    margin: 26px 0 0;
  }
  .company-history__list .p-dl__dt {
    padding: 32px 11px 31px;
  }
}
.company-affiliated_company {
  padding-bottom: 118px;
}
.company-affiliated_company__subtitle {
  margin: 28px 0 0;
}
.company-affiliated_company__list {
  margin: 6px 0 0;
}
.company-affiliated_company__list .p-dl__line:nth-of-type(1) {
  padding-bottom: 32px;
}
.company-affiliated_company__list + .company-affiliated_company__subtitle {
  margin: 38px 0 0;
}
.company-affiliated_company__link {
  margin: 10px 0 0;
}
.company-affiliated_company__link .c-map-link {
  font-family: var(--wf-yugo);
}
.company-affiliated_company__link + .company-affiliated_company__link {
  margin: 14px 0 0;
}
@media (max-width: 767px) {
  .company-affiliated_company {
    padding-bottom: 31.47vw;
  }
  .company-affiliated_company__subtitle {
    margin: 7.47vw 0 0;
  }
  .company-affiliated_company__list {
    margin: 1.6vw 0 0;
  }
  .company-affiliated_company__list .p-dl__line:nth-of-type(1) {
    padding-bottom: 8.53vw;
  }
  .company-affiliated_company__list + .company-affiliated_company__subtitle {
    margin: 10.13vw 0 0;
  }
  .company-affiliated_company__link {
    margin: 2.67vw 0 0;
  }
  .company-affiliated_company__link + .company-affiliated_company__link {
    margin: 3.73vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company-affiliated_company {
    padding-bottom: 120px;
  }
  .company-affiliated_company__subtitle {
    margin: 56px 0 0;
  }
  .company-affiliated_company__list {
    margin: 6px 0 0;
  }
  .company-affiliated_company__list .p-dl__line:nth-of-type(1) {
    padding-bottom: 0;
  }
  .company-affiliated_company__list .p-dl__line:nth-of-type(1) .p-dl__dt,
  .company-affiliated_company__list .p-dl__line:nth-of-type(1) .p-dl__dd {
    padding-bottom: 39px;
  }
  .company-affiliated_company__list + .company-affiliated_company__subtitle {
    margin: 70px 0 0;
  }
}
.company-epc_japan {
  padding-bottom: 118px;
}
.company-epc_japan__image {
  margin: 37px 0 0;
}
.company-epc_japan__image img {
  width: 200px;
  margin: 0 auto;
}
.company-epc_japan__text {
  margin: 24px -1px 0 0;
}
.company-epc_japan__list {
  margin: 8px 0 0;
}
.company-epc_japan__list .p-dl__line {
  padding-bottom: 30px;
}
.company-epc_japan__link {
  margin: 12px 0 0;
}
.company-epc_japan__link .c-map-link {
  font-family: var(--wf-yugo);
}
@media (max-width: 767px) {
  .company-epc_japan {
    padding-bottom: 31.47vw;
  }
  .company-epc_japan__image {
    margin: 9.87vw 0 0;
  }
  .company-epc_japan__image img {
    width: 53.33vw;
  }
  .company-epc_japan__text {
    margin: 6.4vw -0.27vw 0 0;
  }
  .company-epc_japan__list {
    margin: 2.13vw 0 0;
  }
  .company-epc_japan__list .p-dl__line {
    padding-bottom: 8vw;
  }
  .company-epc_japan__link {
    margin: 3.2vw 0 0;
  }
}
@media screen and (min-width: 768px), print {
  .company-epc_japan {
    padding-bottom: 120px;
  }
  .company-epc_japan__image {
    margin: 66px 0 0;
  }
  .company-epc_japan__image img {
    margin: 0;
  }
  .company-epc_japan__text {
    margin: 32px 0 0;
  }
  .company-epc_japan__list {
    margin: 32px 0 0;
  }
  .company-epc_japan__list .p-dl__line {
    padding-bottom: 0;
  }
  .company-epc_japan__list .p-dl__dt,
  .company-epc_japan__list .p-dl__dd {
    padding-bottom: 37px;
  }
}
.company-access {
  padding-bottom: 112px;
}
.company-access__block {
  margin: 28px 0 0;
}
.company-access__block + .company-access__block {
  margin: 31px 0 0;
}
.company-access__map {
  height: 189px;
  margin: 14px 0 0;
}
.company-access__map iframe {
  width: 100%;
  height: 100%;
}
.company-access__address {
  margin: 15px 0 0;
  color: var(--color-black01);
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
@media (max-width: 767px) {
  .company-access {
    padding-bottom: 29.87vw;
  }
  .company-access__block {
    margin: 7.47vw 0 0;
  }
  .company-access__block + .company-access__block {
    margin: 8.27vw 0 0;
  }
  .company-access__map {
    height: 50.4vw;
    margin: 3.73vw 0 0;
  }
  .company-access__address {
    margin: 4vw 0 0;
    font-size: 4.27vw;
  }
}
@media screen and (min-width: 768px), print {
  .company-access {
    padding-bottom: 120px;
  }
  .company-access__block {
    margin: 56px 0 0;
  }
  .company-access__block + .company-access__block {
    margin: 62px 0 0;
  }
  .company-access__map {
    height: 428px;
    margin: 22px 0 0;
  }
  .company-access__address {
    margin: 24px 0 0;
  }
}
