@keyframes page-fade {
  100% {
    opacity: 1;
    visibility:visible;
  }  
}

@keyframes twinkle {
  0%, 100% {transform: scale(0.9); opacity: 0.4;}
  50% {transform: scale(1); opacity: 1;}
}

.ly-container {  
  display: flex;
  flex-direction: column;
  max-width:800px;
  margin: 0 auto;
  opacity: 0;
  visibility:hidden;
  animation: page-fade 0.8s .15s forwards ease-in-out;
}

@media(min-width:769px){
  .ly-container {
    max-width:100%;
  }
}

.ly-wrapper {
  flex:1;
}

.ly-inner {
  width: 100%;  
  margin: 0 auto;  
  padding:0 1.25rem;
}

@media(min-width:769px){  
  .ly-inner {
    max-width: 85.75rem;
  }

  .ly-inner--pc-sm {
    max-width: 77.8125rem
  }

  .ly-inner--pc-lg {
    max-width: 103.75rem
  }
}



.ly-hero {
  position: relative;
  z-index: 0;
  text-align: center;
}

.ly-hero__stars {
  position: absolute;
  z-index: 1;    
  width: 13.9375rem;
  top: 0.875rem;
  left: 1.625rem;
}

.ly-hero__twinkle {
  animation: twinkle 1.5s infinite ease-in-out;
}

.ly-hero__container {
  background: url('../images/mo_section_1_img_1.jpg') no-repeat center / cover;
}

.ly-hero__wrapper {
  display: flex;
  flex-direction: column;
  min-height: 98.5rem;
  padding-bottom: 6.25rem;
}

.ly-hero__content {
  margin-top: auto;
  opacity: 0;
  visibility: hidden;
}

.ly-hero__badge {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10em;
  height: 1.85em;
  border:0.25rem solid var(--primary);
  text-align: center;
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--primary);
  background-color: rgba(255,255,255,0.7);
  letter-spacing: -0.03em;
}

.ly-hero__title {
  padding:0.65em 0 0.75em;
  font-size: 4.375rem;
  font-weight: 800;
  line-height: 1.3572;
  letter-spacing: -0.03em;
  color: var(--primary);
}

.ly-hero__ment {
  font-size: 2.0625rem;
  line-height: 1.6667;
  font-weight: 500;
  letter-spacing: -0.03em;
  padding-bottom: 2.575em;
}


.ly-hero__text {
  display: block;
  width: max-content;
  margin: 0 auto;
  transform:translateY(1.5em);
  opacity: 0;
  visibility:hidden;
}

.ly-hero__text--strong {
  position: relative;
  font-weight: 800;  
  z-index: 0;
}

.ly-hero__deco {
  position: absolute;
  z-index: -1;
  bottom: -0.7rem;
  left: 50%;
  transform:translateX(-50%);
  pointer-events: none;
  width: 106%
}

.ly-hero__button {
  display: flex;
  justify-content: center;
  align-items: center;
  width:10.25em;
  height: 2em;
  margin: 0 auto;
  text-align: center;
  font-size: 2.5rem;
  font-weight: 800;
  background-color: var(--primary);
  color: #fff;
  border-radius: 1.25em;
  letter-spacing: -0.03em;
  opacity: 0;
  visibility: hidden;
  transform:translateY(1em);
  padding-bottom: 0.125em;
}

.ly-hero__container {
  background: url('../images/mo_section_1_img_1.jpg') no-repeat center / cover;
}

@media(min-width:769px){
  .ly-hero {
    text-align: left;
  }  

  .ly-hero__stars {
    top: 5.2rem;
    left: 50%;
    transform:translateX(-50%);
    margin-left: -1.6rem;
    width: 13.5625rem;
  }
  
  .ly-hero__container {
    background-image: url('../images/pc_section_1_img_1.jpg');
  }

  .ly-hero__wrapper {
    display: block;
    min-height: 56.25rem;
    padding-bottom: 0;
  }

  .ly-hero__content {
    padding: 8.05rem 0 5rem;
  }

  .ly-hero__badge {
    margin: 0;
    font-size: 1.875rem;
    height: 1.9em;
  }

  .ly-hero__title {
    padding:0.74em 0 0.45em;
    font-size: 4.5rem;
    line-height: 1.2778;
    letter-spacing: -0.04em;
  }

  .ly-hero__text {
    margin: 0;
    font-size: 1.625rem;
    line-height: 1.8462;
  }

  .ly-hero__deco {
    bottom: -0.5rem;
  }

  .ly-hero__ment {
    padding-bottom: 2.8em;
  }

  .ly-hero__button {
    margin: 0;
    width: 13.334em;
    height: 2.6334em;
    font-size: 1.875rem;
  }
}

.ly-ytb {
  background: url('../images/mo_section_2_img_1.jpg') no-repeat center / cover;
}

.ly-ytb__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4.0625rem;
  padding:8rem 0;
}

.ly-ytb__video {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
}

.ly-ytb__button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 10em;
  height: 1.975em;
  font-size: 2.5rem;
  font-weight: 800;
  color: #fff;
  background-color: var(--primary);
  letter-spacing: -0.03em;
  border-radius: 1.25em;
  padding-bottom: 0.125em;
}

.ly-ytb__frame {
  width: 100%;
}

@media(min-width:769px){
  .ly-ytb__container {
    min-height: 62.1875rem;
    padding:6rem 0 4.3125rem;
    gap: 3.1875rem;
  }

  .ly-ytb__button {
    width: 13.334em;
    height: 2.6334em;
    font-size: 1.875rem;
  }
}

.ly-story {
  padding-top: 6.375rem;
  background: url('../images/mo_section_3_img_2.jpg') no-repeat center / cover;
  min-height: 103.3125rem;
}

.ly-story__container {
  display: flex;
  flex-direction: column;
  gap:8.75rem;
  padding-bottom: 10rem;
}

.ly-story__picture {
  display: block;
  margin: 0 auto;
  width: max-content;
  max-width:100%;
}

.ly-story__wrapper {
  padding: 0 3.4rem;
}

.ly-story__alert {
  margin-top: 6.1rem;
  padding-top: 2rem;
  border-top:1px solid #000;
}

.ly-story__item {
  display: flex;
  margin-bottom: 0.95em;
  font-size: 1.875rem;
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.5334;
}

.ly-story__item:last-child {
  margin-bottom: 0;
}

.ly-story__item:before {
  color: var(--primary);
  margin-right: 0.2em;
}

.ly-story__item:first-child:before {
  content:"*"
}

.ly-story__item:nth-child(2):before {
  content:"**"
}

.ly-story__label {
  font-weight: 600;
}

.ly-story__desc {
  display: inline;
  flex:1;
}

@media(min-width:769px){
  .ly-story {
    min-height: 56.25rem;
    padding:10.2rem 0 8rem;
  }
  .ly-story__container {
    flex-direction: row-reverse;
    justify-content: space-between;
    gap:4rem;
  }

  .ly-story__wrapper {
    padding:0.85rem 0 0;
  }

  .ly-story__picture {
    margin: 0;
    max-width:844px;
    width: 52.0988%;
  }

  .ly-story__alert {
    margin-top: 5.9rem;
    padding-top: 0;
    border-top:none;
  }

  .ly-story__item {
    font-size: 1.375rem;
    line-height: 1.7273;
  }
}

.ly-mina {
  position: relative;
  background: no-repeat center / cover;
  text-align: center;
}

.ly-mina__stars {
  position: absolute;
  top: 3.0625rem;
  right: 10.625rem;
  width: 14.375rem;
}

.ly-mina__twinkle {
  animation: twinkle 1.5s infinite ease-in-out;
}

.ly-mina__container {
  display: flex;
  flex-direction: column;
}

.ly-mina__wrapper {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap:3.4rem;
}

.ly-mina__interview {
  font-family: var(--font-serif);
}

.ly-mina__interview--primary {
  color: var(--primary);
}

.ly-mina__interview--secondary {
  color: var(--secondary);
}

.ly-mina__tell {
  font-size: 2.625rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.6191;
}

.ly-mina__teller {
  display: block;
  margin-top: 0.1em;
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.889;
  letter-spacing: -0.03em;
}

.ly-mina__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 10em;
  height: 1.975em;
  font-size: 2.5rem;
  background-color: var(--primary);
  color: #fff;
  margin: 0 auto;
  border-radius:1.25em;
  font-weight: 800;
  letter-spacing: -0.03em;
  padding-bottom: 0.125em;
}

.ly-mina__content {
  display: flex;
  flex-direction: column;
  gap:5.6rem;
}

.ly-mina--section1 {
  background-image: url('../images/mo_section_4_img_1.jpg');
}

.ly-mina--section1 .ly-mina__container {
  min-height: 103.3125rem;
  padding-bottom: 7.9rem;
}

.ly-mina--section2 {
  background-image: url('../images/mo_section_5_img_1.jpg');
}

.ly-mina--section2 .ly-mina__container {
  min-height: 84.375rem;
  padding-bottom: 7.3rem;
}

.ly-mina--section3 {
  background-image: url('../images/mo_section_6_img_1.jpg');
}

.ly-mina--section3 .ly-mina__container {
  min-height: 84.375rem;
  padding-bottom: 6.3125rem;
}

.ly-mina--section4 {
  background-image: url('../images/mo_section_7_img_1.jpg');
}

.ly-mina--section4 .ly-mina__container {
  min-height: 103.3125rem;
  padding-bottom: 6.6rem;
}

.ly-mina--section5 {
  background-image: url('../images/mo_section_8_img_1.jpg');
}

.ly-mina--section5 .ly-mina__container {
  min-height: 103.3125rem;
  padding-bottom: 6.6rem;
}

.ly-mina--section6 {
  background-image: url('../images/mo_section_9_img_1.jpg');  
}

.ly-mina--section6 .ly-mina__container {
  min-height: 84.375rem;
  padding-bottom: 6.3125rem;
}

@media(min-width:769px) {  
  .ly-mina__stars {
    top: 5.3125rem;
    right: 15.625rem;
    left: auto;
    width: 18.3125rem;
  }

  .ly-mina__container {
    flex-direction: row;
    align-items: center;
  }

  
  .ly-mina__wrapper {
    margin-top: 0;
    gap: 3.6rem;
    padding:0 3.6rem
  }

  .ly-mina__container--text-right {
    justify-content: flex-end;
  }

  .ly-mina__container--text-left {
    justify-content: flex-start;
  }

  .ly-mina__tell {
    font-size: 2rem;
    line-height: 1.8125;
  }

  .ly-mina__teller {
    font-size: 1.625rem;
    line-height: 2.2308;
  }

  .ly-mina--section1 {
    background-image: url('../images/pc_section_4_img_1.jpg');
  }

  .ly-mina--section2 {
    text-align:left;
    background-image: url('../images/pc_section_5_img_1.jpg');
  }  

  .ly-mina--section3 {
    background-image: url('../images/pc_section_6_img_1.jpg');
  }

  .ly-mina--section4 {
    background-image: url('../images/pc_section_7_img_1.jpg');
    text-align:left;
  }

  .ly-mina--section5 {
    background-image: url('../images/pc_section_8_img_1.jpg');
  }

  .ly-mina--section6 {
     background-image: url('../images/pc_section_9_img_1.jpg');
     text-align:left;
  }

  .ly-mina__btn {
    font-size: 1.875rem;
    width: 13.334em;
    height: 2.6334em;
  }

  .ly-mina .ly-mina__container {
    min-height: 56.25rem;
    padding-bottom: 0;
  }

  .ly-mina__container--text-left .ly-mina__wrapper {
    padding: 0;
  }

  .ly-mina--section4 .ly-mina__wrapper {
    gap: 3rem;
  }
}

.ly-donation  {
  position: relative;
  background: url('../images/mo_section_10_img_1.jpg') no-repeat center / cover;
}

.ly-donation__stars {
  position: absolute;
  width: 10.75rem;
  top: 7.1875rem;
  right: 3.125rem;
}

.ly-donation__twinkle {
  animation: twinkle 1.5s infinite ease-in-out;
}

.ly-donation__container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 103.3125rem;
  padding-bottom: 4.3125rem;
}

.ly-donation__wrapper {
  padding:0 2.5rem;  
}

.ly-donation__title {
  font-size: 3.25rem;
  margin-bottom: 0.7em;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.3462;
  color: var(--primary);  
}

.ly-donation__text {
  padding-bottom: 3rem;
}

.ly-donation__ment {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 2.0625rem;
  font-weight: 500;
  letter-spacing: -0.04em;
  line-height: 1.6667;
}

.ly-donation__check {
  flex-shrink: 0;
  width: 2.25rem;
  height: auto;
  margin-top: 0.6rem;
}

.ly-donation__deco {
  position: relative;
  z-index: 0;
  font-weight: 800;  
}

.ly-donation__line {
  position: absolute;
  z-index: -1;
  bottom: -0.2rem;
  left: 50%;
  transform:translateX(-50%);
  pointer-events: none;
  width: 106%
}

.ly-donation__badge {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto 1.6em;
  width: 12.2063em;
  height: 1.975em;
  border-radius: 2em;
  font-size: 2.5rem;
  font-weight: 800;
  letter-spacing: -0.03em;  
  background-color: var(--primary);
  color: #fff;
  padding-bottom: 0.125em;
}

.ly-donation__help {
  padding:0.804em;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: -0.03em;
  line-height: 1.5715;
  border:1px solid var(--primary);
  background-color: rgba(255,255,255,0.5);  
}

.ly-donation__alert {
  margin-top: 1rem;
  padding-left: 1.4em;
  text-indent: -1.4em;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: -0.03em;
}

@media(min-width:769px) {
  .ly-donation{
    background-image: url('../images/pc_section_10_img_1.jpg');
  }

  .ly-donation__stars {
    top: 12rem;
    right: 60rem;
  }

  .ly-donation__container {
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
    min-height: 56.25rem;
    padding-bottom: 3.125rem;
    right:auto;
  } 

  .ly-donation__wrapper {
    max-width : 60rem;
  }


  .ly-donation__text {
    padding-bottom: 2.375rem;
  }

  .ly-donation__ment {
    font-size: 1.625rem;
    line-height: 1.8462;
  }

  .ly-donation__check {
    width: 2rem;
    margin-top: 0.5rem;
  }

  .ly-donation__alert {
    font-size: 1.375rem;
    line-height: 1.7273;
  }

  .ly-donation__badge {
    font-size: 1.875rem;
    margin: 0 0 1.65em 0;
    width: 13.3334em;
    height: 2.6334em;
  }

  .ly-donation__help {
    max-width:34rem;
    font-size: 1.375rem;
    padding: 1.046em 1em;
    line-height: 1.7273;
  }
}

/* ===== 스크롤 등장 애니메이션 초기 상태 ===== */
/* 각 섹션 콘텐츠: 살짝 아래에서 차오르며 페이드인 */
.ly-ytb__frame,
.ly-ytb__button,
.ly-story__picture,
.ly-story__item,
.story-ment,
.story-announce,
.ly-mina__interview,
.ly-mina__btn,
.ly-donation__title,
.ly-donation__ment,
.ly-donation__badge,
.ly-donation__help {
  opacity: 0;
  visibility: hidden;
  transform: translateY(1.5rem);
}

@media(min-width:769px){
  .ly-ytb__frame,
  .ly-ytb__button,
  .ly-story__picture,
  .ly-story__item,
  .story-ment,
  .story-announce,
  .ly-mina__interview,
  .ly-mina__btn,
  .ly-donation__title,
  .ly-donation__ment,
  .ly-donation__badge,
  .ly-donation__help {
    transform: translateY(2.25rem);
  }
}

/* 밑줄(손글씨 라인): 좌 → 우로 그어지도록 초기엔 가려둠 */
.ly-hero__line,
.story-ment__line,
.ly-donation__line {
  clip-path: inset(0% 100% 0% 0%);
}

.ly-aside {
  position: fixed;
  z-index: 1000;
  inset:0;
  top:auto;
  pointer-events: none;
  transition: transform .3s ease;
  will-change: transform;
}

.ly-aside__link {  
    display: block;
    width: 100%;
    margin: 0 auto;
    pointer-events: auto;
}

.ly-aside__text {
  color: #fff;
  background-color: var(--primary);
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.06rem;
  font-weight: 600;
  padding: 1em 0;
}

.ly-aside__picture {
  display: none;
  width: 100%;
}

@media(min-width: 769px){
  .ly-aside {
    padding:0 4% 6.25rem;
  }

  .ly-aside__container {    
    width:100%;
  }
    

  .ly-aside__link {
    width: 11.25rem;
    margin: 0 0 0 auto;
  }

  .ly-aside__text {
    display: none;
  }

  .ly-aside__picture {
    display: block;
  }
}

/* 769 밑: hope .follow 이식 — 평소엔 하단에 숨고, 스크롤 내리면 슬라이드업 */
@media(max-width:768px){
  .ly-aside {
    transform: translateY(100%);
  }

  .ly-aside--show {
    transform: translateY(0);
  }
}

/*************************** footer (footer_inc 이식 / new-footer) ***************************/
.new-footer {background-color: #f1f1f1; padding:48px 0; font-size: 16px; color: #222;}
.new-footer a {color: inherit;}
.new-footer .inner {max-width: 1400px; width: 100%; margin: 0 auto; padding: 0 1.25rem;}
.new-footer__container {display: flex; justify-content: space-between; align-items: flex-start; gap:24px; flex-wrap: wrap; margin-bottom: 32px; padding-bottom: 32px; border-bottom:1px solid #ccc;}
.new-footer__container:last-child {margin-bottom: 0; padding-bottom: 0; border-bottom:none;}

.footer-dominate {display: flex; gap:48px;}
.footer-dominate__item {display: flex; flex-direction:column; gap:8px; line-height: 1.4;}
.footer-dominate__cate {font-size: 1.25em; font-weight: 600; letter-spacing: -0.03em; color: #2b93f4;}
.footer-dominate__desc {font-size: 1.125em; font-weight: 600; letter-spacing: -0.03em;}
.footer-dominate__desc span {display: block;}
.footer-dominate__desc span a {color: inherit;}
.footer-dominate__desc span small {font-size: 0.8125em; font-weight: 400;}

.footer-organization {display: flex; align-items: flex-start; text-align: center; gap:16px;}
.footer-organization__img {margin-bottom: 8px; height: 64px;}
.footer-organization__desc {font-size: 0.875em; font-weight: 500;}

.footer-terms__list {display: flex;}
.footer-terms__item {font-size: 1em;}
.footer-terms__item::after {content: ''; display: inline-block; width: 1px; height: 12px; background: #9D9D9D; margin: 0 12px;}
.footer-terms__item:last-child::after {display: none;}
.footer-terms__btn {letter-spacing: -0.03em;}

.footer-sns__list {display: flex; gap:8px;}
.footer-sns__btn {width: 36px; height: 36px; background: #9D9D9D; display: flex; align-items: center; justify-content: center; border-radius: 50%;}

.footer-info {display: flex; flex-direction: column; gap:4px; width: 100%;}
.footer-info__item {display: flex; flex-wrap:wrap; font-size: 1em; line-height: 1.6; letter-spacing: -0.03em; gap:8px 16px;}

@media(max-width:1280px){
    .footer-organization__img {height: 48px;}
}
@media(max-width:1080px){
    .new-footer {font-size: 15px;}
    .new-footer__container {flex-direction: column; gap:32px;}
    .footer-dominate {gap:24px;}
}
@media(max-width:500px){
    .new-footer {font-size: 14px;}
    .footer-dominate {gap:16px;}
}

