@charset "UTF-8";
html {
  font-size: 62.5%;
}

body {
  font-size: 1.4rem;
}

/* 変数定義 */

:root {
  --col-space: 10px;
  --base-margin: 1rem;
  --color-main: #0086d1;
  --color-gray1: #dddddd;
  --color-gray2: #f5f5f5;
  --color-gray3: #eeeeee;
  --color-orange: #ff7a5a;
  --color-red1: #cc0033;
  --color-black1: #595656;
  --color-black2: #100f42;
  --color-black3: #000000;
}

.contentWrap {
  max-width: 1540px;
  padding: 0 20px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.contentWrap.lg {
  max-width: 1840px;
}

.col2Wrap,
.col3Wrap,
.col4Wrap,
.col5Wrap,
.colFreeWrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0 calc(var(--col-space) * -1);
  flex-wrap: wrap;
}

.colFreeWrap {
  flex-wrap: nowrap;
}

.col2Wrap .col,
.col3Wrap .col,
.col4Wrap .col,
.col5Wrap .col,
.colFreeWrap .col {
  margin: 0 var(--col-space);
}

.col2Wrap .col {
  flex-basis: calc(50% - (var(--col-space) * 2));
}

.col3Wrap .col {
  flex-basis: calc(33.33% - (var(--col-space) * 2));
}

.col4Wrap .col {
  flex-basis: calc(25% - (var(--col-space) * 2));
}

.col5Wrap .col {
  flex-basis: calc(20% - (var(--col-space) * 2));
}

.colFreeWrap .col {
  flex-grow: 1;
}

.colFreeWrap .col.s75 {
  flex-basis: 75%;
}

.colFreeWrap .col.s70 {
  flex-basis: 70%;
}

.colFreeWrap .col.s50 {
  flex-basis: 50%;
}

.colFreeWrap .col.s30 {
  flex-basis: 30%;
}

.colFreeWrap .col.s25 {
  flex-basis: 25%;
}

.col2Wrap.al-center,
.col3Wrap.al-center,
.col4Wrap.al-center,
.col5Wrap.al-center,
.colFreeWrap.al-center {
  align-items: center;
}

.col2Wrap.al-stretch,
.col3Wrap.al-stretch,
.col4Wrap.al-stretch,
.col5Wrap.al-stretch,
.colFreeWrap.al-stretch {
  align-items: stretch;
}

.mb10 {
  margin-bottom: calc(var(--base-margin) * 1);
}

.mb20 {
  margin-bottom: calc(var(--base-margin) * 2);
}

.mb30 {
  margin-bottom: calc(var(--base-margin) * 3);
}

.mb40 {
  margin-bottom: calc(var(--base-margin) * 4);
}

.mb50 {
  margin-bottom: calc(var(--base-margin) * 5);
}

.mb60 {
  margin-bottom: calc(var(--base-margin) * 6);
}

.mb70 {
  margin-bottom: calc(var(--base-margin) * 7);
}

.mb80 {
  margin-bottom: calc(var(--base-margin) * 8);
}

.mb90 {
  margin-bottom: calc(var(--base-margin) * 9);
}

.mb100 {
  margin-bottom: calc(var(--base-margin) * 10);
}

.mb110 {
  margin-bottom: calc(var(--base-margin) * 11);
}

.mb120 {
  margin-bottom: calc(var(--base-margin) * 12);
}

.mb130 {
  margin-bottom: calc(var(--base-margin) * 13);
}

.mb140 {
  margin-bottom: calc(var(--base-margin) * 14);
}

.mb150 {
  margin-bottom: calc(var(--base-margin) * 15);
}

@media screen and (max-width: 768px) {
  .col2Wrap .col,
  .col3Wrap .col,
  .col4Wrap .col,
  .col5Wrap .col,
  .colFreeWrap .col {
    flex-basis: 90%;
    max-width: 460px;
    margin: 0 auto 30px;
  }
  .spFlexWrap {
    flex-wrap: wrap;
  }
}
