.p-philosophy {
  background: linear-gradient(135deg, #2e3192 0%, #00adab 100%);
  color: #fff;
}
@media only screen and (max-width: 899px) {
  .p-philosophy {
    padding-block: 60px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-philosophy {
    padding-block: 7.1428571429vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-philosophy {
    padding-block: 100px;
  }
}

.p-philosophy-core {
  text-align: center;
  font-weight: 500;
  line-height: 2;
}
@media only screen and (max-width: 899px) {
  .p-philosophy-core {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-philosophy-core {
    font-size: 1.7142857143vw;
    margin-top: 3.5714285714vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-philosophy-core {
    font-size: 24px;
    font-size: 1.5rem;
    margin-top: 50px;
  }
}

@media only screen and (max-width: 899px) {
  .p-mission-cards {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-mission-cards {
    display: flex;
    gap: 2.1428571429vw;
    margin-top: 2.8571428571vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-mission-cards {
    gap: 30px;
    margin-top: 40px;
  }
}

.p-mission-card {
  background: #f8f9fa;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
@media only screen and (max-width: 899px) {
  .p-mission-card {
    padding: 25px 20px;
  }
  .p-mission-card:not(:first-child) {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-mission-card {
    flex: 1 1 100%;
    padding: 2.5vw 1.7857142857vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-mission-card {
    padding: 35px 25px;
  }
}

.p-mission-card-title {
  font-weight: bold;
  color: #2e3192;
}
@media only screen and (max-width: 899px) {
  .p-mission-card-title {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 12px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-mission-card-title {
    font-size: 1.4285714286vw;
    margin-bottom: 1.0714285714vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-mission-card-title {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 15px;
  }
}

.p-mission-card-text {
  line-height: 1.8;
}
@media only screen and (max-width: 899px) {
  .p-mission-card-text {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 900px) {
  .p-mission-card-text {
    font-size: 1.1428571429vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-mission-card-text {
    font-size: 16px;
    font-size: 1rem;
  }
}

@media only screen and (max-width: 899px) {
  .p-principle-list {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-principle-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1.4285714286vw;
    margin-top: 2.5vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-principle-list {
    gap: 20px;
    margin-top: 35px;
  }
}

.p-principle-item {
  border-left: 4px solid #d9ff00;
  background: #f8f9fa;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
@media only screen and (max-width: 899px) {
  .p-principle-item {
    padding: 20px 15px;
  }
  .p-principle-item:not(:first-child) {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-principle-item {
    flex: 0 0 calc((100% - 2.8571428571vw) / 3);
    padding: 1.7857142857vw 1.4285714286vw;
  }
  .p-principle-item:nth-child(n+4) {
    flex: 0 0 calc((100% - 1.4285714286vw) / 2);
  }
}
@media only screen and (min-width: 1400px) {
  .p-principle-item {
    flex: 0 0 calc((100% - 40px) / 3);
    padding: 25px 20px;
  }
  .p-principle-item:nth-child(n+4) {
    flex: 0 0 calc((100% - 20px) / 2);
  }
}

.p-principle-title {
  font-weight: bold;
  color: #2e3192;
}
@media only screen and (max-width: 899px) {
  .p-principle-title {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 8px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-principle-title {
    font-size: 1.2857142857vw;
    margin-bottom: 0.7142857143vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-principle-title {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 10px;
  }
}

.p-principle-text {
  line-height: 1.7;
}
@media only screen and (max-width: 899px) {
  .p-principle-text {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 900px) {
  .p-principle-text {
    font-size: 1.0714285714vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-principle-text {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.p-guideline-list {
  line-height: 1.9;
}
@media only screen and (max-width: 899px) {
  .p-guideline-list {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-guideline-list {
    font-size: 1.1428571429vw;
    margin-top: 2.5vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-guideline-list {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 35px;
  }
}
.p-guideline-list > li {
  border-left: 4px solid #2e3192;
  background: #f8f9fa;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  line-height: 1.7;
}
@media only screen and (max-width: 899px) {
  .p-guideline-list > li {
    padding: 20px 15px;
  }
  .p-guideline-list > li:not(:first-child) {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 900px) {
  .p-guideline-list > li {
    padding: 1.4285714286vw 1.7857142857vw;
  }
  .p-guideline-list > li:not(:first-child) {
    margin-top: 1.0714285714vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-guideline-list > li {
    padding: 20px 25px;
  }
  .p-guideline-list > li:not(:first-child) {
    margin-top: 15px;
  }
}

.p-slogan {
  color: #fff;
}
@media only screen and (max-width: 899px) {
  .p-slogan {
    background: url(/_assets/about/img/bg-policy_sp.png) 50% 0/cover no-repeat;
  }
}
@media print, screen and (min-width: 900px) {
  .p-slogan {
    background: url(/_assets/about/img/bg-policy_pc.png) 50% 0/cover no-repeat;
  }
}

.p-slogan-catch {
  text-align: center;
  font-weight: bold;
  margin-bottom: 0.3em;
}
@media only screen and (max-width: 899px) {
  .p-slogan-catch {
    font-size: 20px;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 900px) {
  .p-slogan-catch {
    font-size: 2vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-slogan-catch {
    font-size: 28px;
    font-size: 1.75rem;
  }
}

.p-slogan-lead {
  text-align: center;
  font-weight: bold;
}
@media only screen and (max-width: 899px) {
  .p-slogan-lead {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 900px) {
  .p-slogan-lead {
    font-size: 1.4285714286vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-slogan-lead {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.p-slogan-txt {
  margin-top: 2em;
}
@media only screen and (max-width: 899px) {
  .p-slogan-txt {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 900px) {
  .p-slogan-txt {
    font-size: 1.4285714286vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-slogan-txt {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

/*# sourceMappingURL=index.css.map */
