
/* YOUテレビ LP */
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Yu Gothic",YuGothic,Meiryo,sans-serif;}
body{padding-top:72px;}
img{display:block;max-width:100%;height:auto;}
a{-webkit-tap-highlight-color:rgba(0,0,0,0);}

#lpHeader{
  position:fixed;left:0;top:0;z-index:1000;width:100%;height:72px;
  background:rgba(255,255,255,1);
  transition:background .25s ease, box-shadow .25s ease;
}
#lpHeader.is-scrolled{background:rgba(255,255,255,.5);box-shadow:0 1px 8px rgba(0,0,0,.06);}
#lpHeader .headerInner{height:100%;display:flex;align-items:center;padding:0 56px;}
#lpHeader .logo{display:block;width:150px;}
#lpHeader .logo img{width:100%;height:auto;}

.lpWrap{width:100%;overflow:hidden;background:#fff;}
.lpImageBlock{width:100%;max-width:1440px;margin:0 auto;}
.lpHero{max-width:none;}
.lpImageBlock img,.lpImageBlock picture{width:100%;height:auto;}
.lpHero img{width:100%;max-width:none;}

.lpNote{
  width:100%;max-width:1440px;margin:0 auto;
  padding:14px 24px 0;
  font-size:12px;line-height:1.7;text-align:center;color:#555;
  letter-spacing:.02em;
}
.lpCta{width:100%;max-width:1440px;margin:0 auto;padding:42px 0 40px;display:flex;justify-content:center;}
.lpCta a,.lpToTop a{display:block;transition:opacity .15s ease,transform .15s ease,filter .15s ease;}
.lpCta a:hover,.lpToTop a:hover{filter:brightness(1.04);transform:translateY(-2px);}
.lpCta a:active,.lpToTop a:active{opacity:.9;transform:translateY(1px);}
.lpCta img{
    width:567px;
    max-width:100%;
    height:auto;
}
.lpToTop{width:100%;max-width:1440px;margin:0 auto;padding:36px 0 68px;display:flex;justify-content:center;}
.lpToTop a{width:350px;margin:0 auto;}
.lpToTop picture,.lpToTop img{display:block;width:100%;height:auto;}

.pcOnly{display:block!important;}
.spOnly{display:none!important;}

@media screen and (max-width:767px){
  body{padding-top:46px;}
  #lpHeader{height:46px;}
  #lpHeader .headerInner{padding:0 14px;}
  #lpHeader .logo{width:118px;}

  .pcOnly{display:none!important;}
  .spOnly{display:block!important;}

  .lpImageBlock{max-width:none;width:100%;}
  .lpImageBlock img,.lpImageBlock picture{width:100%;max-width:none;}
  .lpNote{
    max-width:none;
    padding:10px 18px 0;
    font-size:10px;
    line-height:1.65;
    text-align:left;
  }
  .lpNote.priceNote{text-align:center;padding-left:12px;padding-right:12px;}

  .lpCta{
    max-width:none;
    padding:22px 23px 26px;
  }
  .lpCta img{width:100%;max-width:568px;margin:0 auto;}

  .lpToTop{
    max-width:none;
    padding:27px 0 48px;
    display:flex;
    justify-content:center;
  }
  .lpToTop a{
    display:block;
    width:calc(100% - 46px);
    max-width:568px;
    margin:0 auto;
  }
  .lpToTop picture,
  .lpToTop img{
    display:block;
    width:100%;
    max-width:none;
    height:auto;
    margin:0 auto;
  }
}


/* TOPへ戻るボタン：文字位置調整版 */
.lpToTop a.lpToTopBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:350px;
  height:58px;
  margin:0 auto;
  background:#777a77;
  border-radius:3px;
  box-shadow:0 4px 6px rgba(0,0,0,.22);
  color:#fff;
  font-size:22px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  letter-spacing:.02em;
}

@media screen and (max-width:767px){
  .lpToTop a.lpToTopBtn{
    width:calc(100% - 46px);
    max-width:568px;
    height:52px;
    font-size:18px;
    line-height:1;
    padding:0;
  }
}


/* フッターコピーライト */
.lpFooter{
  width:100%;
  background:#004b93;
  color:#fff;
  text-align:center;
  padding:18px 16px;
}
.lpFooter p{
  margin:0;
  font-size:12px;
  line-height:1.5;
  letter-spacing:.03em;
  font-weight:700;
}

/* 右下固定：ページトップへ戻る */
.lpPageTop{
  position:fixed;
  right:10px;
  bottom:10px;
  z-index:1001;
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.96);
  color:#004b93;
  border:1px solid rgba(0,75,147,.18);
  border-radius:4px;
  box-shadow:0 2px 8px rgba(0,0,0,.16);
  font-size:28px;
  line-height:1;
  text-decoration:none;
  font-weight:400;
  transition:opacity .15s ease, transform .15s ease, background .15s ease;
}
.lpPageTop:hover{
  background:#fff;
  transform:translateY(-2px);
}
.lpPageTop:active{
  transform:translateY(1px);
  opacity:.85;
}

@media screen and (max-width:767px){
  .lpFooter{
    padding:16px 12px;
  }
  .lpFooter p{
    font-size:10px;
    line-height:1.6;
  }
  .lpPageTop{
    right:8px;
    bottom:8px;
    width:38px;
    height:38px;
    font-size:25px;
  }
}
