/*----------------------------------------
** kuchibiru
** 2019.5.31
** style
----------------------------------------*/
img {
	max-width: 100%;
	vertical-align: top;
	margin: 0;
	padding: 0;
}
img[src$=".svg"] {
	max-width: 100%;
	width: 100%; /* IE対応 */
	height: auto;
}

.__min {
	font-family: YakuHanMP,'Noto Serif JP','游明朝','Yu Mincho','游明朝体','YuMincho','ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HiraMinProN-W3','HGS明朝E','ＭＳ Ｐ明朝','MS PMincho',serif;
}
.__goth {
	font-family: YakuHanJP,'Noto Sans JP','游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', sans-serif;
}
#wrapper {
	width: 100%;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	font-size: 87.5%;
	min-width: 1200px;
	margin: 0 auto;
}
section {
	width: 100%;
	position: relative;
}
.__inner {
	max-width: 1000px;
	width: 97%;
	margin: 0 auto;
	position: relative;
}

.__top {
	/*background: rgba(251,224,228,1.0) url(../img/teaser/kv_pc.jpg) center center no-repeat;
	background-size: cover;*/
	background: rgb(161,214,219);
	background: -moz-linear-gradient(left, rgba(161,214,219,1) 0%, rgba(216,236,224,1) 58%, rgba(255,252,228,1) 100%);
	background: -webkit-linear-gradient(left, rgba(161,214,219,1) 0%,rgba(216,236,224,1) 58%,rgba(255,252,228,1) 100%);
	background: linear-gradient(to right, rgba(161,214,219,1) 0%,rgba(216,236,224,1) 58%,rgba(255,252,228,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a1d6db', endColorstr='#fffce4',GradientType=1 );
	min-width: 100%;
	width: 100%;
	margin: 0 auto;
	padding-top: 100px;
	position: relative;
	overflow: hidden;
}
.__top > img {
	max-width: none;
	width: 100%;
	height: auto;
	user-select:none;
	-webkit-user-select:none;
	-webkit-user-drag: none;
}



/*-----------------------------------------
** header
-----------------------------------------*/
header {
	width: 56%;
	position: absolute;
    bottom: 54%;
	right: 50%;
	transform: translateX(50%);
	z-index: 10;
	opacity: 0;
}
header h1 {
	margin-top: 0;
	margin-bottom: 0;
	/*filter: blur(20px);*/
}
header h1 img {
	max-width: 100%;
	height: auto;
}


/*-----------------------------------------
** section.__top
-----------------------------------------*/
.__tx-copy-01 {
	width: 3.5%;
	position: absolute;
    top: 65%;
    left: 17.5%;
	z-index: 10;
	opacity: 0;
	-webkit-backface-visibility: hidden; /* 追加 */
	backface-visibility: hidden; /* 追加 */
	filter: drop-shadow(2px 2px 3px rgba(0,0,0,0.6));
}
.__tx-copy-02 {
	width: 15%;
	position: absolute;
	top: 45%;
	right: 24%;
	transform: translateX(50%);
	z-index: 10;
	opacity: 0;
	-webkit-backface-visibility: hidden; /* 追加 */
	backface-visibility: hidden; /* 追加 */
}
.__img-car {
	width: 18%;
	position: absolute;
	bottom: 10%;
	right: 20%;
	transform: translateX(50%);
	z-index: 10;
	opacity: 0;
	-webkit-backface-visibility: hidden; /* 追加 */
	backface-visibility: hidden; /* 追加 */
}

.__bt-artistcomment {
    width: 20%;
    position: absolute;
    top: 49%;
    right: 13%;
    z-index: 10;
    opacity: 1;
    transition: 0.2s all;
}
.__bt-artistcomment:hover {
    transform: scale(1.1);
}

/*-----------------------------------------
** section.__billing
-----------------------------------------*/
.__billing {
	/*padding: 60px 0 0;*/
}
.__billing .__tx-copy-03 {
	width: 95%;
    margin: 60px auto 30px;
	opacity: 1;
}
.__billing .__tx-date-may {
	width: 220px;
	margin: 0 auto 60px;
	opacity: 1;
    text-align: center;
}
.__billing .__tx-billing {
	width: 75%;
	margin: 0 auto 0;
	opacity: 1;
}
.__tx-billing.tie-up-banner {
    display: flex;
    justify-content: center;
    margin: 4% auto;
}
.__tx-billing.tie-up-banner a {
    margin: 0 2%;
}




/*-----------------------------------------
**
** query
**
-----------------------------------------*/
@media screen and (max-width:768px) {
	#wrapper {
		min-width: 100%;
	}
	.__top {
		
		min-width: 100%;
		width: 100%;
		margin: 0 auto;
		/*padding-top: 51.5%;*/
		/*padding-top: 79vh;*/
		position: relative;
		overflow: inherit;
		padding-top: 0;
	}
	
	/*-----------------------------------------
	** header
	-----------------------------------------*/
	header {
		width: 93%;
		position: absolute;
        bottom: 41%;
		right: 50%;
		transform: translateX(50%);
		z-index: 10;
		opacity: 0;
	}
	header h1 {
		margin-top: 0;
		margin-bottom: 0;
		/*filter: blur(20px);*/
	}
	header h1 img {
		max-width: 100%;
		height: auto;
	}


	/*-----------------------------------------
	** section.__top
	-----------------------------------------*/
	.__tx-copy-01 {
		width: 8%;
		position: absolute;
		top: 22%;
		right: 2%;
        left: auto;
		z-index: 10;
		opacity: 0;
		-webkit-backface-visibility: hidden; /* 追加 */
		backface-visibility: hidden; /* 追加 */
	}
	.__tx-copy-02 {
		width: 95%;
		position: absolute;
		top: 3.5%;
		right: 50%;
		transform: translateX(50%);
		z-index: 10;
		opacity: 0;
		-webkit-backface-visibility: hidden; /* 追加 */
		backface-visibility: hidden; /* 追加 */
	}
	.__img-car {
		width: 47%;
		position: absolute;
		bottom: 4%;
		right: 72%;
		transform: translateX(50%);
		z-index: 10;
		opacity: 0;
		-webkit-backface-visibility: hidden; /* 追加 */
		backface-visibility: hidden; /* 追加 */
	}
	
	.__bt-artistcomment {
        width: 50%;
        position: absolute;
        top: inherit;
        right: 50%;
        bottom: 8%;
        transform: translateX(50%);
        z-index: 10;
        opacity: 1;
        transition: 0.2s all;
	}
    
    .__bt-artistcomment:hover {
        transform: translateX(50%);
    }
	
	/*-----------------------------------------
	** section.__billing
	-----------------------------------------*/
	.__billing {
		padding: 30px 0 0;
	}
	.__billing .__tx-copy-03 {
		width: 100%;
		margin: 0 auto 20px;
		opacity: 0;
	}
	.__billing .__tx-date-may {
		width: 200px;
		margin: 0 auto 30px;
		opacity: 0;
	}
	.__billing .__tx-billing {
		width: 100%;
		margin: 0 auto 0;
		opacity: 0;
	}
    
    .__tx-billing.tie-up-banner {
        margin: 4% auto;
    }
	
}





/*-----------------------------------------
** BANNERS
-----------------------------------------*/
.__banners {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 20%;
	position: absolute;
	left: 3%;
	bottom: 3%;
}
.__banners li {
	margin-bottom: 10px;
}
.__banners li:last-child {
	margin-bottom: 0;
}
.__banners li:first-child {
	margin-bottom: 0;
	width: 85%;
}
.__banners.__sp {
	display: none;
}

@media screen and (max-width:768px) {
	.__banners.__pc {
		display: none;
	}
	.__banners.__sp {
		display: block;
	}
	.__banners {
		display: block;
		width: 75%;
		margin: 0 auto 30px;
		position: static;
		left: inherit;
		bottom: inherit;
		text-align: center;
	}
	.__banners li:first-child {
		margin: 0 auto 10px;
		width: 100%;
	}
	.__banners li:last-child {
		margin: 0 auto;
		width: 85%;
	}

}

/*  top banner-list */

.banner-list {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
    text-align: center;
}

.banner-list-btn {
    display: block;
    margin: 0 1%;
}

.banner-list-btn:hover {
    opacity: .8;
}

/* CD デビュー */

.hero-txt-wrap {
    width: 68%;
    margin: 0 auto 40px;
}

.sns-icon {
    position: absolute;
    top: 25px;
    left: 25px;
    z-index: 11;
}

.sns-icon-btn {
    display: block;
}

.sns-icon-btn:hover {
    opacity: .7;
}

.sns-icon .sns-icon-img {
    width: 33px;
    margin-bottom: 25px;
}

.spotify-wrap {
    position: absolute;
    bottom: 160px;
    left: 20px;
    z-index: 1000;
}

.spotify-wrap-sp {
    display: none;
}

.campaign-img {
    transition: 0.2s all;
}

.tirasi-wrap {
    position: absolute;
    left: 10%;
    bottom: 36%;
    width: 13%;
    transition: 0.2s all;
}
.tirasi-wrap:hover {
    transform: scale(1.1);
}

.tirasi-sp-btn {
    display: none;
}

.dvd-wrap {
    position: absolute;
    left: 10%;
    top: 20%;
    width: 13%;
    transition: 0.2s all;
}
.dvd-sp-btn {
    display: none;
}
.dvd-wrap:hover {
    transform: scale(1.1);
}

.fuwa {
    -webkit-animation:fuwa 3s infinite linear alternate;
    animation:fuwa 3s infinite linear alternate;
}

@-webkit-keyframes fuwa {
    0% {-webkit-transform:translateY( -10px);}
    100% {-webkit-transform:translateY( 0px);}
}

@keyframes fuwa {
    0% {transform:translateY( -10px);}
    100% {transform:translateY( 0px);}
}

.tirasi-img {
    transition: 0.2s all;
}

.tie-up-banner {
    display: flex;
    justify-content: center;
    margin: 2% 0;
}

.tie-up-banner a:hover {
    opacity: .8;
}

.tie-up-banner a img {
    width: 100%;
    max-width: 150px;
}

.tie-up-banner .img-brd {
    border: 1px solid #a7a7a7;
    box-sizing: border-box;
}

.retina-img {
    max-width: 180px;
}

.goods-bnr-btn {
    display: block;
    max-width: 380px;
    margin: auto;
}
.goods-bnr-img:hover {
    opacity: .7;
}

.goods-bnr-img {
    max-width: 380px;
}

.tx-roadshow-img {
    width: 220px;
}


@media screen and (max-width:768px) {
    
    .hero-txt-wrap {
        width: 85%;
        margin: 0 auto;
        padding: 15px 0 30px;
    }
    
    .sns-icon {
        display: none;
    }
    
    .spotify-wrap {
        display: none;
    }
    .spotify-wrap-sp {
        display: block;
        max-width: 160px;
        margin: 0 auto 30px;
    }
    
    .banner-list {
        margin-bottom: 30px;
    }
    
    .tirasi-wrap {
        display: none;
    }
    .tirasi-sp-btn {
        display: block;
        max-width: 374px;
        margin: 0 auto 3%;
    }
    .tirasi-sp-btn img:hover {
        opacity: .7;
    }
    
    .dvd-wrap {
        display: none;
    }
    .dvd-sp-btn {
        display: block;
        max-width: 374px;
        margin: 0 auto 3%;
    }
    .dvd-sp-btn img:hover {
        opacity: .7;
    }
    
    .campaign-wrap {
        display: none;
    }
    
    .tie-up-banner {
        margin: 4% 0;
    }
    
    .goods-bnr-btn {
        margin: 0 auto 20px;
    }
    .goods-bnr-img {
        width: 100%;
    }
}

@media screen and (max-width:414px) {

    .hero-txt-wrap {
        width: 85%;
        margin: 0 auto;
        padding: 15px 0 10px;
    }
}

@media screen and (max-width:320px) {

    .banner-list {
        display: block;
    }
    
    .banner-list-btn {
        margin: 0 1% 6%;
    }
}