@media screen and (min-width: 641px) {
  .elsaInner {
    max-width: 1080px;
    margin: 0 auto 122px;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .elsaInner {
    max-width: 108vw;
    margin: 0 auto 12.2vw;
  }
}
@media screen and (max-width: 640px) {
  .elsaInner {
    padding-bottom: 16.7%;
  }
}
.elsaInner__ttl {
  padding: 69px 0 62px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .elsaInner__ttl {
    padding: 6.9vw 0 6.2vw;
  }
}
@media screen and (max-width: 640px) {
  .elsaInner__ttl {
    padding: 16.5% 0 6.9%;
  }
}
.elsaInner__ttlTxt {
  background: 0% 0%/25px 29px url(/assets/img/util/title_blue_elm_pc_01.svg) no-repeat, 100% 0%/25px 29px url(/assets/img/util/title_blue_elm_pc_02.svg) no-repeat, 0% 100%/25px 29px url(/assets/img/util/title_blue_elm_pc_03.svg) no-repeat, 100% 100%/25px 29px url(/assets/img/util/title_blue_elm_pc_04.svg) no-repeat;
  letter-spacing: 0.01rem;
  font-size: 1.875rem;
  line-height: 1;
  color: #454545;
  width: 532px;
  height: 90px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .elsaInner__ttlTxt {
    letter-spacing: 0.016vw;
    font-size: 3vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .elsaInner__ttlTxt {
    background: 0% 0%/2.5vw 2.9vw url(/assets/img/util/title_blue_elm_pc_01.svg) no-repeat, 100% 0%/2.5vw 2.9vw url(/assets/img/util/title_blue_elm_pc_02.svg) no-repeat, 0% 100%/2.5vw 2.9vw url(/assets/img/util/title_blue_elm_pc_03.svg) no-repeat, 100% 100%/2.5vw 2.9vw url(/assets/img/util/title_blue_elm_pc_04.svg) no-repeat;
    width: 53.2vw;
    height: 9vw;
  }
}
@media screen and (max-width: 640px) {
  .elsaInner__ttlTxt {
    background: 0% 0%/3.125vw 3.59375vw url(/assets/img/util/title_blue_elm_sp_01.svg) no-repeat, 100% 0%/3.125vw 3.59375vw url(/assets/img/util/title_blue_elm_sp_02.svg) no-repeat, 0% 100%/3.125vw 3.59375vw url(/assets/img/util/title_blue_elm_sp_03.svg) no-repeat, 100% 100%/3.125vw 3.59375vw url(/assets/img/util/title_blue_elm_sp_04.svg) no-repeat;
    font-weight: 500;
    width: 67.5vw;
    height: 18.75vw;
    flex-direction: column;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .elsaInner__ttlTxt {
    font-size: 5.46875vw;
    letter-spacing: 0.109375vw;
    line-height: 2;
  }
}
.elsaInner__ttlTxt--strong {
  color: #0597A3;
}

@media screen and (min-width: 641px) {
  .introInner {
    max-width: 1000px;
    margin: 0 auto 90px;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner {
    max-width: 100vw;
    margin: 0 auto 9vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner {
    padding: 0 5.46875vw 11%;
  }
}
.introInner__ttl {
  width: 926px;
  height: 108px;
  border-radius: 60px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  color: #fff;
  background: #0597A3;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__ttl {
    width: 92.6vw;
    height: 10.8vw;
    border-radius: 6vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__ttl {
    width: 89.0625vw;
    height: 26.09375vw;
    border-radius: 14.0625vw;
  }
}
.introInner__ttl::before {
  position: absolute;
  display: block;
  content: "";
  top: 108px;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 12px solid #0597A3;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__ttl::before {
    top: 10.8vw;
    border-left: 1.2vw solid transparent;
    border-right: 1.2vw solid transparent;
    border-top: 1.2vw solid #0597A3;
  }
}
@media screen and (max-width: 640px) {
  .introInner__ttl::before {
    top: 26.09375vw;
    border-left: 1.875vw solid transparent;
    border-right: 1.875vw solid transparent;
    border-top: 1.875vw solid #0597A3;
  }
}
.introInner__ttlStrong {
  color: #FDE88C;
}
.introInner__ttlTxt {
  letter-spacing: 0.015rem;
  font-size: 1.625rem;
  line-height: 1.4615384615;
  text-align: center;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__ttlTxt {
    letter-spacing: 0.024vw;
    font-size: 2.6vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__ttlTxt {
    font-size: 3.90625vw;
    letter-spacing: 0.0390625vw;
    line-height: 1.6;
  }
}
.introInner__list {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  align-items: center;
  padding: 40px 0;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__list {
    padding: 4vw 2vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__list {
    padding: 6.5% 0 7%;
    flex-direction: column;
    align-items: normal;
  }
}
.introInner__item01 {
  flex: 0 1 456px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item01 {
    flex: 0 1 40.6vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item01 {
    flex: 0 1 100%;
  }
}
.introInner__item02 {
  flex: 0 1 505px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02 {
    flex: 0 1 50.5vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02 {
    flex: 0 1 100%;
  }
}
.introInner__item02Company {
  letter-spacing: 0.015rem;
  font-size: 1.125rem;
  line-height: 2;
  color: #0597A3;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Company {
    letter-spacing: 0.024vw;
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Company {
    padding-top: 3%;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introInner__item02Company {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introInner__item02School {
  padding: 5px 0 20px;
  border-bottom: 1px solid #707070;
  color: #0597A3;
  display: flex;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02School {
    padding: 0.5vw 0 2vw;
    border-bottom: 0.1vw solid #707070;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02School {
    padding: 2.6% 0 4.5%;
    border-bottom: 0.15625vw solid #707070;
    font-weight: 500;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introInner__item02School {
    font-size: 5.3125vw;
    letter-spacing: 0.053125vw;
    line-height: 1.5882352941;
  }
}
.introInner__item02School--tag {
  border: 1px solid #0597A3;
  padding: 6px 9px;
  margin-right: 5px;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 1.5625;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02School--tag {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02School--tag {
    border: 0.1vw solid #0597A3;
    padding: 0.6vw 0.9vw;
    margin-right: 0.5vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02School--tag {
    border: 0.3125vw solid #0597A3;
    padding: 0.9375vw 1.71875vw;
    margin-right: 4%;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introInner__item02School--tag {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 3.3333333333;
  }
}
.introInner__item02School--name {
  letter-spacing: 0.015rem;
  font-size: 1.5625rem;
  line-height: 1.52;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02School--name {
    letter-spacing: 0.024vw;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02School--name {
    font-size: 5.3125vw;
    letter-spacing: 0.053125vw;
    line-height: 2.6470588235;
  }
}
.introInner__item02Category {
  margin: 20px 0 10px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Category {
    margin: 2vw 0 1vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Category {
    margin: 5% 0 3.5%;
  }
}
.introInner__item02Category--tag {
  padding: 6px 11px;
  margin-right: 10px;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 1.5625;
  color: #fff;
  background: #0597A3;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Category--tag {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Category--tag {
    padding: 0.6vw 1.1vw;
    margin-right: 1vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Category--tag {
    padding: 1.25vw 2.65625vw;
    margin-right: 1.5625vw;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introInner__item02Category--tag {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introInner__item02Category--name {
  letter-spacing: 0.015rem;
  font-size: 1.125rem;
  line-height: 2;
  color: #454545;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Category--name {
    letter-spacing: 0.024vw;
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Category--name {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introInner__item02Capacity--tag {
  padding: 6px 11px;
  margin-right: 10px;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 1.5625;
  color: #fff;
  background: #0597A3;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Capacity--tag {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Capacity--tag {
    padding: 0.6vw 1.1vw;
    margin-right: 1vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Capacity--tag {
    padding: 1.25vw 2.65625vw;
    margin-right: 1.5625vw;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introInner__item02Capacity--tag {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introInner__item02Capacity--name {
  letter-spacing: 0.015rem;
  font-size: 1.125rem;
  line-height: 2;
  color: #454545;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introInner__item02Capacity--name {
    letter-spacing: 0.024vw;
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introInner__item02Capacity--name {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint {
    margin: 0 2vw;
  }
}
.introPoint__BA {
  display: flex;
}
@media screen and (max-width: 640px) {
  .introPoint__BA {
    flex-direction: column;
  }
}
.introPoint__task {
  flex: 0 1 475px;
  padding: 23px 40px 0 25px;
  border-radius: 10px 0 0 10px;
  background: #EBEBEB;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__task {
    flex: 0 1 43.5vw;
    padding: 2.3vw 2.5vw 0 2.5vw;
    border-radius: 1vw 0 0 1vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__task {
    flex: 0 1 100%;
    padding: 4.375vw 7.03125vw;
    border-radius: 1.5625vw 1.5625vw 0 0;
  }
  .introPoint__task::before {
    position: absolute;
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-left: 3.4375vw solid transparent;
    border-right: 3.4375vw solid transparent;
    border-top: 3.4375vw solid #EBEBEB;
    left: 0;
    right: 0;
    bottom: -3.125vw;
    margin: 0 auto;
    z-index: 1;
  }
}
.introPoint__taskTtl {
  letter-spacing: 0.015rem;
  font-size: 1.25rem;
  line-height: 1.8;
  font-weight: 500;
  color: #454545;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__taskTtl {
    letter-spacing: 0.024vw;
    font-size: 2vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__taskTtl {
    text-align: center;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__taskTtl {
    font-size: 4.375vw;
    letter-spacing: 0.04375vw;
    line-height: 1.7142857143;
  }
}
.introPoint__taskMark {
  width: 34px;
  height: 34px;
  border: 2px solid #454545;
  line-height: 30px;
  margin-right: 8px;
  color: #454545;
  border-radius: 50%;
  text-align: center;
  display: inline-block;
  letter-spacing: 0.015rem;
  font-size: 1.375rem;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__taskMark {
    width: 3.4vw;
    height: 3.4vw;
    border: 0.2vw solid #454545;
    line-height: 3vw;
    margin-right: 0.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__taskMark {
    width: 5.9375vw;
    height: 5.9375vw;
    border: 0.46875vw solid #454545;
    line-height: 4.6875vw;
    margin-right: 1.09375vw;
    font-size: 3.75vw;
    letter-spacing: 0.05625vw;
  }
}
.introPoint__taskTxt {
  margin: 10px 0;
  padding-left: 24px;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 1.5625;
  color: #454545;
  font-weight: 500;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__taskTxt {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__taskTxt {
    margin: 1vw 0;
    padding-left: 2.4vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__taskTxt {
    margin: 2% 0;
    padding-left: 3.75vw;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__taskTxt {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introPoint__taskTxt::before {
  position: absolute;
  display: block;
  content: "";
  background: #454545;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  left: 0;
  top: 8px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__taskTxt::before {
    width: 1.4vw;
    height: 1.4vw;
    top: 0.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__taskTxt::before {
    width: 2.5vw;
    height: 2.5vw;
    top: 16%;
  }
}
.introPoint__use {
  flex: 0 1 525px;
  padding: 23px 25px 13px;
  border-radius: 0 10px 10px 0;
  background: #FFF5C9;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__use {
    flex: 0 1 52.5vw;
    padding: 2.3vw 2.5vw 1.3vw;
    border-radius: 0 1vw 1vw 0;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__use {
    flex: 0 1 100%;
    padding: 4.375vw 7.03125vw;
    border-radius: 0 0 1.5625vw 1.5625vw;
  }
}
.introPoint__use::before, .introPoint__use::after {
  position: absolute;
  display: block;
  content: "";
}
.introPoint__use::before {
  background: 0% 0%/100% auto url(/assets/img/example/royalsquare/intro_elm_pc_02.svg) no-repeat;
  width: 35px;
  height: 45px;
  top: 0;
  right: 29px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__use::before {
    width: 3.5vw;
    height: 4.5vw;
    right: 2.9vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__use::before {
    width: 5.46875vw;
    height: 7.03125vw;
    right: 8%;
  }
}
.introPoint__use::after {
  width: 0;
  height: 0;
  border-top: 22px solid transparent;
  border-bottom: 22px solid transparent;
  border-right: 22px solid #FFF5C9;
  left: -22px;
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__use::after {
    border-top: 2.2vw solid transparent;
    border-bottom: 2.2vw solid transparent;
    border-right: 2.2vw solid #FFF5C9;
    left: -2.2vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__use::after {
    display: none;
  }
}
.introPoint__useTtl {
  letter-spacing: 0.015rem;
  font-size: 1.25rem;
  line-height: 1.8;
  font-weight: 500;
  color: #FF8B5F;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__useTtl {
    letter-spacing: 0.024vw;
    font-size: 2vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__useTtl {
    text-align: center;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__useTtl {
    font-size: 4.375vw;
    letter-spacing: 0.04375vw;
    line-height: 1.7142857143;
  }
}
.introPoint__useMark {
  width: 34px;
  height: 34px;
  border: 2px solid #FF8B5F;
  line-height: 30px;
  margin-right: 8px;
  color: #FF8B5F;
  border-radius: 50%;
  text-align: center;
  display: inline-block;
  letter-spacing: 0.015rem;
  font-size: 1.375rem;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__useMark {
    width: 3.4vw;
    height: 3.4vw;
    border: 0.2vw solid #FF8B5F;
    line-height: 3vw;
    margin-right: 0.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__useMark {
    width: 5.9375vw;
    height: 5.9375vw;
    border: 0.46875vw solid #FF8B5F;
    line-height: 4.6875vw;
    margin-right: 1.09375vw;
    font-size: 3.75vw;
    letter-spacing: 0.05625vw;
  }
}
.introPoint__useTxt {
  margin: 10px 0;
  padding-left: 24px;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 1.5625;
  color: #454545;
  font-weight: 500;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__useTxt {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__useTxt {
    margin: 1vw 0;
    padding-left: 2.4vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__useTxt {
    margin: 2% 0;
    padding-left: 3.75vw;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__useTxt {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.introPoint__useTxt::before {
  position: absolute;
  display: block;
  content: "";
  background: #FF8B5F;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  left: 0;
  top: 8px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__useTxt::before {
    width: 1.4vw;
    height: 1.4vw;
    top: 0.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__useTxt::before {
    width: 2.5vw;
    height: 2.5vw;
    top: 16%;
  }
}
.introPoint__useTxt--strong {
  color: #FF8B5F;
}
.introPoint__arrow {
  width: 0;
  height: 0;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  border-top: 18px solid #FF8B5F;
  margin: 20px auto 16px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__arrow {
    border-left: 1.8vw solid transparent;
    border-right: 1.8vw solid transparent;
    border-top: 1.8vw solid #FF8B5F;
    margin: 2vw auto 1.6vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__arrow {
    border-left: 3.90625vw solid transparent;
    border-right: 3.90625vw solid transparent;
    border-top: 3.90625vw solid #FF8B5F;
    margin: 4.7% auto 3.3%;
  }
}
.introPoint__list {
  border-radius: 10px;
  padding: 30px 50px;
  position: relative;
  background: #FF8B5F;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__list {
    border-radius: 1vw;
    padding: 3vw 5vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__list {
    border-radius: 1.5625vw;
    padding: 8.59375vw 7.03125vw;
  }
}
.introPoint__item {
  margin-bottom: 25px;
  padding-left: 90px;
  letter-spacing: 0.015rem;
  font-size: 1.125rem;
  line-height: 1.6666666667;
  color: #fff;
  text-align: justify;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__item {
    letter-spacing: 0.024vw;
    font-size: 1.8vw;
  }
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__item {
    margin-bottom: 2.5vw;
    padding-left: 9vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__item {
    margin-bottom: 4.5%;
    padding-left: 7.8125vw;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__item {
    font-size: 3.75vw;
    letter-spacing: 0.05625vw;
    line-height: 1.8333333333;
  }
}
.introPoint__item:last-of-type {
  margin-bottom: 0;
}
.introPoint__item::before, .introPoint__item::after {
  position: absolute;
  display: block;
  content: "";
}
.introPoint__item::before {
  top: 5px;
  left: 65px;
  width: 15px;
  height: 10px;
  border-left: 3px solid #0597A3;
  border-bottom: 3px solid #0597A3;
  transform: rotate(-45deg);
  z-index: 1;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__item::before {
    top: 0.5vw;
    left: 6.5vw;
    width: 1.5vw;
    height: 1vw;
    border-left: 0.3vw solid #0597A3;
    border-bottom: 0.3vw solid #0597A3;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__item::before {
    top: 0.78125vw;
    left: 1.40625vw;
    width: 3.125vw;
    height: 2.34375vw;
    border-left: 0.625vw solid #0597A3;
    border-bottom: 0.625vw solid #0597A3;
  }
}
.introPoint__item::after {
  top: 8px;
  left: 60px;
  width: 18px;
  height: 18px;
  background: #fff;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__item::after {
    top: 0.8vw;
    left: 6vw;
    width: 1.8vw;
    height: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__item::after {
    top: 1.71875vw;
    left: 0.46875vw;
    width: 3.59375vw;
    height: 3.59375vw;
  }
}
.introPoint__itemStrong {
  padding-bottom: 2px;
  border-bottom: 2px solid #fff;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__itemStrong {
    padding-bottom: 0.2vw;
    border-bottom: 0.2vw solid #fff;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__itemStrong {
    padding-bottom: 0.3125vw;
    border-bottom: 0.3125vw solid #fff;
  }
}
.introPoint__elm {
  top: -8px;
  left: 18px;
  letter-spacing: 0rem;
  font-size: 1.5625rem;
  line-height: 1.28;
  font-weight: 500;
  color: #FF8B5F;
  position: absolute;
  transform: rotate(-10deg) scale(0);
  transition: 0.3s all;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__elm {
    letter-spacing: 0vw;
    font-size: 2.5vw;
  }
}
.introPoint__elm.js-observe {
  transform: rotate(-10deg) scale(1);
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__elm {
    top: -0.8vw;
    left: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__elm {
    top: -9.1%;
    left: 1.7%;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .introPoint__elm {
    font-size: 3.90625vw;
    letter-spacing: 0vw;
    line-height: 1.28;
  }
}
.introPoint__elm::before {
  position: absolute;
  display: block;
  content: "";
  background: 0% 0%/100% auto url(/assets/img/example/royalsquare/intro_elm_pc_01.svg) no-repeat;
  width: 133px;
  height: 133px;
  top: 0;
  bottom: 0;
  z-index: -1;
  margin: auto;
  left: -42px;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .introPoint__elm::before {
    width: 13.3vw;
    height: 13.3vw;
    left: -4.2vw;
  }
}
@media screen and (max-width: 640px) {
  .introPoint__elm::before {
    width: 20.78125vw;
    height: 20.78125vw;
    left: -83%;
  }
}

.contentsInner__item--01, .contentsInner__item--04 {
  padding: 6vw 4vw;
  background: rgba(253, 232, 140, 0.1);
}
@media screen and (min-width: 1080px) {
  .contentsInner__item--01, .contentsInner__item--04 {
    padding: 60px 40px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__item--01, .contentsInner__item--04 {
    padding: 11.71875vw 5.46875vw;
  }
}
.contentsInner__item--02 {
  padding: 6vw 4vw 0;
}
.contentsInner__item--02 .contentsInner__itemFlex {
  flex-direction: row-reverse;
}
@media screen and (max-width: 640px) {
  .contentsInner__item--02 .contentsInner__itemFlex {
    flex-direction: column;
  }
}
@media screen and (min-width: 1080px) {
  .contentsInner__item--02 {
    padding: 60px 40px 0;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__item--02 {
    padding: 11.71875vw 5.46875vw 0;
  }
}
.contentsInner__item--02 .contentsInner__itemImg {
  flex: 0 1 44.3vw;
}
@media screen and (min-width: 1080px) {
  .contentsInner__item--02 .contentsInner__itemImg {
    flex: 0 1 493px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__item--02 .contentsInner__itemImg {
    flex: 0 1 100%;
  }
}
.contentsInner__item--03 {
  padding: 2.3vw 4vw 6vw;
}
@media screen and (min-width: 1080px) {
  .contentsInner__item--03 {
    padding: 23px 40px 60px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__item--03 {
    padding: 0 5.46875vw 11.71875vw;
  }
}
.contentsInner__item--03 .contentsInner__itemImg {
  flex: 0 1 44.4vw;
}
@media screen and (min-width: 1080px) {
  .contentsInner__item--03 .contentsInner__itemImg {
    flex: 0 1 484px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__item--03 .contentsInner__itemImg {
    flex: 0 1 100%;
  }
}
.contentsInner__itemFlex {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
}
@media screen and (max-width: 640px) {
  .contentsInner__itemFlex {
    flex-direction: column;
  }
}
.contentsInner__itemColumn {
  flex: 0 1 43.3vw;
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemColumn {
    flex: 0 1 473px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__itemColumn {
    flex: 0 1 100%;
  }
}
.contentsInner__itemTtl {
  padding-bottom: 1.8vw;
  letter-spacing: 0.015rem;
  font-size: 1.375rem;
  line-height: 1.7272727273;
  color: #0597A3;
  position: relative;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .contentsInner__itemTtl {
    letter-spacing: 0.024vw;
    font-size: 2.2vw;
  }
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemTtl {
    padding-bottom: 18px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__itemTtl {
    text-align: center;
    padding-bottom: 5%;
    font-weight: 500;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .contentsInner__itemTtl {
    font-size: 4.375vw;
    letter-spacing: 0.04375vw;
    line-height: 1.7142857143;
  }
}
.contentsInner__itemTtl::before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  width: 100%;
  height: 0.2vw;
  border-radius: 0.1vw;
  background: #0597A3;
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemTtl::before {
    height: 2px;
    border-radius: 1px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__itemTtl::before {
    height: 0.3125vw;
    border-radius: 0.15625vw;
  }
}
.contentsInner__itemTtl--small {
  letter-spacing: 0.015rem;
  font-size: 1.125rem;
  line-height: 2;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .contentsInner__itemTtl--small {
    letter-spacing: 0.024vw;
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__itemTtl--small {
    font-weight: 500;
    text-align: center;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .contentsInner__itemTtl--small {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.contentsInner__itemTxt {
  padding-top: 1.6vw;
  letter-spacing: 0.01rem;
  font-size: 1rem;
  line-height: 2.125;
  color: #454545;
  text-align: justify;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .contentsInner__itemTxt {
    letter-spacing: 0.016vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemTxt {
    padding-top: 16px;
  }
}
.contentsInner__itemTxt--noMargin {
  padding-top: 0;
}
@media screen and (max-width: 640px) {
  .contentsInner__itemTxt {
    padding-top: 4.4%;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .contentsInner__itemTxt {
    font-size: 3.28125vw;
    letter-spacing: 0.04921875vw;
    line-height: 2.0952380952;
  }
}
.contentsInner__itemImg {
  padding-top: 0.7vw;
  flex: 0 1 44vw;
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemImg {
    padding-top: 7px;
    flex: 0 1 500px;
  }
}
.contentsInner__itemImg--noMargin {
  padding-top: 0;
}
@media screen and (max-width: 640px) {
  .contentsInner__itemImg {
    padding-top: 4.2%;
    flex: 0 1 100%;
  }
}
.contentsInner__itemAlt {
  padding-top: 1.1vw;
  letter-spacing: 0.01rem;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #0597A3;
  text-align: center;
}
@media screen and (min-width: 641px) and (max-width: 1000px) {
  .contentsInner__itemAlt {
    letter-spacing: 0.016vw;
    font-size: 1.4vw;
  }
}
@media screen and (min-width: 1080px) {
  .contentsInner__itemAlt {
    padding-top: 11px;
  }
}
@media screen and (max-width: 640px) {
  .contentsInner__itemAlt {
    text-align: left;
    padding-top: 2%;
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .contentsInner__itemAlt {
    font-size: 2.5vw;
    letter-spacing: 0.025vw;
    line-height: 1.625;
  }
}

/* CSS Document *//*# sourceMappingURL=elsa.css.map */