

/* ===============================
   layout
=============================== */
.l-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}
.p-entry__inner {
    width: 88.28125%;
    max-width: 1130px;
}
.p-entry__body {
  color: #333;
  line-height: 1.8;
  letter-spacing: .28px;
}

.p-entry__body img {
  max-width: 100%;
  height: auto;
}

.p-entry__body ul {
    list-style: circle outside none;
    margin-left: 1.3em;
    padding-left: 0;
}

.p-entry__body dd {
    line-height: 1;
    margin-left: 0;
}

.smaregiLogoHeader {
  margin: 100px 0 95px !important;
}

.smaregiLogoHeader__inner-s {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.smaregiLogoHeader__copy {
  max-width: 460px;
  text-align: center;
}

.smaregiLogoHeader__logo {
  width: 184px;
  max-width: 100%;
  margin-bottom: 24px;
}

.smaregiLogoHeader__title {
  margin: 0;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 1px;
  vertical-align: middle;
}

.smaregi-design-page__ttl-lg {
  margin: 0;
  font-size: 46px;
}

.logoType__box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
  margin-bottom: 2%;
}

.logoType__logo-type {
  display: flex;
  flex: 0 0 49%;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 80px 0 14px;
  text-align: center;
  background: #f7f8f8;
}

.colorType {
  display: flex;
  margin-bottom: 50px;
}

.colorType__black {
  width: 33%;
  margin-right: 1%;
}

.colorType__white {
  width: 66%;
}

.example {
  display: flex;
  justify-content: space-between;
}

.example__reading {
  max-width: 360px;
}

.example__image {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 694px;
}

.sizeSec__isolation-img {
  display: flex;
  margin-bottom: 50px;
}

.sizeSec__isolation-img div {
  width: 30%;
  margin-right: 5%;
}

.sizeSec__isolation-img div:last-child {
  margin-right: 0;
}

.sizeSec__minimum {
  display: flex;
  justify-content: space-between;
}

.sizeSec__minimum-image {
  width: 50%;
}

ul.ngList {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

li.ngList__list-item {
  width: 25%;
  margin: 0 0 60px;
  text-align: center;
}

/* ===============================
   typography
=============================== */
.p-entry__body h2.top-ttl {
  margin: 50px auto 35px;
}

.p-entry__body h2 {
  margin: 125px auto 35px;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.6;
}

.p-entry__body h3 {
  margin-bottom: 14.2px;
  font-weight: bold;
  line-height: 1.7;
}

h3.smaregi-design-page__ttl-sm {
  margin-top: 30px;
}

.p-entry__body, .p-entry__body p {
    font-size: 14px;
}

.p-entry__body p {
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 24px;
}
.p-entry__body p.logoType__text {
  margin-bottom: 0;
  text-align: center;
}

.p-entry__body .logoType__service p.logoType__text {
  margin-top: 14.2px;
}

/* ===============================
   logo
=============================== */
h3.smaregi-design-page__ttl-sm.logoType__title img {
  width: auto;
  height: 60px;
}

.logoType__service h3.smaregi-design-page__ttl-sm.logoType__title {
  display: inline-block;
  margin: 10px;
}

.logoType__service h3.smaregi-design-page__ttl-sm.logoType__title img {
  height: 34px;
}

.logoType__logo-type-square h3.smaregi-design-page__ttl-sm.logoType__title img {
  height: 120px;
}

.logoType__logo-type-square.logoType__service h3.smaregi-design-page__ttl-sm.logoType__title img {
  height: 75px;
}

.logoType__logo-type-square.logomark h3.smaregi-design-page__ttl-sm.logoType__title img {
  height: 79px;
}

.logoType__logo-type.logomark {
  padding-bottom: 37px;
}

/* ===============================
   order / adjust
=============================== */
.logoType__box div:nth-child(1) { order: 0; }
.logoType__box div:nth-child(3) { order: 1; }

.logoType__box .logoType__service {
  order: 2;
  padding-top: 0;
  padding-bottom: 40px;
}

.logoType__box div:nth-child(4) {
  order: 3;
  padding-top: 0;
}

.logoType__logo-type.logoType__logo-type-horizontal.logoType__service,
.logoType__logo-type.logoType__logo-type-square.logoType__service {
  display: inline-block;
}

.logoType__service h3:last-child {
  margin-bottom: 100px;
}

/* ===============================
   color
=============================== */
.logoColorcode__color {
  display: inline-block;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  text-indent: -555rem;
  position: relative;
}

.colorcode-red { background: #d60005; }
.logoColorcode__color.colorcode-pink { background: #ff4d51; }
.logoColorcode__color.colorcode-black { background: #000; }

.logoColorcode__color.done:after {
  content: "";
  position: absolute;
  top: 9px;
  left: 14px;
  display: block;
  width: 8px;
  height: 14px;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
}

.inner-s.logoColorcode {
  font-size: 11px;
}

.p-entry__body dl.logoColorcode__def {
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.logoType__box div.logoColorcode {
  display: flex;
  flex: 0 0 49%;
  justify-content: center;
  align-items: center;
}

.logoColorcode__colorcode,
.colorcode {
  position: relative;
  cursor: pointer;
}

.copy-colorcode {
  position: absolute;
  top: -40px;
  left: 50%;
  width: 90%;
  padding: 4px;
  background: #333;
  opacity: 0;
  transform: translateX(-50%);
  transition: all .4s cubic-bezier(.86, 0, .07, 1);
  z-index: 2;
}

.copy-colorcode__text {
  position: relative;
  margin: 0;
  color: #fff;
  font-size: 10px;
  line-height: 1.4;
  text-align: center;
}

.copy-colorcode__text:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  display: block;
  width: 10px;
  height: 10px;
  background: #333;
  transform: translateX(-50%) rotate(45deg);
}

.copy-colorcode.show {
  top: -50px;
  opacity: 1;
}

.copy-colorcode.hide {
  visibility: hidden;
}

ul.logoColorcode__list li {
  list-style: none;
  line-height: 2.2;
}

/* ===============================
   image
=============================== */
img.ngList__img {
  display: block;
  margin: 0 auto 16px;
  max-width: 156px;
}

.colorType__white img.usageSec__img {
  width: 50%;
  max-width: 370px;
  margin-bottom: 4px;
}

.colorType__black img.usageSec__img {
  max-width: 370px;
  margin-bottom: 4px;
}

.example__image img {
  width: 50%;
}

img.example__img {
  margin: 0 0 8px;
}

/* ===============================
   responsive
=============================== */
@media (max-width: 1280px) {
  .smaregi-design-page__ttl-lg {
    font-size: 34px;
  }

  .colorType__black img.usageSec__img {
    max-width: 100%;
  }

  .colorType__white img.usageSec__img {
    width: 49%;
    max-width: 50%;
  }

  .example {
    gap: 2%;
  }
}

@media (max-width: 767.98px) {
  .smaregiLogoHeader {
    margin: 81px 0 125px !important;
  }

  .smaregiLogoHeader__logo {
    width: 159px;
    margin-bottom: 16px;
  }

  .smaregi-design-page__ttl-lg {
    font-size: 31px;
  }

  .p-entry__body h2 {
    font-size: 24px;
  }

  .p-entry__body p {
    font-size: 16px;
  }

  .logoType__logo-type {
    flex: 0 0 100%;
  }

  .logoType__box .logoType__service { order: 1; }
  .logoType__box div:nth-child(3) { order: 2; }

  .logoType__logo-type.logoType__logo-type-horizontal.logoType__service {
    margin-bottom: 2%;
  }

  .logoType__box div.logoColorcode {
    flex: none;
    display: block;
    margin: 12% auto 0;
    width: max-content;
  }

  .inner-s.logoColorcode > div {
    width: max-content;
  }

  .copy-colorcode {
    display: none;
  }

  .colorType,
  .example,
  .example__image,
  .sizeSec__isolation-img,
  .sizeSec__minimum {
    display: block;
  }

  .colorType__black,
  .colorType__white {
    width: 100%;
  }

  .example__image img {
    width: 49%;
  }

  .sizeSec__isolation-img div {
    width: 100%;
    margin-right: 0;
    text-align: center;
  }

  .sizeSec__minimum-image {
    width: 100%;
  }

  li.ngList__list-item {
    width: 50%;
  }
}

