@charset "UTF-8";
/* common
====================================================== */
/* Foundation
====================================================== */
/* Layout
====================================================== */
/* 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%;
  }
}

/* .c-list-lage
-------------------------- */
.c-list-lage {
  background: #f6e8e8;
  padding: 48px;
}

.c-list-lage .c-list-lage__category .c-list-lage__list {
  border: 1px solid #a30b1a;
  background: #fff;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.6);
}

.c-list-lage .c-list-lage__category .c-list-lage__list:hover, .c-list-lage .c-list-lage__category .c-list-lage__list:active, .c-list-lage .c-list-lage__category .c-list-lage__list:focus {
  background: #f6cfd3;
}

.c-list-lage .c-list-lage__category .c-list-lage__list + .c-list-lage__list {
  margin-top: 24px;
}

.c-list-lage .c-list-lage__category .c-list-lage__links {
  text-decoration: none;
}

.c-list-lage .c-list-lage__category .c-list-lage__contents {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-basis: auto;
  flex-wrap: nowrap;
  width: 100%;
  /* IE hack */
  padding: 32px 0 32px 48px;
}

@media screen and (max-width: 1000px) {
  .c-list-lage .c-list-lage__category .c-list-lage__contents {
    flex-wrap: wrap;
  }
}

.c-list-lage .c-list-lage__category .c-list-lage__title {
  color: #a30b1a;
  font-size: 2rem;
  padding-right: 16px;
  min-width: 50%;
  position: relative;
}

@media screen and (max-width: 1000px) {
  .c-list-lage .c-list-lage__category .c-list-lage__title {
    min-width: auto;
  }
}

.c-list-lage .c-list-lage__category .c-list-lage__title::before {
  display: inline-block;
  content: "";
  border-top: 2px solid #a40e1c;
  border-right: 2px solid #a40e1c;
  margin-right: -12px;
  vertical-align: middle;
  width: 12px;
  height: 12px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: relative;
  top: -2px;
  left: -24px;
}

.c-list-lage .c-list-lage__category .c-list-lage__img {
  display: block;
  text-align: right;
  padding-right: 16px;
  width: 100%;
  /* IE hack */
}

@media screen and (max-width: 1000px) {
  .c-list-lage .c-list-lage__category .c-list-lage__img {
    min-width: auto;
    text-align: left;
  }
}

/* Object - Project
* 特定用途のためのパーツ
====================================================== */

/* Object - Utility
* 各種ヘルパークラス
====================================================== */
