@charset "UTF-8";
/* ===================================
setting
=================================== */
/* font
==============================　*/
/* moda weight */
/* color
==============================　*/
/* ===================================
campaign
=================================== */
/* campaign
==============================　*/
.campaign {
  position: relative;
  overflow: hidden;
  padding-bottom: 200px;
  /* now*/
  /* list*/
  /* notice*/ }
  .campaign:before {
    content: "";
    display: block;
    position: absolute;
    top: 160px;
    right: 0;
    background: url("../img/campaign/bg_campaign.png") no-repeat;
    background-size: contain;
    width: 481px;
    height: 677.5px; }
  .campaign .inner {
    position: relative;
    max-width: 1200px;
    margin: 60px auto 0;
    padding: 0 30px; }
  .campaign .now_area {
    padding-bottom: 120px;
    border-bottom: 1px solid #000000; }
  .campaign .now_list .item a {
    display: flex;
    align-items: center; }
    .campaign .now_list .item a .thumbnail {
      width: 500px; }
    .campaign .now_list .item a + .item {
      margin-top: 50px; }
  .campaign .now_list .now_txt {
    width: calc(100% - 650px);
    margin-left: 50px; }
    .campaign .now_list .now_txt .campaign_cat {
      padding: 7px 15px;
      display: inline-block;
      background: #000000;
      font-size: 16px;
      font-weight: bold;
      letter-spacing: 0.4em;
      color: #ffffff; }
    .campaign .now_list .now_txt .title {
      font-size: 20px;
      font-weight: bold;
      margin-top: 20px;
      line-height: 1.5;
      letter-spacing: 0.3em;
      text-align: justify; }
    .campaign .now_list .now_txt .content {
      font-size: 16px;
      line-height: 2;
      letter-spacing: 0.12em;
      margin-top: 25px;
      text-align: justify; }
  .campaign .list_area {
    padding-top: 120px; }
  .campaign .list_list {
    display: flex;
    flex-wrap: wrap; }
    .campaign .list_list .item {
      width: calc((100% - 210px)/3);
      margin-left: 105px; }
    .campaign .list_list .item a {
      display: block; }
    .campaign .list_list .item:nth-of-type(3n+1) {
      margin-left: 0; }
    .campaign .list_list .thumbnail {
      height: auto; }
      .campaign .list_list .thumbnail img {
        object-fit: cover;
        font-family: 'object-fit: cover;'; }
    .campaign .list_list .list_txt .title {
      font-size: 16px;
      font-weight: bold;
      margin: 30px 0;
      line-height: 2;
      letter-spacing: 0.3em;
      text-align: justify; }
    .campaign .list_list .list_txt .content {
      font-size: 16px;
      letter-spacing: 0.12em;
      line-height: 2;
      margin: 10px 0 30px;
      text-align: justify; }
  .campaign .notice_area {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    margin-top: 140px;
    margin-right: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    background: #000000;
    color: #ffffff; }
    .campaign .notice_area:before {
      content: "NOTICE";
      position: absolute;
      top: 46%;
      left: -80px;
      color: #000000;
      transform: rotate(-90deg);
      font-size: 14px;
      letter-spacing: 0.3em;
      line-height: 1;
      font-family: "Mada", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
      font-weight: 600; }
    .campaign .notice_area .notice_img {
      margin-top: -60px;
      margin-right: -55px;
      width: 630px;
      height: 100%; }
  .campaign .notice_txt {
    width: calc(100% - 700px);
    margin-right: 75px;
    padding: 80px 0 80px 50px;
    text-align: justify; }
    .campaign .notice_txt .con_ttl {
      font-size: 20px;
      font-weight: bold;
      letter-spacing: 0.3em; }
  .campaign .notice_list {
    margin-top: 50px; }
    .campaign .notice_list .item {
      margin-left: 25px; }
      .campaign .notice_list .item + .item {
        margin-top: 40px; }
    .campaign .notice_list .title {
      position: relative;
      font-size: 16px;
      letter-spacing: 0.2em;
      line-height: 2;
      font-weight: bold; }
      .campaign .notice_list .title:before {
        content: "▶︎";
        position: absolute;
        top: 3px;
        left: -25px;
        font-size: 12px; }
    .campaign .notice_list .content {
      margin-top: 10px;
      font-size: 16px;
      line-height: 2;
      letter-spacing: 0.1em; }

@media screen and (max-width: 1350px) {
  .campaign .notice_area {
    margin-left: 70px; }
    .campaign .notice_area .notice_img {
      width: 40%;
      margin-right: 0; }
  .campaign .notice_txt {
    width: calc(100% - (40% + 30px));
    margin-right: 30px; } }
@media screen and (max-width: 1200px) {
  .campaign .list_list .item {
    width: calc((100% - 80px)/3);
    margin-left: 40px; }
  .campaign .list_list .thumbnail {
    height: auto; } }
@media screen and (max-width: 1024px) {
  .campaign .now_area {
    padding-bottom: 60px; }
  .campaign .now_list .item a .thumbnail {
    width: 40%; }
  .campaign .now_list .now_txt {
    width: calc(100% - (40% + 25px));
    margin-left: 25px; }
  .campaign .list_area {
    padding-top: 60px; } }
@media screen and (max-width: 900px) {
  .campaign .inner {
    margin-top: 120px; }

  .campaign .now_list .item a {
    display: block; }
    .campaign .now_list .item a .thumbnail {
      width: 100%;
      margin: 0 auto; }
  .campaign .now_list .now_txt {
    width: 100%;
    margin: 20px auto 0; }
  .campaign .list_list {
    display: block; }
    .campaign .list_list .item {
      width: 100%;
      margin: 0 auto !important; }
  .campaign .notice_area {
    flex-wrap: wrap; }
    .campaign .notice_area .notice_img {
      width: 70%; }
  .campaign .notice_txt {
    width: 100%;
    padding: 50px 30px 50px 50px;
    margin: 0; } }
@media screen and (max-width: 600px) {
  .campaign {
    padding-bottom: 60px; }
    .campaign:before {
      width: 336.7px;
      height: 467.25px; }
    .campaign .inner {
      margin-top: 50px; }
    .campaign .now_area {
      padding-bottom: 40px; }
    .campaign .now_list .item {
      display: block; }
      .campaign .now_list .item .thumbnail {
        width: 100%; }
      .campaign .now_list .item + .item {
        margin-top: 30px; }
    .campaign .now_list .now_txt {
      width: 100%; }
      .campaign .now_list .now_txt .campaign_cat {
        font-size: 12px; }
      .campaign .now_list .now_txt .title {
        font-size: 18px; }
      .campaign .now_list .now_txt .content {
        font-size: 14px;
        margin-top: 10px;
        line-height: 2; }
    .campaign .list_area {
      padding-top: 40px; }
    .campaign .list_list .item {
      width: 100%;
      margin: 0 auto !important; }
    .campaign .list_list .list_txt .title {
      font-size: 14px;
      margin: 15px 0; }
    .campaign .list_list .list_txt .content {
      font-size: 14px;
      line-height: 2; }
    .campaign .notice_area {
      margin-top: 60px;
      margin-left: 0; }
      .campaign .notice_area:before {
        left: -40px;
        font-size: 10px; }
      .campaign .notice_area .notice_img {
        width: 80%;
        margin-top: -30px; }
    .campaign .notice_txt {
      padding: 30px 0 30px 25px; }
      .campaign .notice_txt .con_ttl {
        font-size: 18px; }
    .campaign .notice_list {
      margin-top: 30px; }
      .campaign .notice_list .item {
        margin-left: 15px; }
        .campaign .notice_list .item + .item {
          margin-top: 20px; }
      .campaign .notice_list .title {
        font-size: 14px; }
        .campaign .notice_list .title:before {
          font-size: 10px;
          left: -15px;
          top: 3px; }
      .campaign .notice_list .content {
        font-size: 14px;
        line-height: 2; } }
_:-ms-lang(x)::-ms-backdrop, .campaign .now_list .now_txt .campaign_cat {
  padding: 10px 15px 6px; }
