@charset "UTF-8";
/*
変数関係をまとめたファイル
 */
/*
色に関して記述しているファイル
色に関して、ここで宣言をしたものを利用する様にする
*/
:root {
  --color-font-default: #262924;
  --color-font-black: #000000;
  --color-font-white: #fff;
  --color-font-light-green: #E2F1D5;
  --color-font-gray: #979797;
  --color-font-dark-gray: #6F6F6F;
  --color-font-dark-gray2: #7F7F7F;
  --color-font-dark-gray3: #828282;
  --color-font-light-gray: #F2F2F2;
  --color-font-light-gray2: #F4F4F4;
  --color-font-light-gray3: #BDBDBD;
  --color-font-red: #FA6767;
  --color-font-green: #6eb92b;
  --color-bg-default: #fff;
  --color-bg-green: #6eb92b;
  --color-bg-light-green: #F3F9EE;
  --color-bg-light-gray: #F7F7F7;
  --color-bg-light-gray2: #F8F8F8;
  --color-bg-gray: #979797;
  --color-bg-black: #262924;
  --color-button-default: #000;
  --color-stroke-default: #121830;
  --color-stroke-gray: #BDBDBD;
  --color-stroke-dark-gray: #979797;
  --color-stroke-light-gray: #EAEAEA;
  --color-stroke-light-gray2: #EEEEEE;
  --color-stroke-light-gray3: #e0e0e0;
  --color-stroke-black: #000000;
  --color-stroke-black2: #262924;
  --color-stroke-white: #ffffff;
  --color-stroke-twitter: #20A1F1;
  --color-stroke-facebook: #405992;
  --color-stroke-green: #6eb92b;
}

/*
ブレイクポイントに関して記述しているファイル
下のブレイクポイントの設定を変更するときは必ずPMに一声かける
 */
/* ブレイクポイントの設定 min~max */
/* mq-target:指定してメディアクエリのみに適用 */
/* mq:指定より小さい画面に適用 */
.page-taxonomy-solutions {
  overflow: hidden;
}

.page-taxonomy-solutions > .solutions > .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 56px;
  padding-bottom: 77px;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container {
    display: block;
    padding-top: 58px;
    padding-bottom: 0;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main {
  -webkit-box-flex: 0;
  -ms-flex: 0 2 840px;
  flex: 0 2 840px;
  min-width: 0;
  padding-right: 24px;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main {
    padding-right: 0;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .ttl {
  font-size: 42px;
  line-height: 180%;
  letter-spacing: 0.08em;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .ttl {
    font-size: 32px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions {
  position: relative;
  margin-top: 48px;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  display: block;
  height: 1px;
  background-color: var(--color-stroke-light-gray2);
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions {
    margin-top: 32px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution {
  position: relative;
  padding-top: 64px;
  padding-bottom: 64px;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution {
    padding-top: 44px;
    padding-bottom: 44px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: block;
  height: 1px;
  background-color: var(--color-stroke-light-gray2);
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont {
    display: block;
    max-width: none;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw {
  width: 40%;
  max-width: 281px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw {
    width: 100%;
    max-width: none;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-thumb {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-thumb::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 62.2775%;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-thumb > .solution-thumb-img {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  width: 100%;
  height: auto;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-dw {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin-top: 18px;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 180%;
  color: var(--color-font-white);
  background-color: var(--color-bg-green);
  border: none;
  border-radius: 500px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-dw {
    width: 100%;
    max-width: 345px;
    margin: 12px auto 0;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-dw > .icon {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  display: block;
  width: 6px;
  height: 11px;
  margin-left: 7px;
  fill: none;
  stroke: var(--color-stroke-white);
  stroke-width: 2px;
  -webkit-transition: -webkit-transform 0.04s cubic-bezier(0.5, 0, 0.75, 0) 0.008s;
  transition: -webkit-transform 0.04s cubic-bezier(0.5, 0, 0.75, 0) 0.008s;
  transition: transform 0.04s cubic-bezier(0.5, 0, 0.75, 0) 0.008s;
  transition: transform 0.04s cubic-bezier(0.5, 0, 0.75, 0) 0.008s, -webkit-transform 0.04s cubic-bezier(0.5, 0, 0.75, 0) 0.008s;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-thumb-dw > .solution-dw:hover > .icon {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
  -webkit-transition-delay: 0.002s;
  transition-delay: 0.002s;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding-left: 24px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts {
    margin-top: 32px;
    padding-left: 0;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts > .solution-ttl {
  font-size: 18px;
  line-height: 160%;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts > .solution-ttl {
    font-size: 16px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts > .solution-txt {
  margin-top: 16px;
  font-size: 14px;
  line-height: 180%;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-cont > .solution-txts > .solution-txt {
    margin-top: 12px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news {
  margin-top: 38px;
  -webkit-box-shadow: 0 3px 48px rgba(46, 46, 46, 0.1);
  box-shadow: 0 3px 48px rgba(46, 46, 46, 0.1);
  border-radius: 20px;
  overflow: hidden;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news {
    margin-top: 32px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-ttl {
  position: relative;
  padding: 10px 24px 10px 40px;
  font-size: 14px;
  line-height: 180%;
  background-color: var(--color-bg-light-gray);
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-ttl {
    padding: 12px 12px 11px 24px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 28px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  width: 4px;
  height: 18px;
  background-color: var(--color-stroke-default);
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-ttl::before {
    left: 12px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list {
  padding: 8px 24px 24px 28px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list {
    padding: 4px 12px 16px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item {
  margin-top: 15px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item {
    margin-top: 12px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 64px;
  min-width: 64px;
  background-size: cover;
  background-position: center;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-thumb {
    width: 100px;
    min-width: 100px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-thumb::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 100%;
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos {
  width: calc(100% - 64px);
  padding-left: 8px;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos {
    padding-left: 12px;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos > .solution-news-item-date {
  margin-bottom: -2px;
  font-size: 12px;
  line-height: 180%;
  color: var(--color-font-gray);
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos > .solution-news-item-ttl {
  font-size: 14px;
  line-height: 160%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos > .solution-news-item-ttl {
    overflow: initial;
    text-overflow: initial;
    white-space: initial;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos > .solution-news-item-more {
  display: initial;
  margin-top: 6px;
  font-size: 10px;
  line-height: 160%;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  color: var(--color-stroke-green);
}

@media screen and (max-width: 640px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .solutions > .solution > .solution-news > .solution-news-list > .solution-news-item > .solution-news-item-link > .solution-news-item-infos > .solution-news-item-more {
    display: none;
  }
}

.page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .pagination {
  margin-top: 104px;
}

@media screen and (max-width: 896px) {
  .page-taxonomy-solutions > .solutions > .container > .main > .solutions-list > .pagination {
    margin-top: 64px;
    margin-bottom: 104px;
  }
}
