@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
	font-family: "Noto Sans JP", sans-serif;
}
body {
  margin: 0;
}
main {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd {
  margin: 0;
}
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
a {
  background-color: transparent;
}
a:hover {
  opacity: 0.7;
}
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}
b, strong {
  font-weight: bolder;
}
code, kbd, samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button, input, optgroup, select, textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
button, input { /* 1 */
  overflow: visible;
}
button, select { /* 1 */
  text-transform: none;
}
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"], [type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
ul, ol {
  padding: 0;
}
ul li, ol li {
  list-style-type: none;
}
a {
  color: #333;
  text-decoration: none;
}
img {
  max-width: 100%;
	vertical-align: bottom;
}
* {
  box-sizing: border-box;
}
html, body{
  overflow-x: clip;
}

/*header*/
header{
	width: 1056px;
	margin: 0 auto;
	padding: 20px 0 16px 0;
}
header img{
	width: 300px;
}
@media screen and (max-width: 896px) {
header{
	width: 100%;
	margin: 0 auto;
	padding: 9px;
}
header img{
	width: 130px;
}
}

/*main*/
main{
	background: #bbe2ff url("../img/bg.jpg") center top no-repeat;
	background-size: 100% auto;
}
#kv{
	width: 1056px;
	margin: 0 auto;
	position:relative;
	height: 720px;
}
#kv p{
	position: absolute;
	top:24px;
	right: 3px;
}
#kv h1{
    position: absolute;
    bottom: 120px;
    text-align: center;
    width: 100%;
}
@media screen and (max-width: 896px) {
#kv{
	width: 100%;
	height: auto;
}
#kv img{
	width: 100%;	
}
#kv p{
    position: absolute;
    top: 1vw;
    right: 0;
    width: 28vw;
}
#kv h1{
    bottom: 11vw;
}
#kv h1 img{
	width: 90%;	
}
}
#sec1{
	width: 1056px;
	margin: 0 auto;
	background: #1d9fff url("../img/bg_pc.jpg") center top no-repeat;
	background-size: 100% auto;
	text-align: center;
	position:relative;
	padding-bottom: 136px;
}
#sec1 h2{
	padding-bottom: 30px;
}
#sec1 .movie{
	margin-top: 100px;
}
#sec1 .movie h3{
	margin-bottom: 30px;
}
#sec1 .video{
	background: url("../img/video_bg.png") center center repeat;
	padding: 15px;
	width: 570px;
	margin: 0 auto 23px auto;
	border-radius: 20px;
}
#sec1 .movie ul{
	margin: 20px auto 64px auto;
	display: flex;
	justify-content: center;
}
#sec1 .movie ul li{
	margin: 0 10px;
}
#sec1 .girl1{
	position: absolute;
	top: 210px;
	right: 41px;
}
#sec1 .girl2{
	position: absolute;
	top: 500px;
	left:50px;
}
#sec1 .girl3{
	position: absolute;
	top: 797px;
	left:23px;
}
#sec1 .girl4{
	position: absolute;
	top: 910px;
	right:66px;
}
#sec1 .girl5{
	position: absolute;
	top: 1240px;
	right:28px;
}
#sec1 .girl6{
	position: absolute;
	top: 1442px;
	left:45px;
}
#sec1 .girl7{
	position: absolute;
	top: 1493px;
	right:45px;
}
@media screen and (max-width: 896px) {
.girls{
	display: none;
}
#sec1{
	width: 100%;
	background: #1d9fff url("../img/bg_sp.jpg") center top no-repeat;
	padding-bottom: 136px;
	background-size: 100% auto;
}
#sec1 h2{
	padding: 5vw 0;
}
#sec1 h2 img{
	width: 80%;	
}
#sec1 p img{
	width: 78%;	
}
#sec1 .movie{
	margin-top: 13vw;
}
#sec1 .movie h3{
	margin-bottom: 4vw;
}
#sec1 .movie h3 img{
	width: 30%;	
}
#sec1 .video{
	padding: 10px;
	width: 90%;
	margin: 0 auto 5vw auto;
	border-radius: 10px;
}
#sec1 h4{
	text-align: center;
}
#sec1 h4 img{
	width: 60%;
}
#sec1 .movie ul{
	margin: 3vw auto 10vw auto;
	width: 65%;
}
#sec1 .movie ul li{
	margin: 0 3px;
}
}
#sec2{
    width: 100%;
    margin: 0;
    padding: 150px 0 300px 0;
    position: relative;
    top: -40px;
	z-index: 1000;
}
#sec2::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #FFF;
    transform: skewY(-4deg);
    z-index: -1;
}
#sec2 h3{
	text-align: center;
	margin-bottom: 18px;
	margin-top: -50px;
}
#sec2 ul{
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	width: 1060px;
	z-index: 1000;
    position: relative;
}
#sec2 ul li.member2{
	padding-top: 129px;
}
#sec2 ul li.member3{
	margin-top: -183px;
}
#sec2 ul li.member5{
	margin-top: -280px;
}
#sec2 ul li.member7{
	margin-top: -294px;
}
#sec2 p{
	width: 915px;
	margin: -50px auto 0 auto;
	text-align: right;
	color: #767676;
	font-size: 11px;
}
#sec2 .stars{
	position: absolute;
	top:0;
	width: 100%;
	z-index: 1000;
}
#sec2 .stars .wrapper{
	width: 1056px;
	margin: 0 auto;
	position:relative;
}
#sec2 .stars .star1{
	position: absolute;
	left: 124px;
	width: 94px;
}
#sec2 .stars .star2{
	position: absolute;
	right: 248px;
	width: 94px;
	top: -50px;
}
#sec2 .stars .star3{
	position: absolute;
	right: 169px;
	width: 62px;
	top: 118px;
	transform: rotate(-0.25turn);
}
#sec2 .stars .star4{
	position: absolute;
	left: -273px;
	width: 167px;
	top: 162px;
}
#sec2 .stars .star5{
	position: absolute;
	right: -262px;
	width: 158px;
	top: 425px;
}
#sec2 .stars .star6{
	position: absolute;
	left: -288px;
	width: 107px;
	top: 802px;
}
#sec2 .stars .star7{
	position: absolute;
	right: 49px;
	width: 80px;
	top: 787px;
	transform: rotate(0.25turn);
}
#sec2 .stars .star8{
	position: absolute;
	right: -280px;
	width: 82px;
	top: 902px;
}
#sec2 .stars .star9{
	position: absolute;
	left: 0px;
	width: 104px;
	top: 1250px;
}
#sec2 .stars .star10{
	position: absolute;
	right: -207px;
	width: 181px;
	top: 1311px;
}
#sec2 .stars .star11{
	position: absolute;
	left: -209px;
	width: 85px;
	top: 1440px;
}
#sec2 .stars .star12{
	position: absolute;
    left: 650px;
    width: 83px;
    top: 1510px;
    transform: rotate(0.5turn);
}
#sec2 .stars .star13{
	position: absolute;
	right: -296px;
	width: 157px;
	top: 1777px;
}
#sec2 .stars .star14{
	position: absolute;
	left: -295px;
	width: 169px;
	top: 1895px;
}
#sec2 .stars .star15{
	position: absolute;
	left: 850px;
	width: 81px;
	top: 2206px;
}
#sec2 .stars .star_sp{
	display: none;
}
@media screen and (max-width: 896px) {
#sec2{
    width: 100%;
    margin: 0;
    padding: 15vw 0 30vw 0;
    position: relative;
    top: -20vw;
	z-index: 1000;
}
#sec2 h3{
	margin-bottom: 5vw;
	margin-top: 0;
}
#sec2 h3 img{
	width: 70%;	
}
#sec2 ul{
	width: 100%;
}
#sec2 ul li.member2{
	padding-top: 0;
}
#sec2 ul li.member3{
	margin-top: 0;
}
#sec2 ul li.member5{
	margin-top: 0;
}
#sec2 ul li.member7{
	margin-top: 0;
}
#sec2 p{
width: 90%;
        margin: 10vw auto 0 auto;
        text-align: right;
        color: #767676;
        font-size: 11px;
}
#sec2 .stars .wrapper{
	width: 100%;
}
#sec2 .stars .star1{
        left: 6vw;
        top: -4vw;
        width: 15%;
}
#sec2 .stars .star2{
        right: 7vw;
        width: 20%;
        top: -12vw;
}
#sec2 .stars .star3{
        right: 3vw;
        width: 12vw;
        top: 20vw;
}
#sec2 .stars .star4{
	display: none;
}
#sec2 .stars .star5{
	right: auto;
    width: 12vw;
    top: 143vw;
    left: 10vw;
}
#sec2 .stars .star6{
    position: absolute;
    left: auto;
    width: 15vw;
    right: 12vw;
    top: 144vw;
	transform: rotate(0.51turn);
}
#sec2 .stars .star7{
position: absolute;
        width: 17vw;
        top: 671vw;
        left: 17vw;
}
#sec2 .stars .star8{
	position: absolute;
    right: 5vw;
    width: 20vw;
    top: 265vw;
	transform: rotate(0.51turn);
}
#sec2 .stars .star9{
	position: absolute;
    left: 8vw;
    width: 20vw;
    top: 403vw;
}
#sec2 .stars .star10{
	position: absolute;
        right: -3vw;
        width: 13vw;
        top: 412vw;
        transform: rotate(0.51turn);
}
#sec2 .stars .star11{
position: absolute;
        left: auto;
        width: 15vw;
        top: 545vw;
        right: 5vw;
}
#sec2 .stars .star12{
position: absolute;
        left: auto;
        width: 16vw;
        top: 797vw;
        right: 12vw;
        transform: none;
}
#sec2 .stars .star13{
	display: none;
}
#sec2 .stars .star14{
position: absolute;
        left: auto;
        width: 13vw;
        top: 670vw;
        right: 10vw;
}
#sec2 .stars .star15{
        position: absolute;
        left: -3vw;
        width: 13vw;
        top: 800vw;
}
#sec2 .stars .star_sp{
        position: absolute;
        width: 18vw;
        top: 930vw;
        display: block;
        left: 20vw;
        transform: rotate(0.51turn);
}
}
#sec3{
    width: 100%;
    margin: 0;
    padding: 100px 0 200px 0;
    position: relative;
    top: -230px;
	z-index: 1000;
}
#sec3::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #ff1ca7;
    transform: skewY(4deg);
    z-index: -1;
}
#sec3 .star16{
	position: absolute;
    left: 900px;
    width: 130px;
    top: -100px;
	transform: rotate(0.5turn);
}
#sec3 .star_sp{
	display: none;
}
#sec3 .wrapper{
	width: 930px;
	margin: 0 auto;
}
#sec3 dl{
	display: flex;
	justify-content: space-between;
}
#sec3 dl dt{
	width: 400px;
}
#sec3 dl dd{
	width: 413px;
	text-align: center;
	color: #FFF;
	padding-top: 40px;
}
#sec3 dl dd h4{
	font-size: 24px;
	padding-bottom: 24px;
}
#sec3 dl dd p{
	font-size: 20px;
	line-height: 160%;
}
@media screen and (max-width: 896px) {
#sec3{
    width: 100%;
    padding: 20vw 0 20vw 0;
    top: -150px;
}
#sec3 .star16{
	display: none;
}
#sec3 .star_sp{
	display: block;
	position: absolute;
    right: 20vw;
    width: 13vw;
    top: -5vw;
}
#sec3 .wrapper{
	width: 90%;
	margin: 0 auto;
}
#sec3 dl{
	display: flex;
	flex-direction: column;
}
#sec3 dl dt{
	width: 100%;
}
#sec3 dl dd{
	width: 100%;
	text-align: center;
	color: #FFF;
	padding-top: 20px;
}
#sec3 dl dd h4{
	font-size: 24px;
	padding-bottom: 15px;
}
#sec3 dl dd p{
font-size: 3.3vw;
        line-height: 160%;
        width: 90%;
        margin: 0 auto;
}
}
#sec4{
    width: 100%;
    margin: -340px 0 0 0;
    padding: 100px 0;
	position: relative;
	z-index: 1000;
	background-color: #daf5ff;
}
#sec4 .wrapper{
	width: 930px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#sec4 .logo{
	width: 425px;
}
#sec4 .logo .btn_pc{
	width: 360px;
	margin: 47px auto 0 auto;
}
#sec4 .btn_sp{
	display: none;
}
#sec4 .txt{
	width: 413px;
	color: #595757;
	text-align: center;
}
#sec4 .txt h4{
	font-size: 24px;
	padding-bottom: 24px;
}
#sec4 .txt p{
	font-size: 16px;
	line-height: 160%;
}
@media screen and (max-width: 896px) {
#sec4{
    width: 100%;
    margin: -45vw 0 0 0;
    padding: 20vw 0;
}
#sec4 .wrapper{
	width: 80%;
	flex-direction: column;
}
#sec4 .logo{
	width: 100%;
	padding-bottom: 10vw;
}
#sec4 .logo .btn_pc{
	display: none;
}
#sec4 .btn_sp{
	display: block;
}
#sec4 .txt{
	width: 100%;
	color: #595757;
	text-align: center;
}
#sec4 .txt h4{
	font-size: 24px;
	padding-bottom: 24px;
}
#sec4 .txt p{
	font-size: 3.3vw;
	line-height: 160%;
	padding-bottom: 10vw;
}
}
#sec5{
    width: 100%;
    margin: 0;
    padding: 100px 0;
	background-color: #FFF;
}
#sec5 .wrapper{
	width: 930px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#sec5 .logo{
	width: 331px;
	margin-left: 50px;
}
#sec5 .txt{
	width: 413px;
	color: #595757;
	text-align: center;
}
#sec5 .txt h4{
	font-size: 24px;
	padding-bottom: 24px;
}
#sec5 .txt p{
	font-size: 16px;
	line-height: 160%;
}
@media screen and (max-width: 896px) {
#sec5{
    width: 100%;
    margin: 0;
    padding: 15vw 0;
	background-color: #FFF;
}
#sec5 .wrapper{
	width: 80%;
	margin: 0 auto;
	flex-direction: column;
}
#sec5 .logo{
	width: 100%;
	margin-left: 0px;
}
#sec5 .txt{
	width: 100%;
	color: #595757;
	text-align: center;
}
#sec5 .txt h4{
	font-size: 24px;
	padding-bottom: 24px;
}
#sec5 .txt p{
	font-size: 3.3vw;
	line-height: 160%;
}
}
footer{
	text-align: center;
	color: #d0d0d0;
	font-size: 14px;
	padding: 20px 0;
	border-top: 1px solid #d0d0d0;
	width: 1056px;
	margin: 0 auto;
}
#follow{
	position: fixed;
	right: 0;
	bottom: 0px;
	z-index: 1000;
	opacity: 0;
	transform: translateY(-50%) translateX(20px);
	transition: opacity .25s ease, transform .25s ease;
}
@media screen and (max-width: 896px) {
footer{
	font-size: 3vw;
	padding: 20px 0;
	width: 90%;
	margin: 0 auto;
}
#follow{
	position: fixed;
	right: 0;
	bottom: 5vw;
	z-index: 1000;
	width: 30%;
}
#follow img{
}
}

.content {
    display: none;
}
.content.show {
    display: block;
}
#follow.is-active{
  opacity: 1;
  transform: translateY(-50%) translateX(0);
  pointer-events: auto;
}