@charset "UTF-8";
@import url("https://use.typekit.net/cxz4drf.css");
main {
  width: 100%;
  overflow: hidden;
  padding: 70px 0 100px;
}

@media screen and (max-width: 480px) {
  main {
    padding: 50px 0 30px;
  }
}
.p_subttl {
  font-family: 'A1ゴシック M ', 'A1 Gothic M', 'YuGothic', 'Yu Gothic','游ゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Meiryo',sans-serif;
  font-weight: 500;
  -webkit-font-feature-settings: 'palt';
     -moz-font-feature-settings: 'palt';
          font-feature-settings: 'palt';
  letter-spacing: 0.08em;
  font-size: 2.4rem;
}

@media screen and (max-width: 480px) {
  .p_subttl {
    font-size: 2.2rem;
  }
}
.sidebar {
  margin-top: 40px;
}

.side .label {
  font-size: 1.2rem;
  line-height: 22px;
  display: inline-block;
  vertical-align: top;
  margin-right: 12px;
}
.side ul {
  display: inline-block;
  vertical-align: top;
  letter-spacing: -.4em;
}
.side li {
  display: inline-block;
  vertical-align: top;
  letter-spacing: normal;
}
.side li + li {
  margin-left: 10px;
}
.side a {
  display: block;
  text-decoration: none;
  background: #f4f4f4;
  color: #333;
  border-radius: 2px;
  padding: 0 10px;
  height: 22px;
  line-height: 22px;
  font-size: 1.2rem;
  -webkit-transition-duration: .25s;
          transition-duration: .25s;
}
.side a:not(.cu):hover {
  opacity: 0.6;
}
.side a.cu {
  background: #e85533;
  color: #fff;
}

@media screen and (max-width: 480px) {
  .sidebar {
    margin-top: 30px;
  }

  .side {
    display: block;
  }
  .side .label {
    font-size: 1rem;
    display: block;
    margin: 0 auto 5px;
  }
  .side ul {
    display: block;
    width: 90%;
    margin: 0 auto -8px;
  }
  .side li,
  .side li + li {
    margin: 0 4px 8px;
  }
}
.partner_list {
  margin: 50px auto -20px;
  width: 970px;
  letter-spacing: -.4em;
  text-align: left;
}
.partner_list li {
  display: inline-block;
  vertical-align: top;
  width: 170px;
  margin: 0 12px 20px;
}
.partner_list a, .partner_list span {
  display: block;
  width: 170px;
  height: 80px;
  text-align: center;
}
.partner_list a:before, .partner_list span:before {
  content: '';
  width: 1px;
  height: 80px;
  display: inline-block;
  vertical-align: middle;
  margin-left: -1px;
}
.partner_list img {
  letter-spacing: normal;
  max-width: 150px;
  max-height: 60px;
  vertical-align: middle;
}

@media screen and (max-width: 480px) {
  .partner_list {
    margin: 30px 4% 0;
    padding-bottom: 0;
    width: auto;
  }
  .partner_list li {
    width: 27.3%;
    margin: 0 3% 30px;
  }
  .partner_list a, .partner_list span {
    width: 100%;
    height: 40px;
  }
  .partner_list a:before, .partner_list span:before {
    height: 40px;
  }
  .partner_list img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 40px;
  }
}
