@charset "utf-8";
a.opacity {
 display: block;
 transition: all ease .5s;
}
a.opacity::hover {
 opacity: .8;
 transition: all ease .5s;
}
.bottom_bnr {
 width: 98%;
 max-width: 700px;
 margin: 20px auto 0;
}
.flex_box {
 display: -webkit-flex;
 display: flex;
 max-width: 1000px;
 margin: auto;
 justify-content: space-between;
}
.flex_box > * {
 width: 49%!important;
}
.lp_cta_fixed .a_txt p {
 position: absolute;
 width: 100%;
 top: 50%;
 left: 50%;
 transform: translate(-50%,-50%);
 background: none!important;
 font-size: 20px;
 align-items: center;
}
.lp_cta_fixed .a_txt {
 position: relative;
 background: linear-gradient(to right, #f15682 0%, #4bacfd 100%)!important;
 border-radius: 3px;
}
.lp_cta_fixed .a_txt p {
 padding-top: 15px;
}
.objects {
 display: none !important;
}
.mt-10em{margin-top: -10em;}
.fs_s{font-size: 0.8em;}
.t-center{
 text-align: center;
}
/*fin*/
#fin {
 position: relative;
}
#fin_inner {
 position: absolute;
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
 z-index: 100;
 background: rgba(89,89,89,.85);
 text-align: center;
}
#fin_inner span {
 display: block;
 width: 500px;
 margin: 160px auto 0;
 padding: 1em 1em 0.8em;
 background: #ff0f6e;
 color: #fff;
 font-size: 24px;
 font-weight: bold;
}
.cp_end {
 position: relative;
}
.end_tx {
 position: absolute;
 left: 50%;
 top: 50%;
 width: 100%;
 padding: 10px;
 transform: -webkit-translate(-50%,-50%);
 transform: translate(-50%,-50%);
 background: rgba(96,96,96,.8);
 color: #fff;
 font-size: 22px;
 text-align: center;
}
/* ==========================================================================
流用パーツ
========================================================================== */
.contents.main {
   font-size: 16px;
}

.fv {
   margin-bottom: 0;
   padding-bottom: 0;
}

.fv h1 {
 margin-top: 0;
 position: relative;
 font-size: 35px;
}
.fv_im {
 width: 100%;
 max-width: 1000px;
 margin: 0px auto 0;
}

.top_lead {
 max-width: 1000px;
 width: 90%;
 margin: 20px auto 0;
}
.schedule {
   margin-top: 0;
}

.schedule > p.lead {
   margin: 2em 0 1.38em;
   text-align: center;
}
p.lead_2 {
   margin: 2em 0 0;
   text-align: center;
   font-size: 23px;
 font-weight: bold;
}

.schedule h2 {
   padding-bottom: 0;
   margin: 2.5em 0 1em;
   border-bottom: none;
   line-height: 1.6;
   font-size: 28px;
}

.schedule h2 span {
   display: inline-block;
   font-weight: bold;
}

   
/* items
-------------------------------------*/
.schedule .items .item .clm {
   margin-top: 4em;
}

.schedule .items .item .texts {
   padding: 1.5em;
   line-height: 1.6;
}

.schedule .items .item .texts p {
   margin-top: 2em;
}

.schedule .items .item .texts p.texts_title {
   padding: 0.5em;
   margin-top: 0;
   border: 2px solid #fff;
   font-size: 1.50em;
   text-align: center;
}

.schedule .items .item .texts ul li {
   padding-left: 1em;
   text-indent: -1em;
}

.schedule .items .item {
   margin-bottom: 0;
}
.gray_box{position: relative;}
.yymm{margin: 2em auto 0;
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    color: #fd1d97;}

.yymm_gray{position: absolute;
    text-align: center;
    padding: 0.8em;
    font-size: 1.3em;
    font-weight: bold;
    max-width: 700px;
    color: #fff;
    top: 0;
    right: 0;
    width: 100%;
    left: 0;
    margin: 0 auto;}

   
/* btn */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.buttons {
    text-align: center;
}

.btn-hover {
    width: 100%;
    font-size: 2.5em;
    font-weight: 600;
    color: #fff;
    cursor: pointer;
    text-align: center;
    border: none;
    background-size: 300% 100%;
    border-radius: 8px;
    moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    font-style: italic;
    padding: 0.5em 0 0.45em;
}
.lp_fv_cta_btn .btn-hover{
	font-size: 1.8em;
}
.foot_bnr li { 
  text-align: center;
  }

.foot_bnr li img {
  width: 750px;
}
.foot_bnr a {
  display: block;
}
.foot_bnr a:hover{
  opacity: 0.7;
}
.btn-hover:hover {
    background-position: 100% 0;
    moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}

.btn-hover:focus {
    outline: none;
}


.btn-hover.color-1 {
    background-image: linear-gradient(to right, #25aae1, #40e495, #30dd8a, #2bb673);
    box-shadow: 0 4px 15px 0 rgba(49, 196, 190, 0.75);
}
.btn.entry.gray a {
  background-color: #6C6C6C;
}
/* info
-------------------------------------*/
.info {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4em;

    border: 1px solid #fff;
}
.info_inner {
     padding: 3.5em 2em 3em;
}
.info h2 {
    font-size: 20px;
    text-align: center;
	background: #f09cb4;
    color: #fff;
    padding: 0.5em 0 0.3em;
    max-width: 750px;
    margin: 0 auto;
font-weight: bold;
}

.info .lead {
    margin-top: 1.5em;
	margin-bottom: 2em;
    font-size: 15.5px;
	text-align: center;
}

.info .lead li {
    margin-top: 10px;
 line-height: 150%;
}

.info .lead li span {
    margin-left: 1em;
}

.info .lead a {
    color: #fff;
}

.day_wrap {
 max-width: 750px;
 margin: 15px auto 2em;
}
.day_box +.day_box {
 margin-left: 10px;
}
.mb0 {
 margin-bottom: 0 !important;
}  
.play_btn a {
position: relative;
    margin: 15px auto 0;
    padding: 1rem;
    display: block;
    background-color: #ffe500;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    width: 80%;
    height: 48px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 100px;
    box-sizing: border-box;
    line-height: 120%;
    background: #ffe500;
    background: -moz-linear-gradient(left, #ffe500 0%, #ffb300 100%);
    background: -webkit-linear-gradient(left, #ffe500 0%, #ffb300 100%);
    background: linear-gradient(90deg, rgba(226,111,230,1) 0%, rgba(50,151,215,1) 100%);
}
.play_btn a span {
 position: absolute;
    display: block;
    background-image: url(../images/playbtn.webp);
    background-size: 100% 100%;
    width: 20px;
    height: 20px;
 top: 50%;
 transform: translateY(-50%);
 right: 15px;
}
.day_im a {
 display: block;
}
.day_im a:hover {
 opacity: .7;
}
/* recommend
-------------------------------------*/
.recommend {
   display: flex;
   flex-direction: column;
   justify-content: center;
   margin-bottom: 120px;
   padding: 2em 1em;
   height: auto;
   font-size: 28px;
   box-sizing: border-box;
}
.notes {
 padding: 10px!important;
}
.recommend.recommend_before {
    background: transparent;
    border: 3px solid transparent;
    border-image: linear-gradient(to right, #fc8e3d 0%, #ff0576 100%);
    border-image-slice: 1;
}

.recommend p {
   margin-bottom: 1em;
   font-weight: bold;
}

.recommend ul {
   display: flex;
   align-items: center;
   justify-content: center;
}

.recommend ul li:last-child {
   margin-left: 1em;
}

.recommend ul a {
   display: block;
}



/* ==========================================================================
section
========================================================================== */
.section {
   width: 1000px;
}

.section.section_01 {
   margin: 7.50em auto 8em auto;
}

.section.section_02 {
   margin: 4em auto 2em auto;
}

.section h2 {
   margin-bottom: 0.72em;
   font-size: 2.25em;
   text-align: center;
   font-weight: bold;
}

.section .items .item .hd {
   display: flex;
   align-items: center;
   padding-bottom: 1em;
}

.section .items .item .hd .date {
   font-size: 32px;
   font-weight: bold;
}

.section .box {
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 40px;
   margin-top: 40px;
}

.section .box .image {
   width: 534px;
   margin-right: 30px;
   position: relative;
}

.section .items .item .texts {
   align-items: center;
   background: transparent;
   padding: 0;
}

.section .items .item .texts p {
   text-align: center;
}

.section .box .tit {
   font-size: 32px;
   line-height: 1.25em;
}

.section .box .sub {
   margin-bottom: 1em;
   font-size: 24px;
   line-height: 1.25em;
}

.section .items .item .hd .tag {
   margin-right: 1em;
   border-radius: 5px;
   font-size: 20px;
}

.section .box .date_box {
   padding: 0.5em 0;
   margin-bottom: 1em;
   width: 100%;
   border: 1px solid #fff;
   font-size: 24px;
   font-weight: bold;
   line-height: 1;
   box-sizing: border-box;
}

.section .box .normal {
   font-size: 16px;
}

.section.section_03  {
 margin: auto;
 text-align: center;
}
.section.section_03 .image {
   max-width: 728px;
   margin: auto;
}
.image a {
   display: block;
}

/* ==========================================================================
btn
========================================================================== */
.btn a {
   margin-top: 30px;
   display: block;
   background-color: #fff;
   color: #151515;
   font-size: 20px;
   text-align: center;
   width: 340px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   border-radius: 100px;
   padding-left: 10px;
   box-sizing: border-box;
}
.campaign .cp_view .btn a {
 width: 100%;
   background-color: #fff;
   color: #151515;
}

.lp_fv_cta_btn_span span,
.btn a span {
   display: block;
   background-image: url(/../../../ft/teaser/common/images/playbtn.png);
   background-size: 100% 100%;
   width: 20px;
   height: 25px;
   margin-left: 10px;
}



/* ==========================================================================
information
========================================================================== */
.information,
.information div {
   box-sizing: border-box;
}

.information {
   width: 1000px;
   margin: 0 auto;
   padding: 1.50em;
   background: #3b3b3b;
}

.information .info_title {
   margin-bottom: 1em;
   padding: 0.5em;
   border: 2px solid #fff;
   font-size: 1.50em;
   text-align: center;
   line-height: 1.6;
}

.information .info_box {
   display: flex;
}

.information .info_img {
   width: 60%;
   margin-right: 1.50em;
}

.information .info_text {
   width: 40%;
   line-height: 1.6;
}

.information .info_text ul {
   margin-top: 1em;
}

.information .info_text ul li {
   padding-left: 1em;
   text-indent: -1em;
}



/* ==========================================================================
pink
========================================================================== */
.pink {
   width: 1000px;
   margin: 0 auto;
   margin-top: 1em;
   padding: 1.50em 0;
   border: 1px solid #ff0577;
   text-align: center;
   font-size: 1.50em;
   font-weight: bold;
   line-height: 1.6;
   box-sizing: border-box;
}

.pink a {
   margin: 0 auto;
   margin-top: 1em;
   width: 442px;
}



/* ==========================================================================
btn_list
========================================================================== */
.btn_list {
   display: flex;
   width: 937px;
   margin: 0 auto;
   margin-top: 1.50em;
   box-sizing: border-box;
}

.btn_list li {
   width: 50%;
}

.btn_list li:first-of-type {
   margin-right: 2.06em;
}

.btn_list li a {
   background: #fc8e3d;
   background: -moz-linear-gradient(left, #fc8e3d 0%, #ff0576 100%);
   background: -webkit-linear-gradient(left, #fc8e3d 0%, #ff0576 100%);
   background: linear-gradient(to right, #fc8e3d 0%, #ff0576 100%);
   filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fc8e3d', endColorstr='#ff0576', GradientType=1);

   display: flex;
   align-items: center;
   justify-content: center;
   flex-direction: column;

   padding: 0.50em;
   width: 100%;
   border-radius: 1000px;

   color: #fff;
   font-size: 1.25em;
   text-align: center;
   text-decoration: none;
   line-height: 1.4;
   box-sizing: border-box;
}

.btn_list li a p:first-of-type {
   font-size: 1.20em;
}



/* ==========================================================================
program
========================================================================== */
.program {
   width: 100%;
   padding: 3.13em;
   background: #3b3b3b;
   box-sizing: border-box;
}

.program div, .program p, .program ul, .program li {
   box-sizing: border-box;
}

.program ul {
   display: flex;
   flex-wrap: wrap;
   width: 100%;
}

.program ul li {
   display: flex;
   flex-direction: column;
   justify-content: space-between;
}

.program ul li .image img {
   margin-bottom: 0.63em;
}

.program ul li .btn a {
   width: 100%;
   margin-top: 1em;
}




/* ==========================================================================
campaign...
========================================================================== */
.section.section_03 {
   margin: auto;
}

.campaign {
 position: relative;
 margin-top: 6em;
   padding: 2.5em 1.5em;
/*   border: 2px solid #fff;*/
   background: #212121;
   line-height: 1.8;
}

.campaign.cs {
 padding-top: 4em;
}

.campaign h2 {
   position: absolute;
   top: -35px;
   left: 50%;
   transform: translateX(-50%);
   line-height: 130%;
   padding: 15px 105px 12px;
   border-radius: 6px;
   background: #ff0a74;
   font-size: 36px;
}


.campaign .caption_1 {
   text-align: center;
   font-size: 26px;
   line-height: 150%;
   font-weight: bold;
}

.campaign .caption_2 {
   margin-top: 1.5em;
   text-align: center;
   font-size: 22px;
   line-height: 150%;
   font-weight: bold;
}

.campaign .caption_3 {
   position: relative;
   margin-top: 2.5em;
   padding-bottom: 1.5em;
   text-align: center;
   font-size: 20px;
}

.campaign .caption_3::before {
    content: '';
    display: block;
    width: 60%;
    height: 2px;
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #ff0576;
    z-index: 1;
}

.campaign .twitter_btn a {
   display: block;
   padding: 0.8em 0;
   margin: 1em auto 0;
   margin-top: 2em;
   max-width: 300px;
   background: #1e9bf0;
   border-radius: 100px;
   color: #fff;
   font-size: 20px;
   text-decoration: none;
   text-align: center;
}
.notes {
 max-width: 750px!important;
 width: 100%!important;
 
}
.btn.entry a {
 max-width: 500px;
    margin: 30px auto 0;
    background: #fd1d97;
    color: #fff;
    font-size: 20px;
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 100px;
    padding-left: 10px;
    box-sizing: border-box;
}
.entry_how {
 margin-top: 10px;
 text-align: center;
}
.entry_how a {
 color: #f09cb4;
}
a.lp_fv_cta_btn_span span,
.btn.entry a span {
 background-image: url("../images/ic.png")
}
.live_notes {
   font-size: 17px;
   color: #fe0774;
}

.tokuten_scroll {
    padding: 2em;
    background: #3b3b3b;
}

.tokuten_scroll .inn {
    padding-right: 2em;
    height: 230px;
    overflow-y: scroll;
    text-align: left;
}

.tokuten_scroll .inn .inn_box {
    margin-bottom: 2em;
}

.tokuten_scroll .inn .inn_box > ul > li {
    text-indent: -1em;
    margin-left: 1em;
    margin-bottom: 0.3em;
}

.campaign .btn  {
    margin-top: 3em;
}

.campaign .btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 0.7em 0;
    width: 340px;
    background-color: #ff8f3c;
    border-radius: 100px;
    color: #fff;
    font-size: 20px;
    text-align: center;
    text-decoration: none;
    line-height: 1;
}


.campaign .btn.yet a {
    background: none;
    border: 2px solid #fff;
    color: #fff;
}

.campaign .btn.yet {
    margin-top: 30px;
}

.cp_goods {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 80px;
}

.cp_goods.center {
    justify-content: center;
}

.cp_goods.center .cp_view {
    margin-top: 25px;
}

.cp_view,.cp_goods {
    padding: 0 60px;
}

.cp_goods > div {
   width: 48.5%;
}

.goods_copy {
   font-size: 1px;
   color: #9c9c9c;
   text-align: left;
}

.cp_goods_ttl {
   margin-top: 10px;
   font-size: 22px;
   font-weight: bold;
}

.goods_list {
   margin-top: 8px;
   font-size: 16px;
   text-align: left;
}

.goods_list span {
   font-size: 14px;
}

.goods_list > li {
   position: relative;
   padding-left: 12px;
   line-height: 130%;
}

.goods_list > li:before {
   position: absolute;
   display: block;
 content: '';
 width: 6px;
 height: 6px;
 background: #fff;
 left: 0;
 top: 6px;
}

.goods_list > li:nth-of-type(n+2) {
   margin-top: 7px;
}

.cp_view.pc {
 display: flex;
 justify-content: space-between;
 align-items: flex-end;
 margin-top: 15px;
}

.cp_view.pc li {
 width: 48.5%;
}

.cp_view li p {
 font-size: 15px;
 color: #a8a8a8;
}

.campaign .cp_view .btn {
 margin-top: 0;
}

.entry_end {
     margin-bottom: 50px;
    padding: 20px 0 15px;
    background: #555;
    font-size: 20px;
    font-weight: bold;
}

.p101_banner {
 width: 95%;
 max-width: 800px;
 margin: 120px auto 50px;
 text-align: center;
}

.p101_btn {
 width: 515px;
 margin: 50px auto 0;
}

.p101_btn a,.p101_banner a {
 display: block;
}

.p101_btn a:hover,.p101_banner a:hover {
 opacity: .7;
}

.related {
 margin-top: 50px;
 padding-top: 50px;
 border-top: 1px solid #888888;
}
.related >.flex {
 margin-top: 50px;
}
.related >.flex a {
 display: block;
 text-decoration: none;
 color: #fff;
}
.contents_title {
 margin-top: 5px;
}
.related >.flex > li {
 width: 32%;
 margin-right: 2%;
}
.flex {
 display: -webkit-flex;
 display: flex;
 justify-content: space-between;
}
.flex .related_im {
 width: 49%;
} 
.flex .related_info {
 width: 49%;
 text-align: center;
} 
.flex .related_info .btn a {
 width: 100%;
} 
.related h3 {
 font-size: 26px;
 font-weight: bold;
 line-height: 150%;
}
.related .related_lead {
 margin-top: 15px;
 font-size: 20px;
 color: #ff0a74;
 font-weight: bold;
}
.related_caption {
 margin-top: 15px;
}
.apply {
 width: 93%;
 max-width: 500px;
 margin: 50px auto 0;
}
.apply a {
 position: relative;
 display: block;
 padding: 1em;
 background-color: #ff1171;
  font-size: 28px;
 border-radius: 100px;
 text-align: center;
 font-weight: bold;
}
.apply a::after {
 position: absolute;
 display: block;
 content: '';
 right: 15px;
 top: 50%;
 width: 20px;
 height: 27px;
 transform: translateY(-50%);
 background:url("../images/ic.png") no-repeat 0 0/20px;
}
.related_btn {
 margin: auto;
 width: 650px;
}
.related_btn a {
 position: relative;
 display: block;
 padding: 1.5em 1em 1.3em;
 font-size: 20px;
 font-weight: bold;
 color: #0091fe;
 /* border: 4px solid #0091fe; */
 text-decoration: none;
	background: #fff;
	border-radius: 8px;
}
.related_btn a::before {
 position: absolute;
 display: block;
 content: '';
 right: 15px;
 top: 50%;
 width: 40px;
 height: 40px;
 transform: translateY(-50%);
 background:url("../images/ic_1.png") no-repeat 0 0/40px;
}

.btn_box {
 margin-top: 50px;
}
.btn_box li:nth-of-type(n+2) {
 margin-top: 15px;
}
.related_btn.btn2 a {
 color: #58b6ff;
 border: 4px solid #58b6ff;
}
.related_btn.btn3 a {
color: #e26fe6;
background: linear-gradient(90deg, rgba(226,111,230,1) 0%, rgba(50,151,215,1) 100%);
border-radius: 8px !important;
padding: 4px;
}
.related_btn.btn3 a .grad_box{
 background: #ffffff;
 border-radius: 8px;
 padding: 30px;
 font-weight: bold;
}

.related_btn.btn4 a {
 color: #fff;
 border: none;
 background: #f09cb4;
}
.related_btn.btn2 a::before {
 background:url("../images/ic_1.png") no-repeat 0 0/40px;
}
.related_btn.btn3 a::before {
 background:url("../images/ic_3.png") no-repeat 0 0/40px;
}
.related_btn.btn4 a::before {
 background:url("../images/ic_s.png") no-repeat 0 0/40px;
}
/* ==========================================================================
ページ下部...end
========================================================================== */
.end .logo,.end .backtop {
 display: none!important;
}

.position_end {
 padding-bottom: 11em;
}

#end_link {
 display: block;
 text-align: center;
}

.end_caption {
 font-size: 26px;
 font-weight: bold;
}

.end_btn {
 margin: 15px auto 0;
 width: 515px;
}

.end_btn a {
 display: block;
}
#footer_lemino_inc_3{margin-top: -10em;}

/*動画*/
.movie-content-wrap {
  width: 100%;
  max-width: 260px;
 margin: 2em auto 0;
}
.movie-content-wrap img {
  width:100%;
}
.movie-content-wrap a {
  display: block;
}
.movie-content-wrap a:hover {
  opacity: .8;
}

@media print,
screen and (min-width: 813px) {
#header_inc_3 header .logo a {
  width: 150px!important;
 }
.related >.flex > li:nth-of-type(3n) {
 margin-right: 0;
}
.related_btn.btn2 a {
 padding: 1em 1em 0.5em;
}
   .kv h1 {
     padding-top: 10px;
     height: 155px;
  }
 
   .btn.lh a {
      line-height: 48px;
   }

   .schedule h2.big {
      font-size: 40px;
      margin: 0.5em 0;
   }

   .schedule h2 span {
      font-size: 0.7em;
   }

   /* program
   -------------------------------------*/
   .program ul li {
      width: 30.5%;
      margin-right: 4.25%;
      margin-bottom: 4.25%;
   }

   .program ul li:nth-child(3n) {
      margin-right: 0;
   }

   .program ul li:nth-child(n+7):nth-child(-n+9) {
      margin-bottom: 0;
   }


   /* objects
   -------------------------------------*/
   .objects .mc20 {
      top: 116px;
   }

   .objects .mc24 {
      background-image: url(../../../ft/teaser/common/images/objects/24_2.png);
      width: 49px;
      height: 21px;
      top: 204px;
      left: -600px;
   }

   .objects .mc23 {
      top: 100px;
   }

   .objects .mc27 {
      top: 170px;
   }

   .objects .mc13_3 {
      top: 310px;
   }

   .objects .mc23_2 {
      top: 410px;
   }

   .objects .mc34 {
      top: 410px;
   }

   .objects .mc3_2 {
      top: 510px;
   }

   .objects .mc12 {
      background-image: url(../../../ft/teaser/common/images/objects/12.png);
      width: 122px;
      height: 76px;
      top: 70px;
      left: -710px;
   }

   .objects .mc24_2 {
      width: 75px;
      height: 20px;
      top: 212px;
      left: -592px;
   }

   .objects .mc0 {
      width: 122px;
      height: 47px;
      top: 234px;
      left: 660px;
   }

   .objects .mc18 {
      width: 65px;
      height: 66px;
      top: 330px;
      left: 584px;
   }
 
/* end*/
 
   .position_end {
      padding-bottom: 65px;
   }

   #end_link {
      position: absolute;
      display: block;
      bottom: 3em;
      left: 50%;
      transform: translateX(-50%);
      text-align: center;
      z-index: 1000;
   }
}



@media only screen and (max-width: 812px) {
 .fv_im {
  margin-top: 20px;
 }
 .btn.entry a {
  height: 50px;
  font-size: 18px;
 }
 a.lp_fv_cta_btn_span span, .btn.entry a span {
  width: 15px;
  height: 20px;
 }
 .entry_how {
  margin-top: 5px;
  font-size: 13px;
 }
 .flex_box {
  -webkit-flex-direction: column;
  flex-direction: column;
 }
 .flex_box > * {
 width: 90%!important;
  max-width: 400px;
 }
 .related >.flex {
 margin-top: 50px;
}
.related >.flex a {
 display: block;
 text-decoration: none;
 color: #fff;
}
.contents_title {
 margin-top: 5px;
 font-size: 10px;
}
.related >.flex > li {
 width: 33%;
 margin-right: .5%;
}
.related >.flex > li:nth-of-type(3n) {
 margin-right: 0;
}
 .lp_cta_fixed .a_txt p {
  width: 100%;
  padding: 1%;
 }
 .lp_cta_fixed .a_txt {
  display: block!important;
  padding: 25px 0;
 }
 .footer_fix  {
  margin: 4px auto!important;
 }
 .lp_cta_fixed .a_txt p {
  font-size: min(4.5vw, 22px);
 }
 #fin_inner {
}
#fin_inner span {
    width: 100%;
    margin: 160px auto 0;
    padding: 2em 0 2em;
    font-size: 20px;
}
 
   .fv h1 {
      font-size: 4.8vw;
   }
 
   .schedule h2 {
      position: relative;
      margin: 2em 0 1em;
      font-size: 18px;
      border-bottom: none;
   }

   .schedule h2 span {
      font-size: 0.6em;
      margin-bottom: 0.5em;
   }

   .schedule h2.big {
      margin: 2em 0;
   }

   /* .schedule h2::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: 0;
      height: 1px;
      width: 15%;
      border-bottom: 1px solid #ef0670;
      transform: translateX(-50%);
   } */

   .schedule .items {
      margin: 0;
   }

   .schedule > p.lead {
      text-align: center;
      font-size: 14px;
   }

 p.lead_2 {
  font-size: 16px;
  line-height: 130%;
 }
 
   .section {
      width: 100%;
   }

   .section.section_01 {
      margin: 6em auto;
   }
   
   .section.section_02 {
      margin: 0em auto 4em auto;
   }
 
   .section.section_03 {
      margin-bottom: 4em;
   }

   .section h2 {
      font-size: 1.50em;
   }

   .btn a {
      width: 100%;
   }

   .recommend {
/*
      width: 100vw;
      margin-left: calc(-50vw + 50%);
      margin-bottom: 0;
      border-radius: 0;
*/
      width: 100%;
      margin-right: auto;
      margin-left: auto;
      font-size: 17px;
   }

/* info
-------------------------------------*/
.info {
    margin-left: 3vw;
    margin-right: 3vw;
    margin-top: 3em;
}
.info_inner {
    padding: 2.5em 1em 2em;
}

.info h2 {
    font-size: 16px;
    
}

.info .lead {
    font-size: 12px;
}

.info .lead a {
    color: #fff;
}


.day_wrap {
 max-width: 500px;
 width: 90%;
}
.day_box +.day_box {
 margin-left: 0;
 margin-top: 30px;
}
.mb0 {
 margin-bottom: 0 !important;
}  
.play_btn a {
 font-size: 13px;
    height: 40px;
 padding-top: 12px;

}
.play_btn a span {
 position: absolute;
    display: block;
    background-image: url(../images/playbtn.webp);
    background-size: 100% 100%;
    width: 20px;
    height: 20px;
 top: 50%;
 transform: translateY(-50%);
 right: 15px;
}
	.yymm_gray{padding: 1.2em;
    font-size: 1.1em;}
   
   /* information
   -------------------------------------*/
   .information {
      width: 88%;
   }

   .information .info_box {
      flex-direction: column;
   }

   .information .info_title {
      font-size: 1em;
   }

   .information .info_img,
   .information .info_text {
      width: 100%;
   }

   .information .info_img {
      margin-right: 0;
   }

   .information .info_text {
      margin-top: 1em;      
   }

   .information .info_text {
      font-size: 0.94em
   }
   

   /* pink
   -------------------------------------*/
   .pink {
      width: 88%;
      font-size: 1.2em;
   }

   .pink a {
      width: 90%;
   }

   
   /* items
   -------------------------------------*/
   .schedule .items .item .texts {
      font-size: 0.94em;
   }

   .schedule .items .item .texts p.texts_title {
      font-size: 1rem;
   }

   
   /* btn_list
   -------------------------------------*/
   .btn_list {
      flex-direction: column;
      width: 80%;
      margin-bottom: 5em;
   }

   .btn_list li {
      width: 100%;
   }

   .btn_list li:first-of-type {
      margin-right: 0;
      margin-bottom: 1.50em;
   }

   
   /* section items
   -------------------------------------*/
   .section .items .item  {
      margin-bottom: 5em;
   }

   .section .items .item .hd .date {
      font-size: 22px;
   }

   .section .box {
      flex-direction: column;
      margin-top: 0;
      margin-bottom: 0;
   }


   .section_02.section .box {
      margin-bottom: 60px;
   }

   .section .items .item .image {
      width: 100%;
      margin-top: 3vw;
      margin-right: 0;
      margin-bottom: 2em;
   }

   .section .box .tit {
      font-size: 24px;
   }

   .section .box .sub {
      font-size: 18px;
   }

   .section .box .date_box {
      font-size: 18px;
   }

   .section .box .btn {
      width: 100%;
   }

   .section .box .btn a {
      padding: 1.5em 0;
      padding-left: 10px;
   }
   

   .section.section_03 .image {
      margin: 0 20px;
   }
 
 
   /* program
   -------------------------------------*/
   .program {
      padding: 1.5em;
   }

   .program ul li {
     width: 47%;
     margin-right: 6%;
     margin-bottom: 10%;
  }

  .program ul li:nth-child(2n) {
     margin-right: 0;
  }

  .program ul li:last-child {
     margin-bottom: 0;
  }

  .program ul li .btn a {
      padding-right: 0.5em;
      font-size: 0.9em;
   }

   .program ul li .btn span {
      width: 1.8em;
      height: 1.8em;
      margin-left: 0.2em;
      background-size: contain;
      background-repeat: no-repeat;
   }

 
    /* 追加campaign
   -------------------------------------*/
    .campaign {
/*     margin-left: 6vw;*/
/*     margin-right: 6vw;*/
     margin-top: 4em;
     padding: 2em 1.5em 2em;
    }

    .campaign h2 {
     width: 35%;
     padding: 15px 5px 12px;
    }
 
    .campaign .caption {
     margin-top: 3em;
     font-size: 16px;
     text-align: left;
    }

    .campaign .twitter_btn a {
     font-size: 16px;
    }
 
    .tokuten_scroll {
     font-size: 12px;
		padding: 1.5em;
    }
 
    .tokuten_scroll .inn {
     padding-right: 0.5em;
    }
 
     .campaign .btn a {
     width: 100%;
     font-size: clamp(16px, 5vw, 20px);
    }
 
 .campaign .caption_1 {
  font-size: 22px;
 }
 
 .campaign .caption_2 {
  text-align: left;
  font-size: 18px;
 }
 
  .campaign .caption_3 {
  text-align: left;
  font-size: 16px;
 }
 
 .campaign .caption_3::before {
  width: 100%;
 }
 
 .cp_view, .cp_goods {
  padding: 0;
 }
 
 .cp_goods {
  -webkit-flex-direction: column;
  flex-direction: column;
 }
 
 .cp_goods > div {
  width: 100%;
 }
 
 .goods_copy {
  text-align: right;
 }
 
 .cp_goods_ttl  {
  margin-top: 3px;
  font-size: 20px;
 }
 
 .goods_list {
  font-size: 14px;
 }
 
 .goods_list span {
  font-size: 12px;
  letter-spacing: -0.5px;
 }
 
 .campaign .cp_view {
   margin-top: 20px;
 }
 
 .campaign .cp_view p {

   font-size: 12px;
  color: #a8a8a8;
 }
 
 .cp_goods > div:nth-of-type(n+2) {
  margin-top: 60px;
 }
 
 .campaign .subtitle {
  font-size: 24px;
 }
 
 .entry_end {
  font-size: 18px;
 }
 
 .p101_btn {
  width: 92%;
  max-width: 500px;
  margin-top: 35px;
 }
 
 .p101_banner {
  margin-top: 70px;
 }
 
 /* ==========================================================================
ページ下部...end
========================================================================== */
.position_end {
 padding-bottom: 1em;
}
#footer_lemino_inc_3{margin-top: 0;}
#end_link {
 width: 100%;
 margin-top: 70px;
 z-index: 1000;
}

.end_caption {
 font-size: 22px;
}

.end_btn {
 margin: 15px auto 0;
 width: 90%;
 max-width: 500px;
}

.end_btn a {
 display: block;
}
 
 .kv h1::before {
 width: 52%;
 max-width: 220px;
 height: 200px;
 background: url("/cp/0000014/images/premium_top.png") no-repeat 0 0/100%;
 top: -40%;
 left: -15px;
 
}
 
 .end {
  padding-top: 0!important;
 }
	.yymm{font-size: 0.9em;margin: 1em auto 0;}
 .movie-content-wrap {
  max-width: 230px;
 }
 
 .movie-content-wrap p {
  font-size: 14px;
 }
 .objects .mc11 {
  display: none !important;
 }
 .related {
  width: 93%;
  margin: 30px auto 0;
  padding-top: 0;
 }
 .apply a {
  font-size: 20px;
 }

 .flex .related_im,.flex .related_info {
  width: 100%;
 }
 .related h3 {
  font-size: 18px;
  margin-top: 15px;
  line-height: 120%;
 }
 .related .related_lead {
  font-size: 16px;
 }
 .related_caption {
  font-size: 14px;
 }
 .btn a {
  font-size: 18px;
 }
 .related_btn {
  width: 100%;
 }
 .related_btn a {
  font-size: 14px;
 }
 .related_btn a::before,
 .related_btn.btn2 a::before,
 .related_btn.btn3 a::before,.related_btn.btn4 a::before  {
  right: 10px;
  width: 25px;
  height: 25px;
  background-size: 25px
 }
.related_btn.btn3 a .grad_box{
 background: #ffffff;
 border-radius: 8px;
 padding: 10px;
 font-weight: bold;
}    
}