@charset "UTF-8";
/* Object - Component
* 汎用的なパーツ
====================================================== */
/* 均等分割レイアウト
-------------------------- */
.c-column-a {
  display: flex;
  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .c-column-a {
    margin-top: 40px;
  }
}

@media screen and (max-width: 768px) {
  .c-column-a {
    margin-top: 20px;
  }
}

.c-column-a.c-column-a--border .col {
  position: relative;
}

.c-column-a .col {
  position: relative;
}

@media screen and (max-width: 768px) {
  .c-column-a .col {
    width: 100%;
    margin-top: 20px;
  }
}

.c-column-a .col .ttl-a {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .c-column-a .col .ttl-a {
    font-size: 3.0rem;
  }
}

/* 2column
-------------------------- */
@media screen and (min-width: 768px) {
  .c-column-a.c-column-a--2col.c-column-a--border .col:not(:nth-child(2n))::after {
    display: block;
    content: "";
    height: 100%;
    border-right: solid 1px rgba(155, 155, 155, 0.5);
    position: absolute;
    top: 0;
    right: 0;
  }
  .c-column-a.c-column-a--2col .c-column-a--2col__col:nth-child(2n) {
    padding-left: 3.125%;
  }
  .c-column-a.c-column-a--2col .c-column-a--2col__col:nth-child(2n+1) {
    padding-right: 3.125%;
  }
  .c-column-a.c-column-a--2col .c-column-a--2col__col:nth-child(n+3) {
    margin-top: 40px;
  }
  .c-column-a .c-column-a--2col__col {
    width: 50%;
  }
}

/* 3column
-------------------------- */
@media screen and (min-width: 768px) {
  .c-column-a.c-column-a--3col.c-column-a--border .col:not(:nth-child(3n))::after {
    display: block;
    content: "";
    height: 100%;
    border-right: solid 1px rgba(155, 155, 155, 0.5);
    position: absolute;
    top: 0;
    right: 0;
  }
  .c-column-a.c-column-a--3col .c-column-a--3col__col:nth-child(3n) {
    padding-left: 2.734375%;
  }
  .c-column-a.c-column-a--3col .c-column-a--3col__col:nth-child(3n+1) {
    padding-right: 2.734375%;
  }
  .c-column-a.c-column-a--3col .c-column-a--3col__col:nth-child(3n+2) {
    width: 35.15625%;
    padding: 0 2.734375%;
  }
  .c-column-a .c-column-a--3col__col {
    width: 32.421875%;
  }
}

/* 4column
-------------------------- */
@media screen and (min-width: 768px) {
  .c-column-a.c-column-a--4col.c-column-a--border .col:not(:nth-child(4n))::after {
    display: block;
    content: "";
    height: 100%;
    border-right: solid 1px rgba(155, 155, 155, 0.5);
    position: absolute;
    top: 0;
    right: 0;
  }
  .c-column-a.c-column-a--4col .c-column-a--4col__col:nth-child(4n) {
    padding-left: 2.34375%;
  }
  .c-column-a.c-column-a--4col .c-column-a--4col__col:nth-child(4n+1) {
    padding-right: 2.34375%;
  }
  .c-column-a.c-column-a--4col .c-column-a--4col__col:nth-child(4n+2) {
    padding: 0 2.34375%;
  }
  .c-column-a.c-column-a--4col .c-column-a--4col__col:nth-child(4n+3) {
    padding: 0 2.34375%;
  }
  .c-column-a .c-column-a--4col__col {
    width: 25%;
  }
}
@media screen and (max-width: 768px) {
    .c-column-a .c-column-a--4col__col {
        width: 50%;
        margin-top: 20px;
    }
}

/* Object - Project
 * 特定用途のためのパーツ
  ====================================================== */
/* Object - Utility
* 各種ヘルパークラス
====================================================== */
.u-flex {
  display: flex !important;
}

.u-flex-jc-fs {
  justify-content: flex-start !important;
}

.u-flex-jc-fe {
  justify-content: flex-end !important;
}

.u-flex-jc-between {
  justify-content: space-between !important;
}

.u-flex-jc-around {
  justify-content: space-around !important;
}

.u-flex-jc-center {
  justify-content: center !important;
}

.u-flex-ai-fs {
  align-items: flex-start !important;
}

.u-flex-ai-fe {
  align-items: flex-end !important;
}

.u-flex-ai-center {
  align-items: center !important;
}

.u-flex-wrap {
  flex-wrap: wrap !important;
}

.u-flex-nowrap {
  flex-wrap: nowrap !important;
}

.u-flex-row {
  flex-direction: row !important;
}

.u-flex-row-r {
  flex-direction: row-reverse !important;
}

.u-flex-column {
  flex-direction: column !important;
}

.u-flex-column-r {
  flex-direction: column-reverse !important;
}

@media screen and (max-width: 768px) {
  .u-flex-jc-fs-tab {
    justify-content: flex-start !important;
  }
  .u-flex-jc-fe-tab {
    justify-content: flex-end !important;
  }
  .u-flex-jc-between-tab {
    justify-content: space-between !important;
  }
  .u-flex-jc-around-tab {
    justify-content: space-around !important;
  }
  .u-flex-jc-center-tab {
    justify-content: center !important;
  }
  .u-flex-ai-fs-tab {
    align-items: flex-start !important;
  }
  .u-flex-ai-fe-tab {
    align-items: flex-end !important;
  }
  .u-flex-ai-center-tab {
    align-items: center !important;
  }
  .u-flex-wrap-tab {
    flex-wrap: wrap !important;
  }
  .u-flex-nowrap-tab {
    flex-wrap: nowrap !important;
  }
  .u-flex-row-tab {
    flex-direction: row !important;
  }
  .u-flex-row-r-tab {
    flex-direction: row-reverse !important;
  }
  .u-flex-column-tab {
    flex-direction: column !important;
  }
  .u-flex-column-r-tab {
    flex-direction: column-reverse !important;
  }
}

@media screen and (max-width: 480px) {
  .u-flex-jc-fs-sp {
    justify-content: flex-start !important;
  }
  .u-flex-jc-fe-sp {
    justify-content: flex-end !important;
  }
  .u-flex-jc-between-sp {
    justify-content: space-between !important;
  }
  .u-flex-jc-around-sp {
    justify-content: space-around !important;
  }
  .u-flex-jc-center-sp {
    justify-content: center !important;
  }
  .u-flex-ai-fs-sp {
    align-items: flex-start !important;
  }
  .u-flex-ai-fe-sp {
    align-items: flex-end !important;
  }
  .u-flex-ai-center-sp {
    align-items: center !important;
  }
  .u-flex-wrap-sp {
    flex-wrap: wrap !important;
  }
  .u-flex-nowrap-sp {
    flex-wrap: nowrap !important;
  }
  .u-flex-row-sp {
    flex-direction: row !important;
  }
  .u-flex-row-r-sp {
    flex-direction: row-reverse !important;
  }
  .u-flex-column-sp {
    flex-direction: column !important;
  }
  .u-flex-column-r-sp {
    flex-direction: column-reverse !important;
  }
}

/* 表示順
-------------------------- */
.u-flexOrder_00 {order:0}
.u-flexOrder_01 {order:1}
.u-flexOrder_02 {order:2}
.u-flexOrder_03 {order:3}
.u-flexOrder_04 {order:4}
.u-flexOrder_05 {order:5}
.u-flexOrder_06 {order:6}
.u-flexOrder_07 {order:7}
.u-flexOrder_08 {order:8}
.u-flexOrder_09 {order:9}
/* 表示順（タブレット以下） */
@media screen and (max-width: 768px) {
.u-flexOrder_00-tab {order:0}
.u-flexOrder_01-tab {order:1}
.u-flexOrder_02-tab {order:2}
.u-flexOrder_03-tab {order:3}
.u-flexOrder_04-tab {order:4}
.u-flexOrder_05-tab {order:5}
.u-flexOrder_06-tab {order:6}
.u-flexOrder_07-tab {order:7}
.u-flexOrder_08-tab {order:8}
.u-flexOrder_09-tab {order:9} }
/* 表示順（モバイル以下） */
@media screen and (max-width: 480px) {
.u-flexOrder_00-sp {order:0}
.u-flexOrder_01-sp {order:1}
.u-flexOrder_02-sp {order:2}
.u-flexOrder_03-sp {order:3}
.u-flexOrder_04-sp {order:4}
.u-flexOrder_05-sp {order:5}
.u-flexOrder_06-sp {order:6}
.u-flexOrder_07-sp {order:7}
.u-flexOrder_08-sp {order:8}
.u-flexOrder_09-sp {order:9} }



