@charset "utf-8";
/* CSS Document */

.p-head-wrap {
	display:flex;
	justify-content:space-between;
	align-items:center;
	height:100px;
	gap:32px;
}

@media screen and (min-width:961px) { /*PC*/
}
@media screen and (max-width:960px) { /*MB*/
	.p-header-space {
		content:"";
		display:block;
		width:100%;
		padding-top:60px;
	}
}

.p-head-logo {
	width:186px;
}

/*メニュー*/

@media screen and (min-width:961px) { /*PC*/
	.p-header-inner {
		background: linear-gradient(to bottom,  #ff8989 0%,#ffbec0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		width:100%;
		height: 60px;
	}
	.nav{
		width:100%;
		padding:0 3%;
		box-sizing:border-box;
		max-width:calc( 1200px + 6% );
		margin:0 auto;
		display: block!important;
	}
	.nav ul {
		display: flex;
		justify-content: space-between;
	}
	.nav ul li {
		width: calc(100% / 4);
		box-sizing: border-box;
		position:relative;
	}
	.nav ul li:before {
		content:"";
		display:block;
		width:1px;
		height:40px;
		position:absolute;
		top:10px;
		left:0;
		background-color:#fff;
	}
	.nav ul li:last-child:after {
		content:"";
		display:block;
		width:1px;
		height:40px;
		position:absolute;
		top:10px;
		right:0;
		background-color:#fff;
	}
	.nav ul li a, .nav ul li em {
		display: block;
		width:100%;
		height: 60px;
		text-indent: -9999px;
		overflow: hidden;
		position: relative;
		margin:0 auto;
		transition:all 0.3s;
	}
	.nav ul li a:hover {
		opacity:0.65;
	}
	.p-menu-01 a {background:url("../img/menu01.png") center top no-repeat;}
	.p-menu-02 a {background:url("../img/menu02.png") center top no-repeat;}
	.p-menu-03 a {background:url("../img/menu03.png") center top no-repeat;}
	.p-menu-04 a {background:url("../img/menu04.png") center top no-repeat;}
}
@media screen and (max-width:960px) { /*MB*/
	
/*外側クローズ用*/
	.p-main{
	}
	.p-main-cover{
		position: fixed;
		width: 100%;
		visibility: hidden;
		z-index: -1;  
		-webkit-transition: .3s;
		transition: .3s;
	}
	.p-main-cover.active{
		height:100%;
		visibility: visible;
		background:rgba(255,255,255,0.4);
		z-index:1000;
	}
	.p-head-space {
		width: 100%;
		height: 60px;
		background: linear-gradient(to bottom,  #ff8989 0%,#ffbec0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
	.p-header-inner{
		width: 100%;
		height: 60px;
		position:fixed;
		top: 0;
		left: 0;
		z-index: 1000;
		background: linear-gradient(to bottom,  #ff8989 0%,#ffbec0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
	.p-header-wrap{
		position:relative;
		width: 100%;
		height: 60px;
	}
	/*nav=====*/
	.nav{
		display: none;
		position: relative;
		width: 100%;
		text-align: center;
		top: 0;
		left: 0;
		z-index: 950;
		padding-top:60px;
	}
	.nav li{
		background: #ffbec0;
		border-bottom: 1px solid #ffffff;
		text-align: left;
		text-indent: 12px;
	}
	.nav a, .nav span{
		color: #fff;
		display: block;
		height: 50px;
		line-height: 50px;
		font-size:2rem;
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-style: normal;
		transform: rotate(0.03deg);
		font-weight: 700!important;
	}
	.nav a:hover{
		text-decoration: none;
	}
	/*ナビボタン*/
	.p-header-sp-nav{
		width: 30px;
		height: 26px;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 10px;
		margin:auto;
		cursor: pointer;
		z-index: 1000;
		background:#1a1a1a;
	}
	.p-header-sp-nav:before {
		content: "";
		display: block;
		width:50px;
		height:60px;
		background: linear-gradient(to bottom,  #ff8989 0%,#ffbec0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		z-index: -1;
		position: absolute;
		right:-10px;
		top:-17px;
	}
	.p-header-sp-nav span {
		display: block;
		position: absolute;
		width: 30px;
		height: 2px;
		background: #fff;
		-webkit-transition: .3s;
		transition: .3s;
	}
	.p-header-sp-nav span:first-of-type {
		top: 0;
		bottom: auto;
		margin-bottom: 10px;
	}
	.p-header-sp-nav span:nth-of-type(2) {
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	.p-header-sp-nav span:last-of-type {
		bottom: 0;
		top: auto;
	}
	.p-header-sp-nav.active{
	}
	.p-header-sp-nav.active span:nth-of-type(2) {
		right: -60px;
		opacity: 0;
		visibility: hidden;
	}
	.p-header-sp-nav.active span:first-of-type{
		top: 0;
		bottom: 0;
		margin: auto;
		transform:rotate(45deg);
	}
	.p-header-sp-nav.active span:last-of-type{
		top: 0;
		bottom: 0;
		margin: auto;
		transform:rotate(-45deg);
	}
	
}

.p-mv {
	width:100%;
	border-radius:10px;
	overflow:hidden;
}



@media screen and (min-width:961px) { /*PC*/
	.p-mv-img {
		width:100%;
		border-radius:10px;
		background:url("../img/title05.jpg") center top no-repeat;
		aspect-ratio:120 / 63;
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-mv-img {
		width:100%;
		border-radius:10px;
		background:url("../img/title05v.jpg") center top no-repeat;
		background-size:cover;
		aspect-ratio:2 / 3;
	}
}

.p-mv figure {
	position:relative;
}

.p-mv figure figcaption {
	position:absolute;
	bottom:0;
	background-color:rgba(255,255,255,0.75);
	display:block;
	width:100%;
	padding:8px 16px;
	text-align:left;
	font-size:1.8rem;
}

.p-mv figure figcaption:before {
	content:"▲";
	display:inline-block;
	transform:rotate(90deg);
	font-size:1.3rem;
	margin-right:8px;
}

.p-mv a figure figcaption {
	color:#4c4c4c;
	font-weight:700;
}

/* プロダクト */

.p-head-product {
	width:100%;
	max-width:206px;
	margin-bottom:60px;
}

.p-head-music {
	width:100%;
	max-width:308px;
	margin-bottom:60px;
}

.p-head-stream {
	width:100%;
	max-width:289px;
	margin-bottom:60px;
}

.p-head-contact {
	width:100%;
	max-width:233px;
	margin-bottom:60px;
}

.p-product-wrap {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:32px;
}

.p-product-box {
	background-color:#fff;
	border-radius:10px;
	overflow:hidden;
	text-align:left;
	display:flex;
	flex-direction:column;
}


@media screen and (min-width:961px) { /*PC-MIDDLE*/
	.p-product-box {
		width:calc((100% - 32px) / 2);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-product-box {
		width:100%;
	}
}

.p-p-img {
	width:100%;
	margin:0 auto 12px;
}

.p-p-tag {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
	margin:0 auto 12px;
	display:flex;
	gap:12px;
}

.p-p-tag span {
	background-color:#ff9a9a;
	padding:4px 8px;
	color:#fff;
	border-radius:5px;
	font-size:1.5rem;
	font-weight:700;
}

.p-p-genre {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
	margin:0 auto 8px;
	font-size:1.4rem;
	color:#b3b3b3;
}

.p-p-title {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
	margin:0 auto 8px;
	font-size:1.7rem;
	color:#4c4c4c;
}

.p-p-title p {
	font-weight:700;
}

.p-p-link {
	margin-top:auto;
}

.p-p-link ul li {
	border-top:1px solid #ececec;
	padding:8px 20px;
	font-size:1.5rem;
}

.p-p-link ul li a {
	font-weight:700;
	color:#ff9a9a;
}

.p-p-link ul li a:before {
	content:"▲";
	display:inline-block;
	transform:rotate(90deg);
	font-size:1.3rem;
	margin-right:8px;
}

/* ミュージック */

.p-music-box {
	background-color:#fff;
	border-radius:10px;
	overflow:hidden;
	text-align:left;
	display:flex;
	flex-direction:column;
}

@media screen and (min-width:961px) { /*PC-LARGE*/
	.p-music-box {
		width:calc((100% - 64px) / 3);
	}
}
@media screen and (max-width:960px) { /*PC-MIDDLE*/
	.p-music-box {
		width:calc((100% - 32px) / 2);
	}
}
@media screen and (max-width:728px) { /*MB*/
	.p-music-box {
		width:100%;
	}
}

.p-m-img {
	width:100%;
	margin:0 auto 12px;
}


.p-m-genre {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
	margin:0 auto 8px;
	font-size:1.4rem;
	color:#b3b3b3;
}

.p-m-title {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
	margin:0 auto 8px;
	font-size:1.7rem;
	color:#4c4c4c;
}

.p-m-title p {
	font-weight:700;
}

.p-m-spec {
	padding:8px 20px;
	display:flex;
	flex-direction:column;
}

.p-m-spec dl {
	display:flex;
	position:relative;
	padding:4px 0;
	line-height:1.5;
}

.p-m-spec dl:nth-child(odd) {
	background-color:#f8f8f8;
}

.p-m-spec dt {
	width:80px;
	font-size:1.4rem;
}

.p-m-spec dd {
	width:calc(100% - 88px);
	font-size:1.5rem;
}

.p-m-link {
	margin-top:auto;
}

.p-m-link ul li {
	border-top:1px solid #ececec;
	padding:8px 20px;
	font-size:1.5rem;
}

.p-m-link ul li a {
	font-weight:700;
	color:#ff9a9a;
}

.p-m-link ul li a:before {
	content:"▲";
	display:inline-block;
	transform:rotate(90deg);
	font-size:1.3rem;
	margin-right:8px;
}

/* リンク */

.p-link-wrap {
	display:flex;
	flex-wrap:wrap;
	gap:24px;
}

.p-l-box {
	background-color:#fff;
	display:flex;
	align-items:center;
	text-align:left;
	justify-content:flex-start;
	gap:12px;
	border-radius:10px;
	overflow:hidden;
}

.p-l-box p {
	font-size:1.5rem;
	line-height:1.5;
}

@media screen and (min-width:961px) { /*PC*/
	.p-l-box {
		width:calc((100% - 24px) / 2);
	}
}
@media screen and (max-width:960px) { /*MB*/
	.p-l-box {
		width:calc((100% - 24px) / 2);
		flex-direction:column;
		padding:8px 12px;
	}
	.p-l-box br {
		display:none;
	}
}

/* Primrose */

.p-primrose {
	border-radius:10px;
	width:100%;
	max-width:400px;
	margin:0 auto 12px;
	overflow:hidden;
}

.p-primrose-txt {
	color:#fff;
	font-size:1.5rem;
	line-height:1.5;
}

.p-primrose-txt span {
font-size:90%;
}

/* フッター */

.p-foot-wrap {
	display:flex;
	flex-direction:column;
	gap:24px;
}

.p-foot-regard a {
	display:block;
	background-color:#fff;
	color:#ff9a9a;
	margin:0 auto;
	width:100%;
	max-width:480px;
	box-sizing:border-box;
	padding:8px;
	border-radius:10px;
	line-height:1.8;
	border:2px solid #ff9a9a;
	font-size:1.5rem;
	box-shadow:0 5px 5px #ff9a9a;
}

.p-foot-regard a span {
	font-size:90%;
}

.p-foot-regard a:hover {
	text-decoration:none;
}

.p-copyright {
	color:#fff;
	font-size:1.6rem;
}

.p-stream-wrap {
	display:flex;
	flex-direction:column;
	gap:60px;
}

.p-stream-wrap p {
	font-size:1.7rem;
	line-height:1.7;
	text-align:left;
}

.p-stream-wrap p strong {
	font-weight:700;
	color:#ff9a9a;
}