@charset "UTF-8";
/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                Common
//////////////////////////////////////////////////////////////////////////////////////////////
*/
html {
  font-size: 62.5%;
}

body {
  width: 100%;
}

.main-area {
  overflow: hidden;
  min-width: auto;
}

#em220930On {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-style: normal;
  font-weight: 400;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  color: #000;
}

#em220930On * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#em220930On img,
#em220930On video,
#em220930On svg {
  width: 100%;
  height: auto;
}

#em220930On a,
#em220930On picture {
  display: block;
}

#footer_emmi {
  padding-top: 0;
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                タブレット
//////////////////////////////////////////////////////////////////////////////////////////////
*/
@media screen and (min-width: 768px) and (max-width: 1400px) {
  html {
    font-size: calc(10 * (100vw/1400));
  }
}

#openLedeText.open {
  height: auto;
  overflow: hidden;
  opacity: 1;
  padding: 0px 0 0px;
}

#openLedeText {
  display: block;
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

#openLedeText.open + #ledeOpenBtn .more {
  display: none;
}

#openLedeText.open + #ledeOpenBtn .close {
  display: block;
}

.open #openLedeText {
  overflow: hidden;
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                sp
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#em220930On .sp-only {
  display: block;
}

#em220930On .pc-only {
  display: none;
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                top
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#em220930On .top__visual {
  width: calc(750 * (100vw / 750));
}

#em220930On .top__logo {
  margin: calc(80 * (100vw / 750)) auto 0;
  width: calc(56 * (100vw / 750));
}

#em220930On .top__ttl {
  margin-top: calc(52 * (100vw / 750));
  font-family: pragmatica, sans-serif;
  font-weight: 700;
  font-size: calc(37 * (100vw / 750));
}

#em220930On .top__lead {
  letter-spacing: 0.025em;
}

#em220930On .top__lead--1 {
  margin-top: calc(45 * (100vw / 750));
  font-size: calc(31 * (100vw / 750));
  line-height: 1.8064516129;
}

#em220930On .top__lead--2 {
  margin-top: calc(78 * (100vw / 750));
  font-size: calc(25 * (100vw / 750));
  line-height: 1.92;
}

#em220930On .top__lead--3 {
  margin-top: calc(51 * (100vw / 750));
  font-size: calc(25 * (100vw / 750));
  line-height: 1.92;
}

#em220930On .top__btn {
  margin-top: calc(88 * (100vw / 750));
  font-size: calc(28 * (100vw / 750));
  font-family: pragmatica, sans-serif;
  font-weight: 400;
  display: inline-block;
  padding-bottom: calc(11 * (100vw / 750));
  border-bottom: 1px solid #000;
}

#em220930On .top__btn .button {
  width: calc(14 * (100vw / 750));
  height: calc(14 * (100vw / 750));
  position: relative;
  display: inline-block;
  margin-left: calc(23 * (100vw / 750));
}

#em220930On .top__btn .more .button::before {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  background-color: #000;
  height: 1px;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#em220930On .top__btn .more .button::after {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  background-color: #000;
  height: 100%;
  width: 1px;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}

#em220930On .top__btn .close .button::before {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  background-color: #000;
  height: 1px;
  width: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

#em220930On .close {
  display: none;
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                common
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#em220930On .c__block, #em220930On .c__inner, #em220930On .c__box, #em220930On .c__unit, #em220930On .c__unit--img {
  position: relative;
}

#em220930On .c__ttl {
  font-family: pragmatica, sans-serif;
  font-weight: 400;
  font-size: calc(53 * (100vw / 750));
  position: relative;
  padding: 0 0 calc(36 * (100vw / 750)) calc(12 * (100vw / 750));
  margin: 0 calc(42 * (100vw / 750)) 0 calc(38 * (100vw / 750));
  text-align: left;
}

#em220930On .c__ttl::after {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  background-color: #000;
  height: 1px;
  width: calc(670 * (100vw / 750));
  bottom: 0;
  left: 0;
}

#em220930On .c__list {
  margin: calc(64 * (100vw / 750)) calc(50 * (100vw / 750)) calc(136 * (100vw / 750));
}

#em220930On .c__unit {
  margin-bottom: calc(79 * (100vw / 750));
}

#em220930On .c__unit:last-child {
  margin-bottom: 0;
}

#em220930On .c__unit--ttl {
  position: relative;
  padding-left: calc(30 * (100vw / 750));
  font-size: calc(34 * (100vw / 750));
  text-align: left;
}

#em220930On .c__unit--ttl::before {
  content: '';
  display: block;
  position: absolute;
  z-index: 1;
  pointer-events: none;
  background-color: #000;
  height: calc(10 * (100vw / 750));
  width: calc(10 * (100vw / 750));
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}

#em220930On .c__unit--desc {
  text-align: justify;
  font-size: calc(25 * (100vw / 750));
  letter-spacing: 0.025em;
  line-height: 1.92;
  margin-top: calc(26 * (100vw / 750));
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                c__block--1
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#em220930On .c__box--1 {
  padding-top: calc(150 * (100vw / 750));
}

#em220930On .c__visual--1 {
  width: calc(750 * (100vw / 750));
}

#em220930On .c__ttl--1 {
  margin-top: calc(152 * (100vw / 750));
}

/*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                c__block--2
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#em220930On .c__visual--2 {
  width: calc(750 * (100vw / 750));
}

#em220930On .c__ttl--2 {
  margin-top: calc(155 * (100vw / 750));
}

#em220930On .c__list--3 {
  margin: calc(64 * (100vw / 750)) calc(51 * (100vw / 750)) calc(166 * (100vw / 750));
}

@media only screen and (min-width: 768px) {
  /*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                pc
//////////////////////////////////////////////////////////////////////////////////////////////
*/
  #em220930On .sp-only {
    display: none;
  }
  #em220930On .pc-only {
    display: block;
  }
  /*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                top
//////////////////////////////////////////////////////////////////////////////////////////////
*/
  #em220930On .top__wrapper {
    margin-top: 5.8rem;
  }
  #em220930On .top__visual {
    width: 68rem;
    margin: 0 auto;
  }
  #em220930On .top__logo {
    margin: 5rem auto 0;
    width: 4rem;
  }
  #em220930On .top__ttl {
    margin-top: 3.3rem;
    font-size: 2.4rem;
  }
  #em220930On .top__lead {
    letter-spacing: 0.025em;
    font-weight: 500;
  }
  #em220930On .top__lead--1 {
    margin-top: 4rem;
    font-size: 2rem;
    line-height: 1.95;
  }
  #em220930On .top__lead--2 {
    margin-top: 4.2rem;
    font-size: 1.4rem;
    line-height: 2.0714285714;
  }
  #em220930On .top__lead--3 {
    margin-top: 2.8rem;
    font-size: 1.4rem;
    line-height: 2.0714285714;
  }
  #em220930On .top__btn {
    margin-top: 5.1rem;
    font-size: 1.6rem;
    padding-bottom: 0.7rem;
  }
  #em220930On .top__btn .button {
    width: 0.8rem;
    height: 0.8rem;
    margin-left: 1.2rem;
  }
  #em220930On .top__btn:hover {
    cursor: pointer;
  }
  #em220930On .close {
    display: none;
  }
  /*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                common
//////////////////////////////////////////////////////////////////////////////////////////////
*/
  #em220930On .c {
    width: 140rem;
    margin: 0 auto;
  }
  #em220930On .c__ttl {
    font-size: 3.2rem;
    padding: 0 0 2.5rem 0;
    margin: 0;
  }
  #em220930On .c__ttl::after {
    width: 100%;
  }
  #em220930On .c__list {
    margin: 5rem auto 9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #em220930On .c__unit {
    margin-bottom: 6.4rem;
  }
  #em220930On .c__unit:last-child #em220930On .c__unit:nth-child(3) {
    margin-bottom: 0;
  }
  #em220930On .c__unit--ttl {
    padding-left: 1.6rem;
    font-size: 2rem;
    font-weight: 500;
  }
  #em220930On .c__unit--ttl::before {
    height: 0.5rem;
    width: 0.5rem;
  }
  #em220930On .c__unit--desc {
    text-align: left;
    font-size: 1.4rem;
    line-height: 2.0714285714;
    margin-top: 2.5rem;
    font-weight: 500;
  }
  /*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                c__block--1
//////////////////////////////////////////////////////////////////////////////////////////////
*/
  #em220930On .c__box--1 {
    padding-top: 12rem;
    margin: 0 20rem;
  }
  #em220930On .c__visual--1 {
    width: 73rem;
    margin: 0 auto;
  }
  #em220930On .c__ttl--1 {
    margin-top: 12.1rem;
    text-align: center;
  }
  #em220930On .c__list--1 {
    padding: 0 1.9rem;
  }
  #em220930On .c__unit--1-1 {
    width: 46.1rem;
  }
  #em220930On .c__unit--1-2 {
    width: 33rem;
    margin-left: 8.1rem;
  }
  #em220930On .c__unit--1-3 {
    width: 44.2rem;
  }
  #em220930On .c__unit--1-4 {
    width: 38.3rem;
    margin-left: 10rem;
  }
  /*
//////////////////////////////////////////////////////////////////////////////////////////////
                                                                                c__block--2
//////////////////////////////////////////////////////////////////////////////////////////////
*/
  #em220930On .c__box--2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 110.6rem;
    margin: 0 auto 0 14.6rem;
  }
  #em220930On .c__block--2-1 {
    width: 65rem;
  }
  #em220930On .c__visual--2 {
    width: 65rem;
    margin-top: 1.2rem;
  }
  #em220930On .c__list--2 {
    margin-bottom: 6.4rem;
  }
  #em220930On .c__block--2-2 {
    width: 35.6rem;
  }
  #em220930On .c__ttl--2 {
    margin-top: 0;
  }
  #em220930On .c__list--3 {
    margin: 4.5rem 0 0 0;
  }
  #em220930On .c__unit--2-1 .c__unit--desc {
    white-space: nowrap;
  }
}
/*# sourceMappingURL=style.css.map */