main {
  background-color: #f3f3f3;
}

.privacy  {
  padding: 200px 20px 60px;
}

.privacy .inner_960 {
  padding: 55px 100px 90px;
  background-color: #FFF;
}

.privacy h1 {
  margin-bottom: 2em;
  font-size: 24px;
  text-align: center;
}

.privacy h2 {
  margin: 2.5em 0 .5em;
  font-weight: 400;
  font-size: 18px;
}

.privacy h3 {
  margin: 0 0 .5em;
  font-weight: 400;
}

.privacy p {
  margin: 0 0 .5em;
}

.privacy p.margin_bottom {
  margin: 0 0 3em;
}

.privacy .button_back {
  overflow: hidden;
  position: relative;
  display: block;
  margin: 3em auto 0;
  padding: .5em 0;
  width: 100%;
  max-width: 260px;
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  border: 1px solid #1f2a66;
  z-index: 0;
}

@media(hover: hover) {
  .privacy .button_back:hover {
    color: #FFF;
  }
}

.privacy .button_back::before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #1f2a66;
  transform: scale(0, 1);
  transform-origin: right;
  transition: 0.3s;
  z-index: -1;
}

@media(hover: hover) {
  .privacy .button_back:hover::before {
    transform: scale(1);
  }
}

.privacy .button_back::after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-bottom: solid 1.5px #1f2a66;
  border-right: solid 1.5px #1f2a66;
  transform: rotate(135deg);
  position: absolute;
  top: 3px;
  left: 20px;
  bottom: 0;
  margin: auto;
  transition: 0.3s;
}

@media(hover: hover) {
  .privacy .button_back:hover::after {
    border-bottom: solid 1.5px #FFF;
    border-right: solid 1.5px #FFF;
    left: 15px;
  }
}


/*  767px以下
=========================================================================
=========================================================================*/
@media screen and (max-width:767px) {

  .privacy {
    padding: 90px 20px 60px;
  }

  .privacy .inner_960 {
    padding: 50px 20px;
  }

  .privacy h1 {
    font-size: 18px;
  }

  .privacy h2 {
    font-size: 16px;
  }

  .privacy .button_back {
    font-size: 16px;
  }

}
