.tagline {
  background-color: #e60012;
  padding: 5px 30px;
  max-width: 300px;
  margin: 30px 0 0 auto;
  display: table; }
  @media screen and (max-width: 768px) {
    .tagline {
      max-width: 220px;
      padding: 5px 20px;
      margin: 10px 0 0 auto; } }

.otchiBnr {
  display: table;
  margin-bottom: 30px; }
  .otchiBnr a {
    position: relative;
    padding: 10px 40px 10px 20px;
    display: table-cell;
    background-color: #00AEEF;
    color: #ffffff;
    /*font-weight: bold;*/
    border-radius: 8px;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
    text-decoration: none;
    font-size: 17px; }
    .otchiBnr a:hover {
      opacity: 0.7;
      text-decoration: none; }
    .otchiBnr a:after {
      position: absolute;
      width: 20px;
      height: 20px;
      content: '';
      display: inline-block;
      top: 50%;
      right: 10px;
      transform: translateY(-50%);
      background: url("../img/icn_fw.png") no-repeat center center/100% auto; }

.projects {
  background-color: #fffaed;
  background-image: url("/projects/img/top_bg.png"), url("/projects/img/btm_bg.png");
  background-position: center top,center bottom;
  background-repeat: no-repeat,no-repeat;
  width: 100%;
  padding: 122px 0 100px; }
  @media screen and (max-width: 768px) {
    .projects {
      background-image: url("/projects/img/top_bg_sp.png"), url("/projects/img/btm_bg_sp.png");
      padding: 100px 0 50px;
      background-size: 100% auto,100% auto; } }
  .projects .pjConts {
    -js-display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: -webkit- space-between;
    justify-content: space-between;
    max-width: 900px;
    margin: 0 auto 120px;
    width: 100%; }
    @media screen and (max-width: 768px) {
      .projects .pjConts {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 auto 30px;
        width: 80%; } }
    .projects .pjConts .copyBox {
      text-align: left;
      position: relative;
      margin: 0 auto;
      max-width: 366px;
      /*width: 40.66%;*/
      font-size: 22px;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      line-height: 1.2;
      letter-spacing: 0.2em;
      align-self: flex-start; }
      @media screen and (max-width: 768px) {
        .projects .pjConts .copyBox {
          font-size: 18px; } }
      .projects .pjConts .copyBox span {
        display: inline-block;
        margin: 0 8px;
        background-color: #ffecbe;
        padding-top: 5px;
        white-space: nowrap; }
        @media screen and (max-width: 768px) {
          .projects .pjConts .copyBox span {
            margin: 0 5px; } }
    .projects .pjConts h1 {
      max-width: 500px;
      margin: 0 auto; }
      @media screen and (max-width: 768px) {
        .projects .pjConts h1 {
          max-width: 400px;
          margin: 0 auto;
          background-color: rgba(255, 250, 237, 0.6); } }
    .projects .pjConts .logo {
      max-width: 366px;
      width: 40.66%;
      align-self: flex-end;
      text-align: right; }
      @media screen and (max-width: 768px) {
        .projects .pjConts .logo {
          text-align: right;
          margin: 0 auto;
          width: 100%; }
          .projects .pjConts .logo img {
            width: 50%; } }
  .projects .msgBox {
    position: relative;
    max-width: 900px;
    margin: 0 auto 60px;
    padding: 50px 30px 40px;
    width: 90%;
    background-color: #ffffff;
    border-radius: 30px;
    border: solid 1px #cc2229; }
    @media screen and (max-width: 768px) {
      .projects .msgBox {
        margin: 0 auto 40px;
        padding: 40px 5% 30px; } }
    .projects .msgBox h2 {
      text-align: center;
      margin-bottom: 30px; }
      @media screen and (max-width: 768px) {
        .projects .msgBox h2 {
          margin-bottom: 20px; } }
    .projects .msgBox p {
      font-size: 17px;
      line-height: 2;
      margin-bottom: 1em; }
      @media screen and (max-width: 768px) {
        .projects .msgBox p {
          font-size: 14px;
          line-height: 1.8;
          text-align: left; } }
    .projects .msgBox:before, .projects .msgBox:after {
      position: absolute;
      display: block;
      top: 0;
      content: '';
      width: 100%;
      height: 100%;
      border-radius: 30px; }
    .projects .msgBox:before {
      left: 0;
      border: solid 1px #cc2229;
      transform: rotate(-0.7deg); }
    .projects .msgBox::after {
      left: 0;
      border: solid 1px #cc2229;
      transform: rotate(0.7deg); }

.btn {
  min-width: 250px;
  height: 60px;
  display: table;
  margin: 0 auto 50px; }
  .btn a {
    position: relative;
    background-color: #e60012;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    color: #ffffff;
    font-size: 16px;
    padding: 10px 30px;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
    .btn a:hover {
      text-decoration: none;
      opacity: 0.7; }
    .btn a:after {
      position: absolute;
      width: 20px;
      height: 20px;
      content: '';
      display: inline-block;
      top: 50%;
      right: 15px;
      transform: translateY(-50%);
      background: url("../img/icn_fw.png") no-repeat center center/100% auto; }
