*, *::before, *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

*:focus {
  outline: none; }

address {
  font-style: normal; }

.test {
  height: 500px;
  margin-left: auto;
  margin-right: auto; }
  @media (min-width: 200px) and (max-width: 1920px) {
    .test {
      background-color: blue; } }

.mainArea {
  padding: 0; }

.outerWrap {
  padding-top: 100px; }
  @media (max-width: 1180px) {
    .outerWrap {
      padding-top: 51px; } }

.sideMenuBox {
  position: relative;
  margin-bottom: 100px; }
  @media (max-width: 1640px) {
    .sideMenuBox {
      margin-bottom: 50px; } }
  @media (max-width: 640px) {
    .sideMenuBox {
      margin-bottom: 30px; } }
  .sideMenuBox::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    z-index: -1;
    background-color: #eaeaea; }
    @media (max-width: 767px) {
      .sideMenuBox::after {
        display: none; } }

@media (max-width: 640px) {
  .sideMenuList.flexRow {
    display: none; } }

.topTitleBox {
  width: 100%;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 55px;
  padding-top: 70px;
  padding-left: 20px;
  padding-right: 20px; }
  @media (max-width: 1440px) {
    .topTitleBox {
      padding-top: 30px;
      margin-bottom: 30px; } }
  @media (max-width: 767px) {
    .topTitleBox {
      margin-bottom: 20px; } }

.partnerList > li {
  margin-bottom: 100px; }
  @media (max-width: 1640px) {
    .partnerList > li {
      margin-bottom: 50px; } }
  @media (max-width: 640px) {
    .partnerList > li {
      margin-bottom: 25px; } }
  .partnerList > li:not(:last-child) {
    padding-bottom: 100px;
    border-bottom: 1px solid #eaeaea; }
    @media (max-width: 1640px) {
      .partnerList > li:not(:last-child) {
        padding-bottom: 50px; } }
    @media (max-width: 640px) {
      .partnerList > li:not(:last-child) {
        padding-bottom: 25px; } }
  @media (min-width: 961px) {
    .partnerList > li:nth-child(even) .item {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .partnerList > li:nth-child(even) .listDateBox {
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end; }
    .partnerList > li:nth-child(even) .right {
      padding-left: 0;
      padding-right: 70px;
      -webkit-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end; }
    .partnerList > li:nth-child(even) .title {
      text-align: right; }
    .partnerList > li:nth-child(even) .companyLogo {
      left: auto;
      right: -200px; }
    .partnerList > li:nth-child(even) .infoTitle {
      padding-left: 0;
      padding-right: 85px;
      text-align: right; }
      .partnerList > li:nth-child(even) .infoTitle::before {
        left: auto;
        right: 0; }
    .partnerList > li:nth-child(even) .textList > li {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .partnerList > li:nth-child(even) .textTitle {
      margin-right: 0;
      margin-left: 25px; } }

.partnerList .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 960px) {
    .partnerList .item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      max-width: 640px;
      margin-left: auto;
      margin-right: auto; } }

.partnerList .Img {
  width: 45%;
  margin-bottom: 35px; }
  @media (max-width: 960px) {
    .partnerList .Img {
      width: 100%;
      margin-bottom: 20px; } }
  .partnerList .Img img {
    display: block;
    width: 100%; }

.partnerList .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 55%;
  padding-left: 70px;
  padding-top: 40px; }
  @media (max-width: 960px) {
    .partnerList .right {
      width: 100%;
      padding-left: 0;
      padding-top: 0; } }

.partnerList .listDateBox {
  margin-bottom: 10px; }

.partnerList .title {
  display: block;
  padding-bottom: 5px;
  font-weight: 400;
  font-size: 18px;
  letter-spacing: .02em; }

.partnerList .note {
  margin-bottom: 20px;
  font-size: 14px;
  letter-spacing: .02em;
  color: #999; }

.partnerList .info {
  position: relative; }
  @media (max-width: 960px) {
    .partnerList .info {
      padding-left: 150px; } }
  @media (max-width: 480px) {
    .partnerList .info {
      padding-left: 0; } }

.partnerList .companyLogo {
  position: absolute;
  left: -200px;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 160px;
  height: 160px;
  padding: 10px;
  overflow: hidden;
  background-color: #fff;
  -webkit-box-shadow: 0px 0px 16px 0px rgba(4, 4, 4, 0.07);
  box-shadow: 0px 0px 16px 0px rgba(4, 4, 4, 0.07); }
  @media (max-width: 960px) {
    .partnerList .companyLogo {
      left: 0;
      bottom: auto;
      top: 0;
      width: 120px;
      height: 120px;
      padding: 15px; } }
  @media (max-width: 480px) {
    .partnerList .companyLogo {
      display: none; } }
  .partnerList .companyLogo img {
    display: block;
    max-width: 100%;
    max-height: 100%; }

.infoTitle {
  position: relative;
  margin-bottom: 8px;
  padding-left: 85px;
  font-size: 12px;
  letter-spacing: .06em;
  color: #888; }
  .infoTitle::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -0.5px;
    width: 60px;
    height: 1px;
    background-color: #eaeaea; }

.textList > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 13px;
  color: #888;
  padding-top: 5px;
  padding-bottom: 5px; }

.textList a {
  color: #888; }
  .textList a:hover {
    color: #df7475; }

.textList .link {
  text-decoration: underline; }

.textTitle {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 60px;
  margin-right: 25px;
  font-weight: 300;
  letter-spacing: .08em; }

.textData {
  letter-spacing: .02em;
  word-break: break-all; }

.topInfoArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  background-color: #fafafa; }
  @media (max-width: 1180px) {
    .topInfoArea {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }
  .topInfoArea .right {
    width: 38%;
    padding-left: 4%;
    padding-top: 5%;
    padding-right: calc((100vw - 1400px) / 2); }
    @media (max-width: 1180px) {
      .topInfoArea .right {
        position: relative;
        width: 100%;
        padding: 20px 20px 20px 140px; } }
    @media (max-width: 480px) {
      .topInfoArea .right {
        padding-left: 20px; } }
  .topInfoArea .companyLogo {
    margin-bottom: 30px; }
    @media (max-width: 1180px) {
      .topInfoArea .companyLogo {
        position: absolute;
        left: 20px;
        top: 20px;
        width: 120px; } }
    @media (max-width: 480px) {
      .topInfoArea .companyLogo {
        display: none; } }
    .topInfoArea .companyLogo img {
      display: block;
      max-width: 100px; }
  .topInfoArea .note {
    font-weight: 300;
    line-height: 1.6;
    font-size: 14px;
    letter-spacing: .02em;
    color: #888; }
  .topInfoArea .infoTitle {
    margin-top: 55px; }
    @media (max-width: 1180px) {
      .topInfoArea .infoTitle {
        margin-top: 20px; } }
  .topInfoArea .textList {
    margin-bottom: 20px; }

.mainTitle {
  padding-bottom: 8px;
  font-size: 18px;
  letter-spacing: .08em;
  color: #505761; }

.contentBox {
  margin-bottom: 90px; }
  @media (max-width: 960px) {
    .contentBox {
      margin-bottom: 30px; } }

.goPageList {
  margin-top: 0;
  margin-bottom: 60px; }
  .goPageList::before {
    top: auto;
    bottom: -30px; }

.albumArea {
  position: relative;
  width: 62%; }
  @media (max-width: 1180px) {
    .albumArea {
      width: 100%; } }
  .albumArea .box {
    position: absolute;
    right: 0;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .albumArea .countBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 20px;
    font-size: 12px;
    list-style-position: .04em;
    font-weight: 300;
    color: #fff; }
    .albumArea .countBox .line {
      margin-left: 5px;
      margin-right: 5px; }

.albumList .Img img {
  display: block;
  width: 100%; }

.topTitleInsBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 75px; }
  @media (max-width: 960px) {
    .topTitleInsBox {
      padding-top: 40px; } }
  .topTitleInsBox .titleBox2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .topTitleInsBox .titleBox2 .title {
      font-size: 14px;
      color: #505761; }
    .topTitleInsBox .titleBox2 .en {
      font-size: 14px;
      letter-spacing: .05em; }
  .topTitleInsBox .articleTitle {
    width: 100%;
    padding-top: 30px;
    padding-bottom: 15px;
    margin-bottom: 55px;
    border-bottom: 1px solid #ebebeb;
    font-size: 19px;
    letter-spacing: .02em;
    color: #444; }
    @media (max-width: 960px) {
      .topTitleInsBox .articleTitle {
        margin-bottom: 30px; } }

.partnerActiveList {
  font-size: 14px;
  letter-spacing: .02em;
  color: #666; }
  .partnerActiveList .itemList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media (max-width: 767px) {
      .partnerActiveList .itemList {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; } }
  .partnerActiveList .title {
    font-size: 13px;
    letter-spacing: .02em;
    color: #888; }
  .partnerActiveList .box:not(:last-child) {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #ebebeb; }
  .partnerActiveList .dateBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    color: #888;
    margin-bottom: 12px; }
    @media (max-width: 480px) {
      .partnerActiveList .dateBox {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }
    .partnerActiveList .dateBox .date {
      position: relative; }
      .partnerActiveList .dateBox .date:nth-of-type(1) {
        padding-right: 50px; }
        .partnerActiveList .dateBox .date:nth-of-type(1)::after {
          content: '';
          position: absolute;
          right: 15px;
          top: 15px;
          width: 20px;
          height: 1px;
          background-color: #cfcfcf; }
    .partnerActiveList .dateBox .md {
      font-weight: 300;
      font-size: 25px;
      line-height: 1.2; }
    .partnerActiveList .dateBox .year {
      font-size: 13px; }
    .partnerActiveList .dateBox .note {
      margin-left: 17px;
      padding: 3px 8px;
      border: 1px solid #dcdcdc;
      font-size: 14px;
      letter-spacing: .02em; }
      @media (max-width: 480px) {
        .partnerActiveList .dateBox .note {
          width: 100%;
          margin-left: 0;
          margin-top: 10px; } }
  .partnerActiveList .left {
    width: 45%;
    padding-right: 60px; }
    @media (max-width: 1180px) {
      .partnerActiveList .left {
        padding-right: 20px; } }
    @media (max-width: 767px) {
      .partnerActiveList .left {
        width: 100%;
        padding-right: 0;
        padding-bottom: 20px; } }
  .partnerActiveList .right {
    width: 55%; }
    @media (max-width: 767px) {
      .partnerActiveList .right {
        width: 100%; } }
    .partnerActiveList .right img {
      display: block;
      max-width: 100%; }

@media (max-width: 640px) {
  .formBox form {
    padding-left: 20px;
    padding-right: 20px; } }
