@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : music.css
Description :
===================================================================== */


/* =====================================================================
*    music
* =================================================================== */
.music::before {
	content: '';
	position: absolute;
	background: url(../images/music/bg_music.jpg) no-repeat center top/contain;
	width: calc(1800 / 750 * 100vw);
	height: calc(250 / 750 * 100vw);
	top: 0;
	left: -73%;
	margin: calc(40 / 750 * 100%) auto 0;
}

.music_artist {
	padding-bottom: calc(100 / 630 * 100%);
}

.music_artist_img {
	margin: 0 auto calc(50 / 630 * 100%);
}

.music_artist_txt {
	text-align: center;
}

.music_artist_txt dt {
	margin: 0 0 calc(30 / 630 * 100%);
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.music_name {
	font-weight: 700;
	font-size: 4rem;
	display: block;
}

.music_artist_name {
	font-size: 2.8rem;
	font-weight: 700;
}

.music_lyrics {
	margin: .3em auto 0;
	font-size: 2.6rem;
	display: block;
	text-align: left;
	width: calc(240 / 315 * 100%);
}

.music_company {
	font-size: 2.8rem;
}

.music_artist_txt2 {
	margin: calc(55 / 630 * 100%) 0 0;
	font-size: 2.8rem;
	text-align: left;
	line-height: 1.75;
}

.music_movie_wrap {
	background-color: #f9f9f9;
	padding-bottom: calc(200 / 750 * 100%);
}

.music_movie_wrap::before {
	content: '';
	position: absolute;
	background: url(../images/music/bg_music_content_sp.jpg) no-repeat left top/contain;
	width: 100%;
	height: calc(600 / 750 * 100vw);
	top: 0;
	left: 0;
}

.music_movie {
	width: 100%;
	max-width: calc(630 / 750 * 100%);
	margin: auto;
}

.music_movie_photo {
	position: absolute;
	width: calc(690 / 630 * 100%);
	margin: calc(-200 / 630 * 100%) 0 0;
}

.music_movie_photo::before,
.music_site::before {
	background: #ff4800;
	background: -webkit-gradient(linear, left top, right top, from(#ff4800), color-stop(25%, #f7480e), color-stop(50%, #4451ff), color-stop(75%, #228cd6), to(#10ca95));
	background: linear-gradient(to right, #ff4800 0%, #f7480e 25%, #4451ff 50%, #228cd6 75%, #10ca95 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4800', endColorstr='#10ca95', GradientType=1);
}

.music_subttl {
	font-family: 'Playfair Display', serif;
	font-size: 9rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.15rem;
	white-space: nowrap;
	text-align: right;
	padding-top: calc(180 / 630 * 100%);
	margin-bottom: calc(5 / 630 * 100%);
	color: #c7c7c7;
}

.music_subttl::before {
	content: '';
	position: absolute;
	width: 13rem;
	height: 1px;
	background-color: #b1b0b0;
	left: 0;
	bottom: 0;
	margin-bottom: 4rem;
}

.music_comment {
	font-size: 2.2rem;
	line-height: 1;
	text-align: right;
	margin: 0 0 calc(30 / 630 * 100%);
}

.music_movie_btn::before {
	content: "";
	display: block;
	width: calc(107 / 750 * 100vw);
	height: calc(107 / 750 * 100vw);
	position: absolute;
	border: 2px solid #fff;
	border-radius: 50%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
}

.music_movie_btn::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: calc(35 / 750 * 100vw);
	height: calc(10 / 750 * 100vw);
	border-bottom: calc(3 / 750 * 100vw) solid #fff;
	border-right: calc(3 / 750 * 100vw) solid #fff;
	-webkit-transform: skew(25deg);
	transform: skew(25deg);
	z-index: 2;
}

.music_txt {
	font-size: 2.8rem;
	line-height: 1.75;
}

.music_site {
	width: calc(600 / 630 * 100%);
	margin: calc(70 / 630 * 100%) 0 0 calc(90 / 630 * 100%);
}

.music_site::before {
	left: auto;
	right: 0;
}

.music_site a:not(:last-child) {
	margin-bottom: calc(30 / 630 * 100%);
}



@media screen and (min-width: 768px) {
	.music {}

	.music::before {
		background-size: cover;
		width: 100%;
		height: calc(190 / 1200 * 100vw);
		left: 0;
		right: 0;
		margin: calc(50 / 1200 * 100%) auto 0;
	}

	.music .sec_ttl {
		margin: 0 auto calc(130 / 1000 * 100%);
	}

	.music .sec_ttl img {
		width: calc(600 / 1000 * 100%);
	}

	.music_artist {
		padding-bottom: calc(100 / 1000 * 100%);
	}

	.music_artist_img {
		width: calc(800 / 1000 * 100%);
		margin: 0 auto calc(40 / 1000 * 100%);
	}

	.music_artist_txt dt {
		width: calc(475 / 1000 * 100%);
		margin: 0 auto calc(20 / 1000 * 100%);
	}

	.music_name {
		font-size: 2.6rem;
	}

	.music_artist_name {
		font-size: 2rem;
	}

	.music_lyrics {
		width: calc(260 / 475 * 100%);
		font-size: 1.4rem;
	}

	.music_company {
		font-size: 1.6rem;
	}

	.music_artist_txt2 {
		font-size: 1.6rem;
		width: calc(720 / 1000 * 100%);
		margin: calc(40 / 1000 * 100%) auto 0;
	}

	.music_movie_wrap {
		padding-bottom: 0;
	}

	.music_movie_wrap::before {
		background: url(../images/music/bg_music_content_pc.jpg) no-repeat left top/contain;
		height: calc(380 / 1200 * 100vw);
		margin: 0;
	}

	.music_movie {
		max-width: 800px;
		padding-bottom: calc(140 / 800 * 100%);
	}

	.music_movie_photo {
		width: 100%;
		margin: calc(-220 / 800 * 100%) auto 0;
		z-index: 2;
	}

	.music_movie_btn::before {
		width: calc(107 / 1200 * 100vw);
		height: calc(107 / 1200 * 100vw);
	}

	.music_movie_btn::after {
		width: calc(35 / 1200 * 100vw);
		height: calc(10 / 1200 * 100vw);
		border-bottom: calc(3 / 1200 * 100vw) solid #fff;
		border-right: calc(3 / 1200 * 100vw) solid #fff;
	}

	.music_subttl {
		font-size: 8.5rem;
		width: calc(630 / 800 * 100%);
		padding-top: calc(120 / 800 * 100%);
		margin: 0 calc(40 / 800 * 100%) calc(5 / 800 * 100%) auto;
	}

	.music_subttl::before {
		width: 15rem;
		margin-bottom: 3.5rem;
		left: auto;
		right: 48rem;
	}

	.music_subttl span {
		font-size: 10rem;
	}

	.music_comment {
		font-size: 1.6rem;
		margin: 0 calc(40 / 800 * 100%) calc(45 / 800 * 100%) auto;
	}

	.music_txt {
		padding: 0 calc(40 / 800 * 100%);
		font-size: 1.6rem;
		margin: 0 auto calc(70 / 800 * 100%);
	}

	.music_btn {
		margin: calc(40 / 410 * 100%) 0 0;
	}

	.music_site {
		width: calc(600 / 800 * 100%);
		margin: 0 auto;
	}

	.music_site::before {
		width: 15em;
	}

}

@media screen and (min-width: 1200px) {
	.music {
		padding: 100px 0 140px;
	}

	.music::before {
		max-width: 1600px;
		max-height: 190px;
		margin: 50px auto 0;
	}

	.music_movie_btn::before {
		width: 100px;
		height: 100px;
	}

	.music_movie_btn::after {
		width: 35px;
		height: 10px;
		border-bottom: 3px solid #fff;
		border-right: 3px solid #fff;
	}

	.music_btn {
		margin: 40px 0 0;
	}

	.music_movie_wrap::before {
		max-height: 380px;
	}

}
