@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : music.css
Description : 主題歌
===================================================================== */

.music_wrap1 {
	background-color: #f29473;
}

.music_wrap1 .inner {
	padding: calc(120 / 750 * 100%) 0 calc(80 / 750 * 100%);
}

.music_wrap1 .inner::before {
	content: "";
	display: block;
	width: calc(40 / 750 * 100%);
	padding-top: calc(320 / 750 * 100%);
	background-image: repeating-linear-gradient(0deg, transparent, transparent calc(13 / 750 * 100vw), #f6ec7f calc(13 / 750 * 100vw), #f6ec7f calc(20 / 750 * 100vw));
	-webkit-transform: skewY(40deg);
	transform: skewY(40deg);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	margin: calc(20 / 750 * 100%) 0 0;
}

.chara21 {
	width: calc(244 / 630 * 100%) !important;
	margin: calc(120 / 630 * 100%) 0 0 calc(-65 / 630 * 100%);
	top: 0;
	left: 0;
	z-index: 1;
}

.music_img {
	margin-bottom: calc(60 / 630 * 100%);
}

.music_img::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #f6ec7f;
	top: 0;
	left: 0;
	margin: calc(8 / 630 * 100%) 0 0 calc(-10 / 630 * 100%);
}

.music_img::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 0 calc(-30 / 630 * 100%) calc(-30 / 630 * 100%) 0;
	z-index: 2;
	background: url(../images/common/img_triangle_yellow.png) no-repeat center;
	background-size: 100% auto;
	width: calc(150 / 630 * 100%);
	padding-top: calc(150 / 630 * 100%);
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.music .sec_contents * {
	z-index: 2;
}

.music_img_list {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.music_img_list li {
	width: calc(305 / 630 * 100%);
}

.music_img_list li:nth-child(-n+2) {
	margin-bottom: .8em;
}

.music_copy {
	font-size: 1.6rem;
	color: #b0a99c;
	text-align: right;
}

.music_txt {
	text-align: center;
}

.music_ttl {
	display: block;
	font-weight: bold;
	font-size: 3.6rem;
	margin-bottom: .2em;
}

.music_artist {
	display: block;
	font-weight: bold;
	font-size: 3.2rem;
	color: #f6ec7f;
	margin-bottom: .2em;
}

.music_label {
	font-size: 2.8rem;
}

.music_wrap2 {
	background-color: #f6ec7f;
}

.music_wrap2::before {
	content: "";
	position: absolute;
	background-size: .7em .7em;
	margin: 0 auto;
	background-image: radial-gradient(#fff 25%, transparent 20%);
	width: 100%;
	padding-top: calc(150 / 750 * 100%);
	bottom: 0;
	left: 0;
}

.music_wrap2 .inner {
	padding: calc(60 / 750 * 100%) 0;
}

.music_wrap2 .inner::before {
	content: "";
	position: absolute;
	top: 0;
	right: .5em;
	display: block;
	width: calc(320 / 750 * 100%);
	margin-top: calc(-20 / 750 * 100%);
	padding-top: calc(40 / 750 * 100%);
	background-image: repeating-linear-gradient(90deg, #85c0c7 0px, #85c0c7 calc(5 / 750 * 100vw), transparent calc(6 / 750 * 100vw), transparent calc(18 / 750 * 100vw));
	-webkit-transform: skewX(-40deg);
	transform: skewX(-40deg);
}

.music_movie_wrap {
	width: 100%;
	padding-top: 56.25%;
}

.music_movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
}

.music_wrap3::before {
	content: '';
	background: url(../images/common/bg_pattern2.png) center top 1.9em;
	background-size: calc(115 / 750 * 100%);
	width: 100%;
	padding-top: calc(350/ 750 * 100%);
	position: absolute;
	bottom: 0;
	left: 0;
}

.music_wrap3 .inner {
	padding: calc(85 / 750 * 100%) 0 calc(200 / 750 * 100%);
}

.music_comment_ttl {
	margin-bottom: 2em;
}

.music_comment_ttl img {
	width: calc(357 / 630 * 100%);
	padding-right: calc(20 / 630 * 100%);
	background-color: #f8f8f8;
	z-index: 2;
}

.music_comment_ttl::before {
	content: '';
	position: absolute;
	background-color: #85c0c7;
	width: 80%;
	height: 1px;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}

.music_comment_ttl::after {
	content: '';
	position: absolute;
	background-color: #85c0c7;
	width: 80%;
	height: 1px;
	top: 8px;
	bottom: 0;
	right: 0;
	margin: auto;
}

.music_site {
	width: calc(520 / 630 * 100%);
	margin: calc(125 / 630 * 100%) auto 0;
}

.chara22 {
	width: calc(153 / 630 * 100%) !important;
	bottom: 0;
	right: 0;
	margin: 0 calc(40 / 630 * 100%) calc(-300 / 630 * 100%) 0;
	z-index: 0 !important;
}


@media screen and (min-width: 768px) {
	.music_wrap1 .inner {
		padding: calc(120 / 1200 * 100%) 0 calc(80 / 1200 * 100%);
	}

	.music_wrap1 .inner::before {
		width: calc(40 / 1600 * 100%);
		padding-top: calc(320 / 1600 * 100%);
		background-image: repeating-linear-gradient(0deg, transparent, transparent calc(6 / 200 * 100%), #f6ec7f calc(7 / 200 * 100%), #f6ec7f calc(10 / 200 * 100%), transparent calc(11 / 200 * 100%));
		margin: calc(20 / 1600 * 100%) 0 0;
	}

	.chara21 {
		width: calc(250 / 1200 * 100%) !important;
		margin: calc(63 / 1200 * 100%) 0 0 calc(80 / 1200 * 100%);
	}

	.music_img {
		width: calc(530 / 1000 * 100%);
		margin: 0 auto calc(60 / 1000 * 100%);
	}

	.music_img::before {
		margin: calc(8 / 530 * 100%) 0 0 calc(-10 / 530 * 100%);
	}

	.music_img::after {
		margin: 0 calc(-30 / 530 * 100%) calc(-30 / 530 * 100%) 0;
		width: calc(150 / 530 * 100%);
		padding-top: calc(150 / 530 * 100%);
	}

	.music_ttl {
		font-size: 2.4rem;
		margin-bottom: .5em;
	}

	.music_artist {
		font-size: 1.6rem;
		margin-bottom: .7em;
	}

	.music_label {
		font-size: 1.6rem;
	}

	.music_wrap2::before {
		padding-top: calc(155 / 1200 * 100%);
		background-size: 1.1em 1.1em;
	}

	.music_wrap2 .inner {
		padding: calc(60 / 1200 * 100%) 0;
	}

	.music_wrap2 .inner::before {
		width: calc(320 / 1600 * 100%);
		padding-top: calc(40 / 1600 * 100%);
		background-image: repeating-linear-gradient(90deg, #85c0c7 0px, #85c0c7 calc(5 / 1600 * 100vw), transparent calc(6 / 1600 * 100vw), transparent calc(18 / 1600 * 100vw));
		margin-top: calc(-20 / 1600 * 100%);
	}

	.music_movie {
		width: calc(530 / 1000 * 100%);
		margin: 0 auto;
	}


	.music_wrap3::before {
		padding-top: calc(190 / 1200 * 100%);
		background-size: calc(65 / 1200 * 100%);
		background-position: center top 29%;
	}

	.music_wrap3 .inner {
		padding: calc(95 / 1200 * 100%) 0 calc(160 / 1200 * 100%);
	}

	.music_comment {
		width: calc(800 / 1000 * 100%);
		margin: 0 auto;
	}

	.music_comment_ttl img {
		width: calc(252 / 800 * 100%);
	}

	.music_site {
		width: calc(260 / 800 * 100%);
		margin-top: calc(68/ 800 * 100%);
	}

	.music_site a:hover img {
		opacity: 0;
		-webkit-transition: .2s;
		transition: .2s;
	}

	.music_site a::before {
		opacity: 0;
		content: '';
		position: absolute;
		background: url(../images/music/btn_official_h.png) no-repeat center;
		background-size: contain;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		-webkit-transition: .2s;
		transition: .2s;
	}

	.music_site a:hover::before {
		opacity: 1;
		-webkit-transition: .2s;
		transition: .2s;
	}

	.chara22 {
		width: calc(170 / 1200 * 100%) !important;
		margin: 0 0 calc(-50 / 1200 * 100%) 0;
	}


}

@media screen and (min-width: 1200px) {
	.music_wrap1 .inner {
		padding: 120px 0 80px;
	}

	.music_wrap2::before {
		padding-top: 155px;
	}

	.music_wrap2 .inner {
		padding: 60px 0;
	}

	.music_wrap3::before {
		padding-top: 190px;
		background-size: 65px;
	}

	.music_wrap3 .inner {
		padding: 95px 0 160px;
	}

}
