/* ================================================================
about
================================================================= */
section:first-child {
   width: 100%;
   height: auto;
   background-image: linear-gradient(90deg, #f5b3b4, #e3cee5);
}
.about_column {
   display: flex;
   display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   justify-content: space-between;
   position: relative;
}
.left_column {
   width: 360px;
   margin: 30px 0;
}
.left_column .about_heading1 {
   color: #fff;
   position: relative;
   padding: 40px 0 0 20px;
   font-size: 2.5rem;
}
.left_column .about_heading1:before {
   content: "about us";
   position: absolute;
   color: #ffffff;
   font-size: 6rem;
   letter-spacing: 0;
   top: -15px;
   left: 0;
   z-index: 1;
   opacity: 0.3;
}
.right_column {
   margin: 30px 0;
}
.right_column .about_heading3 {
   color: #4b4b4b;
   font-size: 4rem;
   line-height: 5.5rem;
   letter-spacing: 0.3rem;
   margin-bottom: 30px;
}
.right_column p {
    color: #4b4b4b;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.12em;
    line-height: 3.2rem;
    margin-top: 15px;
}
figure.about_image {
   position: absolute;
   bottom: -25px;
}

.about_administrator {
   position: relative;
   margin-top:50px;
}
.about_administrator .administrator_heading2 {
   color: #4b4b4b;
   position: relative;
   padding: 40px 0 0 20px;
   font-size: 2.5rem;
   z-index:2;
}
.about_administrator .administrator_heading2:before {
   content: "publisher";
   position: absolute;
   color: #cfcfcf;
   font-size: 6rem;
   letter-spacing: 0;
   top: -15px;
   left: 0;
   z-index: -1;
   opacity: 0.3;
   white-space: nowrap;
}
.profile {
   display: flex;
   display: -webkit-box;
   display: -ms-flexbox;
   display: -webkit-flex;
   margin: 50px 0;
   -webkit-box-shadow: 0 4px 16px rgb(0 0 0 / 2%), 0 20px 46px rgb(0 0 0 / 5%);
   box-shadow: 0 4px 16px rgb(0 0 0 / 1%), 0 20px 46px rgb(0 0 0 / 5%);
   padding: 40px 0;
   border-radius: 15px;
   justify-content: center;
}
figure.profile_image {
   margin-right:20px;
}
.profile_txt p {
    margin-bottom: 15px;
}
.profile_txt p:last-child {
    margin: 0;
}

@media screen and (max-width: 767px) {

/* ================================================================
SP - about
================================================================= */
   .about_column,.profile {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      flex-direction: column;
   }
   .left_column {
      width: 100%;
      margin: 30px 0 0 0;
   }
   .left_column .about_heading1 {
      text-align:center;
   }
   .left_column .about_heading1:before {
      right: 0;
   }
   .right_column .about_heading3 {
      font-size:3rem;
      line-height:5rem;
      letter-spacing: initial;
   }
   figure.about_image {
      position: initial;
      bottom: 0;
      margin: 0 auto;
   }
   figure.about_image img {
      width: 250px;
   }
   .about_administrator .administrator_heading2 {
      text-align:center;
   }
   .about_administrator .administrator_heading2:before {
      right: 0;
   }
   .profile {
      padding:20px;
      border: 1px solid #f5f5f5;
   }
   figure.profile_image {
      margin:0 0 20px 0;
      text-align:center;
   }
}