@charset "UTF-8";
/* CSS Document */

/*セクション間余白----------------------------------------------------------- */
section {
  padding: 120px 0;
}

footer {
  padding: 60px 0;
}

/*テキスト関連----------------------------------------------------------- */
.highlight {
  background: -webkit-linear-gradient(transparent 60%, #ffd200 50%);
  background: -o-linear-gradient(transparent 60%, #ffd200 50%);
  background: linear-gradient(transparent 60%, #ffd200 50%);
  font-weight: bold;
}

/*リンク色----------------------------------------------------------- */
a:link,
a:visited {
  text-decoration: none;
}
/*はみ出し画像中央----------------------------------------------------------- */
.wic_wrap {
  overflow-x: hidden;
}
.wic img {
  width: auto;
  max-width: unset;
}

.wic1 {
  margin-left: calc(50% - 1500px);
}
.wic1 img {
  width: 3000px;
  max-width: 3000px;
}


.wic2 {
  margin-left: calc(50% - 600px);
}
.wic2 img {
  width: 1200px;
  max-width: 1200px;
}

.wic3 {
  margin-left: calc(50% - 800px);
}
.wic3 img {
  width: 1600px;
  max-width: 1600px;
}

/* 共通部分----------------------------------------------------------- */
.num {
  width: 28px;
  height: 28px;
}
.sec_height {
  padding-top: 95px;
  margin-top: -95px;
}
/*Header----------------------------------------------------------- */
header {
  height: 95px;
  width: 100%;
  background-color: var(--color_wt);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}
header .container {
  height: 100%;
}
header .logo {
  height: 51px;
}
.header_logo {
  width: auto;
}
.header_logo img {
  height: 100%;
}
.header_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: inherit;
}
.header_nav {
  display: flex;
  align-items: center;
}
.header_list {
  font-size: 14px;
  padding: 15px;
  display: block;
}
.header_btn a,
.header_btn p {
  padding: 15px 0;
}

.header_drawers {
  position: relative;
  width: 50px;
  height: 47px;
  cursor: pointer;
  display: none;
  z-index: 999;
}
.header_drawers::after {
  content: 'MENU';
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  font-size: 12px;
}
.header_drawers span {
  position: absolute;
  background-color: var(--color2);
  width: 30px;
  height: 3px;
  left: 50%;
  transform: translateX(-50%);
  transition: all .4s ease 0s;
}
.header_drawers span:nth-child(1) {
  top: 0;
}
.header_drawers span:nth-child(2) {
  top: 10px;
}
.header_drawers span:nth-child(3) {
  top: 21px;
}
.header_drawers p::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  font-size: 12px;
}
#finish .header_btn button {
  font-size: 20px;
  width: 226px;
  padding-block: 10px;
  text-align: center;
  border-bottom: 5px solid #c1c1c1;
}
@media screen and (max-width: 1229px) {
  .header_menus {
    display: flex;
    justify-content: end;
    align-items: center;
    gap: 10px;
    height: 100%;
  }
  .header_nav {
    display: none;
    position: absolute;
    width: 100%;
    /* height: inherit; */
    top: 70px;
    left: 0;
    background-color: var(--color_wt);
    z-index: 999;
    padding: 30px;
    text-align: center;
  }
  .header_nav li::before {
    content: none;
  }
  .header_list {
    display: block;
    padding: 20px;
  }
  .header_drawers {
    display: block;
  }
  .header_drawers.is-open::after {
    content: 'CLOSE';
  }
  .header_drawers span.is-open {
    width: 40px;
    left: 43%;
  }
  .header_drawers span:nth-child(1).is-open {
    transform: rotate(-45deg) translateX(-50%);
  }
  .header_drawers span:nth-child(2).is-open {
    display: none;
  }
  .header_drawers span:nth-child(3).is-open {
    top: 29px;
    transform: rotate(45deg) translateX(-50%);
  }
}
/*MV----------------------------------------------------------- */
.mv {
  position: relative;
  margin-top: 95px;
}
#finish .mv_txt,
#finish .mv::after {
  position: absolute;
}
#finish .mv::after {
  content: '';
  /*background-color: rgba(0, 0, 0, .7);*/
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
}
#finish .mv_txt {
  font-size: 45px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--color_wt);
  z-index: 12;
  width: 100%;
  text-align: center;
}
.mv_btn {
  position: absolute;
  bottom: 75px;
  min-width: 458px;
  width: 37%;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 1229px) {
  #finish .mv_txt {
    font-size: 32px;
  }
  
}
/*sec01----------------------------------------------------------- */
.sec01 {
  background: url(../img/pc_sec01_bg.png) no-repeat center center / cover;
}
.sec01_move iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}
/*sec02----------------------------------------------------------- */
.sec02 {
  background: url(../img/pc_sec02_bg.png) no-repeat center center / cover;
}
.sec02 h2 {
  margin-top: -200px;
}
.sec02_sub-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.sec02_video video,
.sec03_video video {
  width: 45%;
}
/*sec03----------------------------------------------------------- */
.sec03 {
  background-image: repeating-linear-gradient(-45deg, #FFE8EA 0px, #ffe8eb 20px, #feffff 20px, #feffff 40px, #daf7fa 40px, #daf7fa 60px, #feffff 60px, #feffff 80px);
}
.sec03 h2 {
  margin-top: -150px;
}
.sec03_txt {
}
.content1,
.content2 {
  transition: all .3s;
  display: none;
}
.content1.show,
.content2.show {
  display: block;
}
.sec03_box {
  border-radius: 15px;
}
.tab-wrap {
  display: flex;
  padding-top: 150px;
}
.tab-wrap {
  justify-content: space-between;
}
.tab-wrap_s {
  display: none;
}
.sec03 .tab {
  width: 49%;
  padding: 30px 0;
  border-radius: 10px 10px 0 0;
  background-color: var(--color7);
  transition: all .3s;
}
.sec03 .tab {
  position: relative;
  cursor: pointer;
}
.sec03 .tab::before {
  content: '';
  position: absolute;
  max-width: 280px;
  width: 100%;
  height: 100%;
  top: -70px;
  left: 50%;
  transform: translateX(-50%);
}
.sec03 .tab1::before {
  background: url(../img/sp_sec03_tab01.png) no-repeat center center / contain;
}
.sec03 .tab2::before {
  background: url(../img/sp_sec03_tab02.png) no-repeat center center / contain;
}
.sec03 .tab1.active,
.sec03 .tab2.active {
  background-color: var(--color6);
}
.sec03_content-txt {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}
.sec03_items {
  padding: 45px 0 120px;
}
.sec03_item {
  position: relative;
}

.sec03_item_head {
  position: absolute;
  max-width: 235px;
  width: 100%;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
}
.sec03_box {
  padding-top: 90px;
}
.sec03_img {
  width: 80%;
  margin: 0 auto;
}
.sec03_sub-box {
  background-color: var(--color5);
  border-radius: 15px;
}
.sec03_tab02-box {
  width: 60%;
  margin-inline: auto;
}
.sec03_tab02-head {
  padding-block: 20px;
  background-color: var(--color1);
  border-radius: 15px 15px 0 0;
}
.sec03_tab02-wrap {
  border: 3px solid var(--color1);
  border-top: none;
  border-radius: 0 0 15px 15px;
  padding: 45px 30px;
}
.sec03_tab02-item {
  text-align: left;
}
.sec03_check {
box-sizing: border-box;	box-sizing: border-box;
cursor: pointer;	cursor: pointer;
width: fit-content;
display: inline-block;
}
.sec03_link {
width: fit-content;
margin: 0 auto;
}	
.sec03_link a {
  text-decoration: underline;
  display: inline-block;
  font-size: 22px;
}
.sec03_check-input1,
.sec03_check-input2 {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}
.sec03_check-input1:checked + .sec03_check-txt::after,
.sec03_check-input2:checked + .sec03_check-txt::after {
  opacity: 1;
}
.sec03_check-txt {
  position: relative;
  padding-left: 45px;
  font-weight: 700;
  font-size: 20px;
  display: block;
  width: fit-content;
  margin-inline: auto;
}
.sec03_check-txt::before,
.sec03_check-txt::after {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.sec03_check-txt::before {
  width: 30px;
  height: 30px;
  border: 2px solid var(--color2);
}
.sec03_check-txt::after {
  content: '\f00c';
  font-family: "Font Awesome 5 Free";
  color: var(--color1);
  font-size: 30px;
  opacity: 0;
  transition: opacity .3s ease 0s;
}
.sec03_item-img {
  width: 50%;
  margin: 0 auto;
}

.sec03_sub-box button {
  background-color: #dedddd;
}

@media screen and (max-width: 1229px) {
  .sec03_tab02-box {
    width: 100%;
  }
}
/*sec04----------------------------------------------------------- */
.sec04 {
  background: url(../img/pc_sec04_bg.png) no-repeat center center / cover;
}
.sec04 h2 {
  margin-top: -182px;
}
.sec04_items {
  margin: 0 auto;
}
.sec04_box {
  background-color: var(--color5);
  border-radius: 15px;
}
/*sec05----------------------------------------------------------- */
.sec05 h2 {
  margin-top: -200px;
}
.sec05_q,
.sec05_q-txt {
  display: flex;
}
.sec05_q-txt,
.sec05_a-txt {
  gap: 10px;
}
.sec05_q {
  align-items: center;
  justify-content: space-between;
  padding: 20px;
  border-radius: 20px;
  transition: all .5s;
  gap: 10px;
}
.sec05_q.is-open {
  border-radius: 20px 20px 0 0;
}
.sec05_q-txt {
  align-items: center;
}
.sec05_q-txt p:first-child,
.sec05_a-txt p:first-child {
  width: 28px;
}
.sec05_q-txt p:last-child,
.sec05_a-txt p:last-child {
  width: calc(100% - 28px);
}
.sec05_arw {
  transition: all .4s;
  transform: rotate(180deg);
}
.sec05_q.is-open .sec05_arw {
  transform: rotate(0);
}
.sec05_a {
  display: none;
  padding: 20px;
  border-radius: 0 0 20px 20px;
}
.sec05_a-txt {
  display: flex;
}
/*sec06----------------------------------------------------------- */
.sec06 h2 {
  margin-top: -180px;
}
.sec06_wrap {
  height: 300px;
  width: 100%;
  overflow: auto;
  padding: 15px;
}
.sec06_wrap a {
  cursor: pointer;
  color: blue;
  text-decoration: underline;
}
.simplebar-track.simplebar-horizontal {
  background-color: var(--color5);
  max-width: 372px;
  margin: 0 auto;
  height: auto;
  border-radius: 0;
}
.simplebar-track {
  background: #c1c1c1;
  width: 12px !important;
}
.simplebar-scrollbar::before {
  position: absolute;
    content: '';
    background: var(--color_bk);
    border-radius: 0;
    left: 0;
    right: 0;
}
.sec06 .simplebar-content {
  margin: 15px;
}
.sec06_txt-wrap01,
.sec06_txt-wrap02 {
  display: flex;
  gap: 10px;
}
.sec06_txt-wrap01 p {
  width: calc(100% - 2rem);
}
.sec06_txt-wrap02 p {
  width: calc(100% - 3.5rem);
}
.sec06_txt-wrap01 .sec06_txt-in,
.sec06_txt-wrap01 .sec06_txt-in02,
.sec06_txt-wrap01 .sec06_txt-in03 {
  width: 2rem;
}
.sec06_txt-wrap02 .sec06_txt-in,
.sec06_txt-wrap02 .sec06_txt-in02,
.sec06_txt-wrap02 .sec06_txt0in03 {
  width: 3.5rem;
}
.sec06_txt-in {
}
.sec06_txt-in02 {
  margin-left: 2rem;
}
.sec06_txt-in03 {
  margin-left: 3rem;
}

/*sec07---------------------------------------------------------- */
.sec07 {
  background: url(../img/pc_sec07_bg.jpg) ;
  background-repeat: repeat-y;
}


/*Footer----------------------------------------------------------- */
.footer_logo {
  margin-inline: auto;
  max-width: 136px;
  width: 100%;
}
.footer_links {
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer_link a {
  color: inherit;
  font-size: 16px;
  padding: 5px 15px;
}
.footer_link:first-child a {
  border-right: 1px solid var(--color2);
}
footer small {
  display: block;
  font-size: 14px;
}


/*動画部分----------------------------------------------------------- */
.youtube_short{
 width: 80%; /* 伸縮する横幅 */
 max-width: 360px; /* 最大の横幅 */
 margin: auto; /* 画面の中央に配置 */

}
.youtube_short iframe{
 aspect-ratio: 9 / 16;
 width: 100%;
 height: 100%;
padding-top: 30px;
}

/*動画部分_ver/----------------------------------------------------------- */
/*.movies{
 width: 80%; 
 max-width: 360px;
 margin: 0; /

}
*/
/*
.RVideoPF-Player-BCPlayer{
height: auto!important;

}


.movies iframe{
 aspect-ratio: 9 / 16;
 width: 100%;
 height: 100%;
padding-top: 30px;
}
*/

/*受賞関連----------------------------------------------------------- */

.prize_title {
display: block;
width: 100%;
max-width: 600px;
display: -webkit-box;
display: flex;
margin: 40px auto 0;
flex-wrap: wrap;
box-sizing: border-box;
padding: 0 20px
}
.ribbon {
 width: 100%;
  position: relative;
  height: 48px;
  text-align: center;
  padding: 10px 30px;
  font-size: 20px;
  background: #e72260;
  color: #FFF;
  box-sizing: border-box;
  margin: 0 auto;
  font-weight: bold;
}

.ribbon:before, .ribbon:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon:before {
  top: 0;
  left: -1px;
  border-width: 24px 0px 24px 24px;
  border-color: transparent transparent transparent #fff;
  border-style: solid;
}

.ribbon:after {
  top: 0;
  right: -1px;
  border-width: 24px 24px 24px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

.prize_info{
 text-align: center;
display: block;
margin: 20px auto;
font-size: 24px;
font-weight: bold;
}

.prize_info span{
 color: #e72260;
}


.movie_wrapper_01,.movie_wrapper_02 {
width: 100%;
margin: 0 auto 80px;
display: -webkit-box;
display: flex; 
flex-wrap: wrap;
}
.movie_wrapper_03{
width: 100%;
margin: 0 auto 80px;
position: relative;
}



.movie_wrapper_01 .movie_item{
width: 100%;
max-width:360px;
margin: 0 auto 40px;
display: -webkit-box;
display: flex;
flex-wrap: wrap;
-webkit-box-pack: center;
justify-content: center;
}
.user_name{
 color: #000000;
font-size: 24px;
font-weight: bold;
display: block;
}
.movie_wrapper_02 .movie_item{
width: calc(100% /3 - 20px);
max-width:360px;
margin: 0 auto 40px;
display: -webkit-box;
display: flex;
flex-wrap: wrap;
-webkit-box-pack: center;
justify-content: center;
}

/*
.movie_wrapper_03 label {
  position: absolute;
  display: table;
  left: 50%;
  bottom: 0;
  margin: 0 auto;
  width: 200px;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  border-radius: 5px;
  background-color: #e72260;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
}

.movie_wrapper_03 label::before{
  content: 'もっと見る';
}

.movie_wrapper_03 input[type="checkbox"]:checked ~ label::before {
  content: '閉じる';
}

.movie_wrapper_03 input[type="checkbox"]{
  display: none;
}
.movie_wrapper_content {
    position: relative;
    height: 640px;
    overflow: hidden;
    transition: max-height 1s;
	width: 100%;
display: -webkit-box;
display: flex; 
flex-wrap: wrap;
}

.movie_wrapper_content::before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 75px;
  background: linear-gradient( rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, #fff 100%);
}

.movie_wrapper_03 input[type="checkbox"]:checked ~ .movie_wrapper_content::before {
  display: none;
}

.movie_wrapper_03 input[type="checkbox"]:checked ~ .movie_wrapper_content {
  height: auto;
}

*/

.movie_wrapper_content {
    position: relative;
    height: auto;
    max-height: 1000px;
    overflow: hidden;
    transition: max-height 1s;
display: -webkit-box;
display: flex; 
flex-wrap: wrap;
}
.movie_wrapper_content::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
      height: 140px;
    transition: 1s;
    background: linear-gradient(to bottom, transparent 0%, #ffffff 100%);
}
.movie_wrapper_content.open:after {
    z-index: -1;
    opacity: 0;
}
.more__btn {
    display: block;
    margin: 20px auto 0;
    padding: 8px 40px;
    border: 0;
    color: #ffffff;
    background-color: #e72260;;
    cursor: pointer;
}


.movie_wrapper_03 .movie_item{
width: calc(100% /4 - 20px);
max-width:360px;
margin: 0 auto 40px;
display: -webkit-box;
display: flex;
flex-wrap: wrap;
-webkit-box-pack: center;
justify-content: center;
}
.user_name{
 color: #000000;
font-size: 24px;
font-weight: bold;
display: block;
}

.movie_wrapper_02 .user_name{
font-size: 14px;
}


.movie_wrapper_03 .user_name{
font-size: 14px;
margin-bottom: 10px;
}







.movie_item img{
width: 100%;
height: auto;

}



.thanks_text{
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
 margin: 0 auto;
font-size: 24px;
font-weight: bold;
color: #e72260;
}
 
.thanks_text::before,
.thanks_text::after {
  content: "";
  width: 25px;
  height: 1px;
  background-color: #e72260;
  margin: 0px 4px 4px;
}
 
.thanks_text::before {
  transform: rotate(45deg);
}
 
.thanks_text::after {
  transform: rotate(-45deg);
}
.tanks_s-text{
margin: 20px auto;
}


.s_text{
font-size: 20px;
 color: #222222!important;
}
.ss_text{
font-size: 16px;
font-weight: nomal!important;
 color: #222222!important;
}
.tab_only{
display: none!important
}


@media screen and (max-width: 768px) {
.ribbon {
  height: 66px;
  font-size: 32px;
}
	
.ribbon:before {
  border-width: 33px 0px 33px 30px;
}
	
.ribbon:after {
  border-width: 33px 30px 33px 0px;
}

.prize_info{
font-size: 18px;
}

.movie_wrapper_02 .movie_item {
 width: calc(100% / 2 - 20px);
 max-width: 300px;
}
.movie_wrapper_03 .movie_item {
width: calc(100% / 3 - 20px);
}	
.tab_only{
display:block
}
.thanks_text{
font-size: 18px;
}
	
	
	
}
@media screen and (max-width: 600px) {

.ss_text{
font-size: 13px;
}
	
	
	
    .ribbon {
        height: 50px;
        font-size: 16px;
    }
	
.ribbon:before {
  border-width: 25px 0px 25px 24px;
}
	
.ribbon:after {
  border-width: 25px 24px 25px 0px;
}

.prize_info{
font-size: 18px;
}
.movie_wrapper_03 .movie_item {
width: calc(100% / 2 - 20px);
}
	
.prize_title {
padding: 0;
}
	}