@charset "UTF-8";
/* ================================================

- タイトル

================================================ */
.m-h-ttl {
  font-size: 3.6rem;
  letter-spacing: 0.08em;
  color: #FFFFFF;
  font-family: 'Noto Sans JP';
  font-weight: 900; }

@media screen and (max-width: 767px) {
  .m-h-ttl {
    font-size: 6.4vw;
    line-height: 1.3; } }
/* ================================================

- 装飾：三角

================================================ */
.m-triangle {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  background: linear-gradient(to bottom right, rgba(255, 255, 255, 0) calc(50% - .5px), #006cb8 calc(50% + .5px)) no-repeat top left/100% 100%; }

/* ================================================

- 装飾：アロー白

================================================ */
.m-arrow-w {
  content: '';
  position: absolute;
  bottom: 31px;
  right: 20px;
  display: inline-block;
  width: 33px;
  height: 7px;
  -webkit-transform: skewX(45deg);
          transform: skewX(45deg);
  border-right: 2px solid #FFFFFF;
  border-bottom: 2px solid #FFFFFF;
  z-index: 2; }

/* ================================================

- 装飾：アロー青

================================================ */
.m-arrow-b {
  content: '';
  position: absolute;
  bottom: 31px;
  right: 20px;
  display: inline-block;
  width: 33px;
  height: 7px;
  -webkit-transform: skewX(45deg);
          transform: skewX(45deg);
  border-right: 2px solid #006cb8;
  border-bottom: 2px solid #006cb8; }

/* ================================================

- 装飾：ホバー

================================================ */
/* ================================================

- 社長あいさつ

================================================ */
.p-philosophy {
  background-color: #1c1c1c; }
  .p-philosophy .p-philosophy-inner {
    max-width: 1280px;
    margin: 0 auto;
    position: relative; }

.p-message {
  padding: 80px 0; }
  .p-message .p-message-ttl {
    text-align: center; }

.p-message-set {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  margin-top: 57px; }
  .p-message-set .p-message-photo {
    max-width: 440px; }
    .p-message-set .p-message-photo img {
      width: 100%;
      height: auto; }

.p-message-lead {
  width: calc(100% - 440px + 60px);
  margin-left: 60px;
  color: #FFFFFF;
  letter-spacing: 0.08em; }
  .p-message-lead .p-message-lead-catch {
    font-size: 2.2rem;
    font-weight: 700; }
  .p-message-lead .p-message-lead-txt {
    margin-top: 27px;
    font-size: 1.6rem;
    line-height: 1.5;
    font-weight: 500; }

dl.p-message-lead-sign {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-align-items: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-top: 43px; }
  dl.p-message-lead-sign dt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.08em; }
  dl.p-message-lead-sign dd {
    max-width: 160px;
    margin-left: 22px; }
    dl.p-message-lead-sign dd img {
      width: 100%;
      height: auto; }

@media screen and (max-width: 767px) {
  .p-philosophy .p-philosophy-inner {
    padding: 0 4vh; }

  .p-philosophy.p-basicinfo .p-company-cont {
    padding: 10.66666% 0 20.26666%; }

  .p-message {
    padding: 18.93333% 0 11.46666%; }

  .p-message-set {
    display: block;
    margin-top: 6.66666%; }
    .p-message-set .p-message-photo {
      max-width: 100%; }

  .p-message-lead {
    width: calc(100%);
    margin: 3.73333% auto 0; }
    .p-message-lead .p-message-lead-catch {
      font-size: 5.33333vw;
      line-height: 1.5; }
    .p-message-lead .p-message-lead-txt {
      margin-top: 5.33333%;
      font-size: 4vw;
      line-height: 1.6; }

  dl.p-message-lead-sign {
    -ms-justify-content: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-top: 9.33333%; }
    dl.p-message-lead-sign dt {
      font-size: 4.8vw; }
    dl.p-message-lead-sign dd {
      max-width: 42.4vw;
      margin-left: 6.6667vw; } }
/* ================================================

- 企業理念

================================================ */
.p-philosophy.p-main-bg {
  background: url(../../images/philosophy/bg_philosophy.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: bottom left; }
  .p-philosophy.p-main-bg .p-philosophy-inner {
    padding: 80px 0 100px; }

.p-main {
  max-width: 900px;
  margin: 0 auto;
  padding: 50px 30px;
  background-color: #FFFFFF; }
  .p-main .p-main-ttl {
    text-align: center;
    color: #1c1c1c; }
  .p-main .p-main-txt {
    margin-top: 40px;
    font-size: 1.8rem;
    line-height: 1.8;
    letter-spacing: 0.12;
    font-weight: 500;
    color: #3a3a3a;
    text-align: center; }
    .p-main .p-main-txt .p-main-line {
      padding: 25px 0;
      font-size: 2.2rem;
      line-height: 1.7;
      font-weight: 700; }
      .p-main .p-main-txt .p-main-line span {
        background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ffec6d));
        background: linear-gradient(transparent 50%, #ffec6d 50%); }

@media screen and (max-width: 767px) {
  .p-philosophy.p-main-bg {
    background: url(../../images/philosophy/bg_philosophy_sp.jpg); }
    .p-philosophy.p-main-bg .p-philosophy-inner {
      padding: 10.66666% 4vw; }

  .p-main {
    padding: 4% 4vw 8%; }
    .p-main .p-main-ttl {
      text-align: center;
      color: #1c1c1c; }
    .p-main .p-main-txt {
      margin-top: 10.66666%;
      font-size: 4vw;
      line-height: 1.6;
      text-align: center; }
      .p-main .p-main-txt .p-main-line {
        padding: 8% 0;
        font-size: 5.33333vw;
        line-height: 1.5; } }
