@charset 'utf-8';

/* common
------------------------------------------------ */


@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
  .fs-l-pageMain { padding: 0; max-width: inherit; }
}

/* top
------------------------------------------------ */
.concept-top { position: relative; }
.concept-top-logo { display: flex; justify-content: center; align-items: baseline; margin-bottom: 55px; }
.concept-top-logo img { width: 80px; height: 35px; }
.concept-top-logo span { display: inline-block; vertical-align: top; font-size: 1.4rem; line-height: 1.2; }
.concept-top-logo img + span { margin-left: 12px; }
.concept-top-logo span + span { margin-left: 8px; }
.concept-top-title { margin-bottom: 36px; text-align: center; font-family: 'Source Serif 4', serif; font-size: 1.4rem; font-weight: 500; letter-spacing: 0.12em; line-height: 1.2; }
.concept-top-logo--2 { display: flex; justify-content: center; align-items: baseline; margin: 76px 0 20px; }
.concept-top-logo--2 span { display: inline-block; vertical-align: top; line-height: 1.2; }
.concept-top-logo--2 .en { font-size: 1.5rem; }
.concept-top-logo--2 .ja { font-size: 1.4rem; }
.concept-top-logo--2 .en + .ja { margin-left: 6px; }
.concept-top-logo--2 .ja + .ja { margin-left: 8px; }
.concept-top-lead { text-align: center; font-size: 1.4rem; line-height: 2.5; }
.concept-top-text { font-size: 1.3rem; line-height: 2; }
.concept-top-text > p + p { margin-top: 2em; }
.concept-top-lead + .concept-top-text { margin-top: 40px; }
.concept-top-text + .concept-top-photo { margin-top: 34px; }
.concept-top-photo + .concept-top-text { margin-top: 32px; }
.concept-top-sus { margin-top: 80px; }
.concept-top-sus--title { margin-bottom: 14px; text-align: center; font-family: 'Source Serif 4', serif; font-size: 1.5rem; font-weight: 400; line-height: 1.2; }
.concept-top-sus--lead { margin-bottom: 38px; text-align: center; font-size: 1.2rem; line-height: 1.2; }
.concept-top-sus--photo { margin: 0 auto; width: 108px; }
.concept-top-sus__material { display: flex; margin: 40px 0 22px; padding: 20px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.concept-top-sus__material--title,
.concept-top-sus__material--text { font-size: 1.3rem; font-weight: 700; line-height: 1.69230769231; }
.concept-top-sus__material--title { width: 50px; }
.concept-top-sus__material--title::after { content: '\2026'; padding-left: 0.5em; }
.concept-top-sus__material--text { width: calc(100% - 50px); }
.concept-top-certification { margin-top: 24px; padding: 26px 20px; border: 1px solid #e6e6e6; }
.concept-top-certification--title { margin-bottom: 12px; font-size: 1.3rem; font-weight: 700; }
.concept-top-certification__lists--item { position: relative; padding-left: 12px; font-size: 1.3rem; line-height: 2.69230769231; }
.concept-top-certification__lists--item:first-child { margin-top: 0; }
.concept-top-certification__lists--item::before { content: ''; position: absolute; top: 18px; left: 0; width: 4px; height: 4px; background-color: #111; border-radius: 50%; }

@media screen and (max-width: 768px) {
}

@media screen and (min-width: 769px) {
  .concept-top > .wrap { max-width: 1020px; }
  .concept-top-logo { margin-bottom: 94px; }
  .concept-top-logo img { width: 90px; height: 39px; }
  .concept-top-logo span { font-size: 1.6rem; }
  .concept-top-logo img + span { margin-left: 16px; }
  .concept-top-logo span + span { margin-left: 16px; }
  .concept-top-title { margin-bottom: 55px; font-size: 1.8rem; }
  .concept-top-logo--2 { margin: 144px 0 42px; }
  .concept-top-logo--2 .en { font-size: 1.8rem; }
  .concept-top-logo--2 .ja { font-size: 1.6rem; }
  .concept-top-logo--2 .en + .ja { margin-left: 10px; }
  .concept-top-logo--2 .ja + .ja { margin-left: 16px; }
  .concept-top-lead { font-size: 1.6rem; line-height: 2.4375; }
  .concept-top-text { text-align: center; font-size: 1.4rem; line-height: 2.28571428571; }
  .concept-top-text > p + p { margin-top: 2.28571428571em; }
  .concept-top-lead + .concept-top-text { margin-top: 70px; }
  .concept-top-text + .concept-top-photo { margin-top: 50px; }
  .concept-top-photo + .concept-top-text { margin-top: 50px; }
  .concept-top-sus { margin-top: 136px; }
  .concept-top-sus--title { margin-bottom: 22px; font-size: 1.8rem; font-weight: 500; }
  .concept-top-sus--lead { margin-bottom: 58px; font-size: 1.3rem; }
  .concept-top-sus--photo { width: 144px; }
  .concept-top-sus__material { margin: 62px auto 50px; padding: 34px 0 34px 12px; width: 524px; }
  .concept-top-sus__material--title,
  .concept-top-sus__material--text { font-size: 1.4rem; line-height: 2; }
  .concept-top-sus__material--title { width: 52px; }
  .concept-top-sus__material--text { width: calc(100% - 52px); }
  .concept-top-certification { margin-top: 50px; padding: 50px; }
  .concept-top-certification--title { font-size: 1.4rem; }
  .concept-top-certification__lists--item { margin-top: 8px; font-size: 1.4rem; line-height: 2; }
  .concept-top-certification__lists--item::before { top: 13px; width: 5px; height: 5px; }
}

/* about
------------------------------------------------ */
.concept-about { position: relative; margin-top: 80px; }
.concept-about-block { display: flex; position: relative; margin-top: 82px; }
.concept-about-block:first-child { margin-top: 0; }
.concept-about-info { position: relative; }
.concept-about-title { margin-bottom: 30px; text-align: center; font-family: 'Source Serif 4', serif; font-size: 1.5rem; font-weight: 400; line-height: 1.2; }
.concept-about-text { font-size: 1.3rem; line-height: 2; }
.concept-about-text > p + p { margin-top: 2em; }
.concept-about-detail { padding: 20px 18px; border: 1px solid #e6e6e6; }
.concept-about-detail__box { display: flex; margin-top: 15px; }
.concept-about-detail__box:first-child { margin-top: 0; }
.concept-about-detail__box--title,
.concept-about-detail__box--text { font-size: 1.1rem; line-height: 2; }
.concept-about-detail__box--title { width: 80px; }
.concept-about-detail__box--text { width: calc(100% - 80px); }

@media screen and (max-width: 768px) {
  .concept-about-block { flex-flow: column-reverse; }
  .concept-about-photo { margin: 0 -20px; width: calc(100% + 40px); }
  .concept-about-info { margin-top: 36px; }
}

@media screen and (min-width: 769px) {
  .concept-about { margin-top: 150px; }
  .concept-about-block { align-items: center; margin-top: 150px; }
  .concept-about-block:nth-of-type(odd) { flex-flow: row-reverse; }
  .concept-about-info { padding: 0 70px 0 150px; width: 60%; }
  .concept-about-block:nth-of-type(odd) .concept-about-info { padding: 0 150px 0 70px; }
  .concept-about-title { margin-bottom: 55px; font-size: 1.8rem; }
  .concept-about-text { text-align: center; font-size: 1.4rem; line-height: 2.28571428571; }
  .concept-about-text > p + p { margin-top: 2.28571428571em; }
  .concept-about-detail { margin: 0 auto; padding: 45px 35px; max-width: 680px; }
  .concept-about-detail__box { margin-top: 15px; }
  .concept-about-detail__box--title,
  .concept-about-detail__box--text { font-size: 1.3rem; }
  .concept-about-detail__box--title { width: 135px; }
  .concept-about-detail__box--text { width: calc(100% - 135px); }
  .concept-about-photo { width: 40%; }
}

@media screen and (max-width: 1200px) and (min-width: 769px) {
  .concept-about-info { padding-left: 20px; }
  .concept-about-block:nth-of-type(odd) .concept-about-info { padding-right: 20px; }
}