@charset "UTF-8";
.ec-c-block {
  font-family: var(--Yu-Mincho);
  padding: 90px 0 95px; }
  .ec-c-block.act-feature__block {
    background-color: #f0f0f0; }
  .ec-c-block.act-info__block {
    background-color: #f0f0f0; }
  .ec-c-block .c-block-title {
    text-align: center; }
    .ec-c-block .c-block-title h2 {
      font-size: 36px;
      font-weight: 600; }
    .ec-c-block .c-block-title .sm-title {
      position: relative;
      font-size: 16px;
      margin-bottom: 15px; }
      .ec-c-block .c-block-title .sm-title.before_after_act::before {
        content: "＼"; }
      .ec-c-block .c-block-title .sm-title.before_after_act::after {
        content: "／"; }
  .ec-c-block .cb-wrap__items {
    margin-top: 80px; }
    .ec-c-block .cb-wrap__items .cb-item {
      width: 100%;
      background-color: #fff; }
      .ec-c-block .cb-wrap__items .cb-item .img-area {
        height: clamp(200px, 12vw, 250px); }
        .ec-c-block .cb-wrap__items .cb-item .img-area img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: left top; }
      .ec-c-block .cb-wrap__items .cb-item .summary {
        padding: 30px 20px;
        text-align: center; }
        .ec-c-block .cb-wrap__items .cb-item .summary .item-title {
          display: inline-block;
          font-size: 18px;
          font-weight: 500;
          line-height: 2; }
        .ec-c-block .cb-wrap__items .cb-item .summary .desc {
          font-size: 14px;
          line-height: 1.75; }
          .ec-c-block .cb-wrap__items .cb-item .summary .desc a {
            color: #2c4de0;
            transition: .3s ease-in-out; }
            .ec-c-block .cb-wrap__items .cb-item .summary .desc a:hover {
              color: #4e67d6;
              transition: .3s ease-in-out; }
    .ec-c-block .cb-wrap__items.cols {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      justify-content: center;
      gap: 30px; }
      .ec-c-block .cb-wrap__items.cols .cb-item {
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 4px 4px 10px #00000040; }
        .ec-c-block .cb-wrap__items.cols .cb-item .summary {
          background-color: #000;
          color: #fff; }
    .ec-c-block .cb-wrap__items.rows {
      display: block; }
      .ec-c-block .cb-wrap__items.rows .cb-item {
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: transparent;
        margin-bottom: 70px;
        gap: 30px; }
        .ec-c-block .cb-wrap__items.rows .cb-item:nth-child(even) {
          flex-direction: row-reverse; }
        .ec-c-block .cb-wrap__items.rows .cb-item .img-area {
          flex-shrink: 0;
          width: clamp(350px, 30vw, 500px);
          height: auto;
          aspect-ratio: 4/3; }
          .ec-c-block .cb-wrap__items.rows .cb-item .img-area img {
            border-radius: 10px;
            box-shadow: 8px 8px 5px #00000040; }
        .ec-c-block .cb-wrap__items.rows .cb-item .summary {
          text-align: left;
          padding: 20px 30px; }
          .ec-c-block .cb-wrap__items.rows .cb-item .summary .item-title {
            font-size: 20px;
            margin-bottom: 15px;
            padding: 0 20px;
            background-color: #000;
            color: #fff;
            box-shadow: 5px 5px 0 #00000040; }
          .ec-c-block .cb-wrap__items.rows .cb-item .summary .desc {
            font-size: 18px; }

.cb-detail__page {
  margin-top: 90px; }
  .cb-detail__page .detail-title {
    font-family: var(--Yu-Mincho);
    line-height: 1.25;
    text-align: center; }
    .cb-detail__page .detail-title h2 {
      font-size: 36px;
      font-weight: bold; }
  .cb-detail__page .content {
    margin-top: 35px;
    text-align: justify; }
    .cb-detail__page .content .feature-img {
      width: 500px;
      height: 350px;
      border-radius: 10px;
      overflow: hidden;
      margin: 50px auto; }
      .cb-detail__page .content .feature-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: left top; }
    .cb-detail__page .content .desc {
      line-height: 2;
      font-size: 16px;
      margin-top: 35px; }
      .cb-detail__page .content .desc h3 {
        font-size: 20px;
        font-weight: 500;
        line-height: 2;
        font-weight: 600;
        margin-top: 16px; }
      .cb-detail__page .content .desc p {
        margin-bottom: 16px; }
    .cb-detail__page .content .link-btn {
      margin-top: 40px;
      text-align: right; }
      .cb-detail__page .content .link-btn a {
        display: inline-block;
        background-color: #000;
        color: #fff;
        font-size: 16px;
        padding: 10px 30px;
        box-shadow: 4px 4px 0 #00000040;
        transition: .3s ease-in-out; }
        .cb-detail__page .content .link-btn a:hover {
          box-shadow: none;
          transform: translate(4px, 4px); }

@media screen and (max-width: 943px) {
  .ec-c-block .cb-wrap__items.cols {
    grid-template-columns: 1fr 1fr; } }
@media screen and (max-width: 768px) {
  .ec-c-block .cb-wrap__items.cols {
    grid-template-columns: 1fr 1fr; }
  .ec-c-block .cb-wrap__items.rows .cb-item {
    flex-direction: column-reverse !important; }

  .cb-detail__page .detail-title h2 {
    font-size: 24px;
    font-weight: bold; }
  .cb-detail__page .content .feature-img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9; } }
@media screen and (max-width: 640px) {
  .ec-c-block {
    padding: 40px 0 45px; }
    .ec-c-block .cb-wrap__items.cols {
      grid-template-columns: 1fr; }
    .ec-c-block .cb-wrap__items.rows .cb-item .summary {
      padding: 20px 0; }
    .ec-c-block .c-block-title h2 {
      font-size: 30px; }

  .cb-detail__page .detail-title h2 {
    font-size: 24px;
    font-weight: bold; }
  .cb-detail__page .content .feature-img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9; } }

/*# sourceMappingURL=top_block.css.map */
