.corprate {
  max-width: 1200px;
  margin: 0 auto; }
  @media only screen and (max-width: 1400px) {
    .corprate {
      max-width: 960px; } }
  .corprate__nav {
    border-top: 1px dotted #555;
    margin: 5rem 0;
    padding-top: 4rem; }
    .corprate__nav__item {
      display: inline-block;
      width: 30%;
      position: relative;
      margin-bottom: 1rem; }
      .corprate__nav__item--active::after {
        content: "";
        width: 100%;
        height: 96%;
        opacity: 0.4;
        pointer-events: none;
        background-color: red;
        z-index: 10;
        position: absolute;
        top: 0%;
        left: 0; }
    .corprate__nav__img {
      width: 100%; }

@media only screen and (max-width: 960px) {
  .corprate__nav {
    width: 85%;
    margin: 4rem auto; }
    .corprate__nav__item {
      width: 48%; } }
.dcc__section {
  position: relative;
  margin: 5rem 0; }
  .dcc__section__ttl {
    width: fit-content;
    text-align: left;
    font-size: 2.2rem;
    font-weight: normal;
    color: darkgrey;
    position: relative; }
    .dcc__section__ttl__tag {
      font-weight: normal;
      font-size: 1.8rem;
      position: relative;
      background-color:#c0c0c0;
      text-align: center; }
    .dcc__section__ttl__sub {
      font-weight: normal;
      font-size: 1.6rem;
      position: relative;
      text-align: left; }
      .dcc__section__ttl__sub::after {
        content: "";
        left: 0;
        bottom: 0;
        width: 8rem;
        display: block;
        position: absolute;
        border-bottom: 2px dotted #00a6c2; }
    .dcc__section__ttl__en {
      position: absolute;
      top: 0;
      font-weight: bold;
      white-space: nowrap;
      color: #00a6c2;
      font-size: 0.7rem;
      letter-spacing: -1px;
      font-style: italic; }
    .dcc__section__ttl::before {
      content: "";
      display: block;
      position: absolute;
      left: 0px;
      bottom: 0;
      width: 2rem;
      border-bottom: 2px solid #00a6c2; }
    .dcc__section__ttl::after {
      content: "";
      left: 10px;
      bottom: 0;
      width: 8rem;
      display: block;
      position: absolute;
      border-bottom: 2px dotted #00a6c2; }
  .dcc__section__txt {
    font-size: 0.8rem;
    text-align: left; }

@media only screen and (max-width: 960px) {
  .dcc__section {
    width: 85%;
    margin: 4rem auto; }
    .dcc__section__txt {
      font-size: 1rem; } }
@media only screen and (max-width: 640px) {
  .dcc__section {
    margin: 4rem auto; }
    .dcc__section__ttl__en {
      position: relative; } }
.philosophy__list {
  margin: 1rem 2rem;
  font-size: large;
 }
  .philosophy__list li {
    font-weight: bold;
    margin-bottom: 1rem; }
.philosophy__txt--red {
  color: #c10014; }

.philosophy__norm {
    margin-left: 2rem;
    margin-top: 1rem;
    font-weight: bold;
    font-size: large;
  }
  .philosophy__norm li {
      margin-bottom: 1rem; }
.philosophy__norm2 {
    margin-left: 4rem; }

.philosophy__vision {
   width: 80%;
   margin: 0 auto;
}
.philosophy__vision__ttl {
  font-weight: bold;
  font-size: larger;
  margin-bottom: 1rem;
  text-align: center;
  color: red;
  background-color: #eeeeee;
}
.philosophy__vision__list {
  text-align: left;
  margin-top: 2rem;
  font-size: 1rem;
  font-weight: bold;
}

.vision__wrapper {
  margin-bottom: 4rem; }
.vision__left {
  width: 40%; }
.vision__right {
  width: 50%;
  position: relative; }
  .vision__right__box {
    height: 6rem;
    width: 12rem;
    align-items: center;
    display: flex;
    position: absolute;
    animation: move 3s ease-in-out infinite; }
@keyframes move {
  0% {
    transform: translateY(0); }
  25% {
    transform: translateY(-5px); }
  75% {
    transform: translateY(5px); }
  100% {
    transform: translateY(0); } }
    .vision__right__box::after {
      content: "";
      position: absolute;
      left: -20%;
      top: 0;
      border: 1px solid #00a6c2;
      transform: skewX(-20deg);
      height: 6rem;
      width: 12rem;
      box-shadow: 0 0 10px #555; }
    .vision__right__box--ttl {
      margin-left: 30%; }
    .vision__right__box--left {
      left: -10%;
      top: 0;
      animation-delay: 0s; }
    .vision__right__box--middle {
      bottom: -10%;
      left: 20%;
      animation-delay: 2s; }
    .vision__right__box--right {
      padding-left: 1rem;
      right: -3%;
      top: 20%;
      animation-delay: 1s; }
.vision__list {
  margin: 1rem 4rem; }
  .vision__list--hypen li {
    position: relative;
    font-weight: bold; }
    .vision__list--hypen li::before {
      position: absolute;
      left: -15px;
      content: "-"; }
  .vision__list--disc {
    list-style: disc; }

@media only screen and (max-width: 1400px) {
  .vision__left {
    width: 30%; }
  .vision__right {
    width: 50%; }
    .vision__right__box--left {
      top: 30%; }
    .vision__right__box--ttl {
      margin-left: 20%; } }
@media only screen and (max-width: 960px) {
  .vision__left {
    width: 85%; }
  .vision__right {
    width: 85%;
    min-height: 14rem; }
    .vision__right__box {
      margin-top: 3rem;
      padding-left: 2rem; }
      .vision__right__box--ttl {
        margin-left: 40%; }
      .vision__right__box--left {
        left: 0; }
      .vision__right__box--right {
        padding-left: 3rem;
        top: 5%;
        right: 0%; }
      .vision__right__box--middle {
        left: 31%;
        bottom: 15%; }
      .vision__right__box::after {
        left: 0; } }
@media only screen and (max-width: 900px) {
  .philosophy__list {
    margin: 1rem 0; }

  .vision__left {
    width: 85%; }
  .vision__list {
    margin: 0 auto;
    width: 85%;
    margin-bottom: 3rem; }
  .vision__right {
    width: 85%;
    text-align: center;
    min-height: 14rem; }
    .vision__right__box {
      position: relative;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      text-align: center;
      margin: 0 auto 2rem; }
      .vision__right__box--ttl {
        display: inline-block;
        margin-left: 0;
        margin-bottom: 3rem; } }


.philosophy__sub__ttl {
  font-size: 1.2rem;
  background-color: #E0D6D9;
  width: 100%;
  margin: 0 auto;
  padding: 10px;
  letter-spacing: 0.7rem;
}
.philosophy__space {
  margin-bottom: 20px;
}
.philosophy__motto__ttl {
  display: inline-block;
  font-size: 1.5rem;
  border-bottom: solid 3px #00a6c2;
  letter-spacing: 1rem;
  margin-bottom: 20px;
}
.philosophy__motto__parts__box {
  display:-webkit-box;
  display:-ms-flexbox;
  display: flex;
  width: 60%;
  margin: 0 auto;
  -webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
  margin-bottom: 10px;
}
.philosophy__motto__parts__wrapper {
  position: relative;
  margin: 40px auto 0;
}
.philosophy__motto__parts__bg {
  display: inline-block;
  background-color: #eeeeee;
  position: absolute;
  top: 50%;
  left: 23%;
  width: 54%;
  height: 100%;
  z-index: -1;
  padding: 20px 0;
  transform: translateY(-50%);
}
.philosophy__motto__parts {
 height:50px;
 width:50px;
 border-radius:50%;
 border: solid 3px #F99699;
 background-color: #ffffff;
 line-height:50px;
 text-align:center;
}
.philosophy__motto__parts__text {
  font-size: 1rem;
}
.philosophy__motto__text {
  font-size: 0.8rem;
  color: red;
  border: solid 1px red;
  background-color: #ffffff;
  padding: 5px;
  margin-left: 10px;
  width: 80%;
}
.philosophy__motto__triangle__wrapper {
  position: relative;
}
.philosophy__motto__triangle{
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid red;
  display: inline-block;
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.philosophy__motto__text__bottom {
  border: solid 7px #eeeeee;
  font-size: 0.8rem;
  width: 80%;
  margin: 0 auto;
  padding: 10px;
  margin: 50px auto;
}
@media screen and (min-width: 768px) and ( max-width: 900px) {
  .philosophy__motto__text {
    width: 75%;
  }
  .philosophy__motto__parts__bg {
    left: 23%;
    width: 58%;
  }
}
@media screen and (min-width: 550px) and ( max-width: 768px) {
  .philosophy__motto__text {
    width: 75%;
  }
  .philosophy__motto__parts__box {
    width: 62%;
  }
  .philosophy__motto__parts__bg {
    left: 23%;
    width: 59%;
  }
}
@media only screen and (max-width: 550px) {
  .philosophy__sub__ttl {
    font-size: 1.3rem;
    width: 95%;
    letter-spacing: 0.3rem;
  }
  .philosophy__motto__ttl {
    font-size: 1.3rem;
    letter-spacing: 0.3rem;
  }
  .philosophy__motto__parts__box {
    width: 100%;
  }
  .philosophy__motto__text {
    width: 69%;
  }
  .philosophy__motto__parts__bg {
    left: 7%;
    width: 93%;
  }
  .philosophy__motto__text__bottom {
    width: 90%;
  }
}