@charset "UTF-8";
.topright {
 position: fixed;
 right: 0;
 top: 0;
 width: 15%;
 z-index: 1000;
 min-width: 150px;
}
.bottomleft {
 position: fixed;
 bottom: 0;
 left: 0;
 width: 15%;
 z-index: 1000;
 min-width: 150px;
}
#entry-block {
 margin-top: 40px;
 text-align: center;
}
#entry-block label {
 margin: 0 0 0 10px!important;
}
/*チェック済みボタン*/
button.entry-btnStyle_checked {
 background: #ff0576;
	background: linear-gradient(to right, #fc8e3d 0%, #ff0576 100%);

}
/*未チェックボタン*/
button {
 position: relative; 
	background: #424242;
	border: 0;
	padding: 10px;
	color: #fff;
	width: 100%;
 max-width: 500px;
	height: 70px;
	font-size: 22px;
	text-align: center;
 margin-bottom: 10px;
 border-radius: 100px;
}
button span {
 position: absolute;
 right: 15px;
 top: 50%;
 transform: translateY(-50%);
    display: block;
   background-image: url("../images/ic.webp");
   background-size: 100% 100%;
   width: 23px;
   height: 23px;
   margin-left: 10px;
}
.end_wrap {
 max-width: 1200px;
 margin: auto;
 position: relative;
 overflow: hidden;
}
.overlay {
 padding: 30px;
 position: absolute;
 width: 100%;
 height: 100%;
 background: rgba(0,0,0,.7);
 z-index: 100;
 text-align: center;
}
.overlay p {
 padding-top: 100px;
 font-size: 30px;
 line-height: 200%;
 
}
.end_btn {
 pointer-events: none!important;
}
.end_btn a {
 pointer-events: none!important;
 border-color: #4E4E4E!important;
 color: #FFF!important;
 background: #4E4E4E!important;
}

#totop_btn {
 width: 150px;
}
#totop_btn.is-fixed {
 position: fixed;
 right: 5px;
 bottom: 0;
 z-index: 100;
}
footer {
    color: #FFF;
    position: relative;
    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);
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
    font-size: 12px;
}
.wrapper {
 font-family: "hiragino-kaku-gothic-pron", sans-serif;
font-weight: 300;
font-style: normal;
 color: #505050;
 background-image: linear-gradient(120deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0)), linear-gradient(185deg, rgba(180, 146, 195, 1), rgba(255, 255, 255, 0)), linear-gradient(340deg, rgba(239, 214, 212, 1), rgba(255, 255, 255, 0));
}
.bold {
  font-weight: bold;
}
.sp {
 display: none;
}
.mt00 {
  margin-top:0 !important;
}
.mt80-45 {
  margin-top: 80px;
}
.opacity {
  transition: .3s;
}
.opacity:hover {
  opacity: .6;
  transition: .3s;
}
.nit {
font-family: "nitalago-ruika", sans-serif;
font-weight: 100;
font-style: normal;
}
.mw-1000 {
  max-width: 1000px;
  margin: 0 auto;
}
.contents {
  max-width: 1300px;
  margin: 0 auto;
}
#js-lp-cta-fixed {
  display: none;
  margin: 0;
}
#js-lp-cta-fixed.is-fixed {
  display: block;
}
/* ==========================================================================
btn
========================================================================== */
.btn a {
   margin: 15px auto 0;
   display: block;
   background-color: #ffe500;
   color: #3d4361;
   font-size: 17px;
   font-weight: bold;
   text-align: center;
   width: 100%;
   max-width: 400px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   text-decoration: none;
   border-radius: 100px;
   box-sizing: border-box;
}
.btn a span {
   display: block;
   background-image: url("../images/playbtn.webp");
   background-size: 100% 100%;
   width: 20px;
   height: 20px;
   margin-left: 10px;
}

.common_footer_wrapper {
 overflow: hidden;
}
.footer_logo a {
  display: block;
  background-image: url(../images/logo.svg);
  background-size: 100% 100%;
  width: calc(130px);
  height: calc(130px / 494.58 * 217.28);
  text-indent: -9999px;
  overflow: hidden;
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
/*contents*/
.flex_box {
 display: -webkit-flex;
 display: flex;
}
.flex_box.ai {
 -webkit-align-items: center;
 align-items: center;
}
.flex_box.js {
 justify-content: space-between;
}
#fv {
 position: relative;
 padding: 70px 0 0;
}
#fv h1 {
 text-align: center;
 font-size: 32px;
 color: #505050;
}
.date {
 margin-top: 20px;
 background: #f19db5;
 text-align: center;
 font-size: 20px;
 padding: .5em 0 .3em;
 color: #fff;
}
.lead {
 margin-top: 20px;
 text-align: center;
 font-size: 20px;
 line-height: 140%;
}
/*CONTENTS*/
.box_inner {
 max-width: 1000px;
 margin: auto;
}
.btn-notes {
 margin-top: 15px;
 text-align: center;
 font-size: 18px;
 font-weight: bold;
}
.cp-notes {
 margin-top: 40px;
 text-align: center;
 color: #ff0576;
 font-size: 20px;
 text-decoration: underline;
}
#info {
 max-width: 600px;
 margin: 30px auto 0;
 padding: 2em 1em;
 border: 2px solid;
/* background: #ffd9e4;*/
 text-align: center;
}
#info dt {
 width: 80%;
 margin: auto;
 font-size: 22px;
 font-weight: normal;
 border-bottom: 3px solid #f19db5;
 padding-bottom: 10px;
}
#info dt span {
 color: #f19db5;
 font-size: 80%;
}
#info dd {
 margin-top: 15px;
 font-size: 20px;
 line-height: 150%;
}
#info dd span {
 font-size: 130%;
}
/*tokuten*/
.tokuten_scroll {
 margin-top: 30px;
 margin-bottom: 70px;
 border-radius: 10px;
    padding: 2em;
    background: #fff;
    color: #505050;
}

.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;
}
@media screen and (max-width: 1000px) {
  .topright ,
.bottomleft {
 width: 18%;
 min-width: 110px;
}
 .overlay p {
  font-size: min(5vw,25px);
 }
  body {
      -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
      -webkit-text-size-adjust: 100%;
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic", Helvetica, sans-serif;
  }
 .sp {
  display: block;
 }
 .pc {
  display: none;
 }
  .wrapper {
 position: relative;
 background: none;
   overflow: hidden;
}
 .wrapper::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
 background-image: linear-gradient(120deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0)), linear-gradient(185deg, rgba(180, 146, 195, 1), rgba(255, 255, 255, 0)), linear-gradient(340deg, rgba(239, 214, 212, 1), rgba(255, 255, 255, 0));
 background-repeat: no-repeat;
}
 .home {
  position: fixed;
  top: 14px;
  left: 10px;
  width: 20%;
  max-width: 130px;
  z-index: 1000;
 }
 
 .flex_box {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  -webkit-flex-direction: column;
  flex-direction: column;
 }
 #fv {
  padding-top: 60px;
 }
 #fv h1 {
  font-size: min(5.3vw,28px);
 }
 .date {
  margin-top: 15px;
  font-size: min(3.6vw,20px);
  letter-spacing: -1px;
 }
 .lead {
  font-size: min(3.6vw,20px);
 }
 .box_inner {
  width: 90%;
  margin: auto;
 }
 #info {
  margin-top: 20px;
  padding: 1.3em 1em;
 }
 #info dt {
  width: 90%;
  font-size: min(5vw,24px);
 }
 #info dd {
  font-size: min(4vw,20px);
 }
 #entry-block {
  margin: 20px auto 0;
  width: 90%;
  max-width: 500px;
  font-size: min(3.5vw,15px);
 }
 button {
  font-size: min(4.5vw,18px);
  height: 55px;
 }
 .btn-notes {
  font-size: min(3.8vw,18px);
 }
 .cp-notes {
  margin-top: 30px;
  font-size: min(4.2vw,22px);
 }
/* tokuten*/
     .tokuten_scroll {
     width: 100%;
     margin-left: auto;
      margin-right: auto;
     padding: 1.5em;
     font-size: 12px;
      border-radius: 10px;
      line-height: 130%;
      margin-bottom: 50px;
    }
 
    .tokuten_scroll .inn {
     padding-right: 0.5em;
    }
 footer  {
  height: 40px;
 }
}

@media screen and (min-width: 1001px) {
 .box_inner {
  width: 90%;
 }
 /*ヘッダー*/
header {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 z-index: 100;
 display: -webkit-flex;
 display: flex;
 justify-content: space-between;
 -webkit-align-items: center;
 align-items: center;
 padding: 1.2em 2em;
/* background: rgba(0,0,0,.5);*/

}
header .home {
 width: 120px;
}
  .footer_fix {
      margin: 2% auto;
  }
  .lp_cta_fixed .lp_fv_cta_btn {
      width: min(44vw, 450px);
  }
}