@charset "utf-8";

.serif{
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}

.navWrap.panel-active{
	overflow-y: scroll;
}

/* PC
-------------------------------------------------- */
@media screen and (min-width: 768px){
	body{
		width: calc(100vw - 15px);
	}

	.pcNone{display: none;}
	.spNone{display: block;}

	/* ドロワーメニュー
	-------------------------------------------------- */
	.h_inner{
		padding: 10px 50px;
		max-width: 1300px;
	}

	/* メインビジュアル
	-------------------------------------------------- */
	#mainVisual{
		background: url("../img/bgi_pc_02.png") center center;
		background-size: cover;
		position: relative;
		z-index: 1;
	}

	.main{
		text-align: center;
	}

	.main img{
		width: 100%;
		max-width: 1700px;
	}

	.collabo_logo{
		display: block;
		box-sizing: border-box;
		width: 25%;
		max-width: 388px;
		position: absolute;
		bottom: -30px;
		right: 0;
		left: 0;
		margin: 0 auto;
		text-align: center;
	}

	.collabo_logo img{
		width: 100%;
	}

	/* 概要
	-------------------------------------------------- */
	#overview{
		padding: 80px 0;
	}

	#overview .secInner{
		box-sizing: border-box;
		width: 100%;
		max-width: 900px;
		margin: 0 auto;
		padding: 0 50px 80px;
	}

	.intro{
		text-align: center;
		font-size: 22px;
		font-weight: 600;
	}

	.schedule{
		width: 100%;
		max-width: 800px;
		margin: 80px auto 0;
		border-top: 1px solid #000000;
		border-bottom: 1px solid #000000;
		padding: 50px 0;
	}

	.schedule h2{
		font-size: 14px;
		text-align: center;
		font-weight: 500;
	}

	.date{
		display: block;
		font-size: 20px;
		font-weight: 600;
		text-align: center;
		margin-top: 10px;
	}

	.attention{
		margin-top: 40px;
	}

	.attention li,
	.attention2 li{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
		line-height: 1.8em;
	}

	.attention a{
		color: #4096d3;
	}

	.onsale{
		margin-top: 50px;
		padding-top: 50px;
		position: relative;
		z-index: 1;
	}

	.onsale::before{
		content: "";
		display: block;
		width: 170px;
		height: 1px;
		background: #cccccc;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 2;
		margin-left: -85px;
	}

	.link_wrap{
		display: flex;
		justify-content: center;
	}

	.link_wrap a{
		display: block;
		box-sizing: border-box;
		width: 100%;
		max-width: 300px;
		border-radius: 6px;
		margin: 0 30px;
		font-size: 14px;
		line-height: 60px;
		text-align: center;
		color: #ffffff;
		text-decoration: none;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		transition: 0.2s;
	}

	.link_wrap a:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.btn_black{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #000000;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	.btn_red{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #cc0000;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	.btn_blue{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #4c59ce;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 特典・キャンペーン
	-------------------------------------------------- */
	#privilege{
		background: #ebefef;
		padding: 80px 50px 210px;
	}

	#privilege .secInner{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}

	.cpList{
		display: flex;
		justify-content: space-between;
	}

	.cpList li{
		width: 24%;
		max-width: 285px;
	}

	.cpList li a{
		display: flex;
		height: 100%;
		flex-direction: column;
		box-sizing: border-box;
		padding: 30px 30px 80px;
		border-radius: 10px;
		text-decoration: none;
		color: #000000;
		background: url("../img/icon_arrow_bk.png") center bottom 20px no-repeat, #ffffff;
		background-size: 17px auto, auto;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		transition: 0.2s;
		position: relative;
		z-index: 1;
	}

	.cpList li:nth-child(1) .cpIcon,
	.cpList li:nth-child(2) .cpIcon{
		display: block;
		width: 80%;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -40px;
		left: 0;
	}

	.cpList li:nth-child(3) .cpIcon{
		display: block;
		width: 25%;
		aspect-ratio: 200 / 203;
		position: absolute;
		top: -50px;
		left: -10px;
	}

	.cpList .cpIcon img{
		width: 100%;
	}

	.cpList li a:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.cpTitle{
		font-size: 16px;
		font-weight: 500;
		line-height: 1.6em;
	}

	.cpImg{
		display: flex;
		align-content: center;
		height: 100%;
		margin-top: 20px;
	}

	.cpImg img{
		width: 100%;
		height: auto;
		object-fit: contain;
	}

	/* コンプリートセット
	-------------------------------------------------- */
	#complete{
		background: url("../img/pattern_complete.png") center top repeat-y;
		background-size: contain;
		position: relative;
		z-index: 1;
		padding: 190px 50px 80px;
	}

	#complete::before{
		display: block;
		content: "";
		width: 100%;
		max-width: 1356px;
		aspect-ratio: 1356 / 741;
		background: url("../img/fullset_pc.png") center center no-repeat;
		background-size: contain;
		position: absolute;
		z-index: 2;
		top: -190px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#complete .secInner{
		width: 100%;
		max-width: 1200px;
		box-sizing: border-box;
		margin: 0 auto;
		background: #ffffff;
		padding: 60px 80px;
		border-radius: 30px;
		position: relative;
		z-index: 5;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
	}

	#complete h2{
		font-size: 20px;
		font-weight: 500;
		text-align: center;
	}

	#complete .price{
		font-size: 20px;
		font-weight: 500;
		color: #cc0000;
		text-align: center;
		margin-top: 30px;
	}

	#complete .price span{
		font-size: 14px;
	}

	#complete .comment{
		font-size: 12px;
		text-align: center;
	}

	#complete .set{
		box-sizing: border-box;
		border: 1px solid #000000;
		padding: 20px;
		margin-top: 40px;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.8em;
	}

	#complete .set span{
		display: block;
	}

	#complete .set a{
		color: #4096D3;
		text-decoration: none;
	}

	#complete .set a:hover{
		text-decoration: underline;
	}

	.setFlex{
		display: flex;
		justify-content: space-between;
		margin: 40px auto 60px;
		align-items: center;
	}

	.flexL{
		box-sizing: border-box;
		width: 62%;
		max-width: 640px;
		display: flex;
		flex-wrap: wrap;
		position: relative;
		z-index: 1;
	}

	.flexL li{
		width: 31.3%;
		margin-right: 3%;
		margin-bottom: 3%;
	}

	.flexL li:nth-child(3){
		margin-right: 0;
	}

	.flexL li:nth-of-type(n+4){
		margin-bottom: 0;
	}

	.flexL li img{
		width: 100%;
	}

	.flexC{
		box-sizing: border-box;
		width: 5%;
		max-width: 60px;
		text-align: center;
	}

	.flexC img{
		width: 100%;
		max-width: 36px;
	}

	.flexR{
		box-sizing: border-box;
		width: 33%;
		max-width: 340px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-self: stretch;
	}

	.flexR span{
		box-sizing: border-box;
		padding-top: 25%;
		height: 100%;
	}

	.flexR img{
		width: 100%;
		max-width: 340px;
	}

	.flexR p{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
	}

	/* 個別紹介（共通）
	-------------------------------------------------- */
	#ichika .secInner,
	#nino .secInner,
	#miku .secInner,
	#yotsuba .secInner,
	#itsuki .secInner{padding: 0 50px;}

	.detail_wrap{
		box-sizing: border-box;
		display: flex;
		justify-content: space-between;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		background: #ffffff;
		border-radius: 30px;
		position: relative;
		z-index: 5;
		padding: 0 30px 30px;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
	}

	.character,
	.detail{
		box-sizing: border-box;
		width: 50%;
		padding: 30px;
		position: relative;
		z-index: 1;
	}

	.plate{
		position: absolute;
		z-index: 3;
		left: 25%;
		top: -60px;
	}

	.visual img{
		height: 100%;
		max-height: 800px;
	}

	.expansion{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		width: 137px;
		aspect-ratio: 1/1;
		position: absolute;
		z-index: 2;
		left: 35%;
		bottom: 60px;
		border-radius: 100%;
		background: #ffffff;
		text-align: center;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		padding: 5px;
		transition: 0.2s;
		cursor: pointer;
	}

	.expansion:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.expansion::before{
		display: block;
		content: "全身";
		width: 100%;
		font-size: 14px;
		line-height: 14px;
		font-weight: 600;
		text-align: center;
	}

	.expansion img{
		height: 100%;
		max-height: 88px;
		width: auto;
	}

	.detail h2{
		font-size: 20px;
		font-weight: 500;
	}

	.detail .price{
		font-size: 20px;
		font-weight: 500;
		color: #cc0000;
		margin-top: 20px;
	}

	.detail .price span{
		font-size: 14px;
	}

	.detail .comment{
		font-size: 12px;
	}

	.detail .image{
		margin-top: 30px;
	}

	.detail .image img{
		width: 100%;
		max-width: 516px;
	}

	.detail .image+p{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
	}

	.info{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 40px;
		position: relative;
		z-index: 10;
	}

	.info li:nth-child(1),
	.info li:nth-child(3){
		width: 70%;
		max-width: 350px;
	}

	.info li:nth-child(2),
	.info li:nth-child(4){
		width: 26%;
		max-width: 130px;
	}

	.info li a,
	.info li span{
		display: flex;
		align-items: center;
		box-sizing: border-box;
		height: 60px;
		transition: 0.2s;
		border-radius: 6px;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		text-align: center;
		cursor: pointer;
	}

	.info li:nth-child(1) a{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #cc0000;
		background-size: 21px auto, auto;
		color: #ffffff;
		font-size: 14px;
		text-decoration: none;
		justify-content: center;
	}

	.info li:nth-child(2) span{
		font-size: 14px;
		text-decoration: none;
		padding-left: 20px;
	}

	.info li:nth-child(3) a{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #000000;
		background-size: 21px auto, auto;
		color: #ffffff;
		font-size: 14px;
		text-decoration: none;
		justify-content: center;
		margin-top: 20px;
	}

	.info li:nth-child(4) span{
		font-size: 14px;
		text-decoration: none;
		padding-left: 20px;
		margin-top: 20px;
	}

	.info li a:hover,
	.info li span:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.slider{
		width: 100%;
		margin: 60px auto 0;
		position: relative;
		z-index: 5;
	}

	.slick-initialized .slick-slide{
		box-sizing: border-box;
		padding: 0 10px;
	}

	.slider li{
		margin: 0 auto;
	}

	.slick-slide img{
		margin: 0 auto;
		width: 100%;
	}

	/* 中野一花
	-------------------------------------------------- */
	#ichika{
		background: url("../img/motif_ichika.png") left top no-repeat, url("../img/pattern_ichika.png") center top repeat-y;
		background-size: 640px auto, contain;
		padding: 80px 0px;
	}

	#ichika .detail_wrap{
		border: 8px solid #f9d928;
		position: relative;
	}

	#ichika .detail_wrap::after{
		content: "";
		background: url("../img/accent_ichika.png") 0 0 no-repeat;
		background-size: contain;
		width: 100%;
		max-width: 565px;
		aspect-ratio: 565 / 198;
		position: absolute;
		right: -120px;
		bottom: -90px;
		z-index: -1;
	}

	#ichika .visual{
		position: absolute;
		z-index: 2;
		right: 30px	;
		bottom: -30px;
	}

	#ichika .expansion{border: 5px solid #f9d928;}
	#ichika .expansion::before{color: #f1a82e;}

	#ichika .info li:nth-child(2) span{
		background: url("../img/icon_view_bk.png") right 20px center no-repeat, #f9d928;
		background-size: auto 21px, auto;
		color: #000000;
	}

	#ichika .info li:nth-child(4) span{
		background: url("../img/icon_sound_bk.png") right 20px center no-repeat, #f9d928;
		background-size: auto 21px, auto;
		color: #000000;
	}

	/* 中野二乃
	-------------------------------------------------- */
	#nino{
		background: url("../img/motif_nino.png") left top no-repeat, url("../img/pattern_nino.png") center top repeat-y;
		background-size: 640px auto, contain;
		padding: 80px 0px;
	}

	#nino .detail_wrap{
		border: 8px solid #ae60a7;
		position: relative;
	}

	#nino .detail_wrap::after{
		content: "";
		background: url("../img/accent_nino.png") 0 0 no-repeat;
		background-size: contain;
		width: 100%;
		max-width: 618px;
		aspect-ratio: 618 / 274;
		position: absolute;
		right: -150px;
		bottom: -160px;
		z-index: -1;
	}

	#nino .visual{
		position: absolute;
		z-index: 2;
		right: 150px	;
		bottom: -30px;
	}

	#nino .expansion{
		border: 5px solid #ae60a7;
	}

	#nino .expansion::before{color: #ae60a7;}

	#nino .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #ae60a7;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#nino .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #ae60a7;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野三久
	-------------------------------------------------- */
	#miku{
		background: url("../img/motif_miku.png") left top no-repeat, url("../img/pattern_miku.png") center top repeat-y;
		background-size: 640px auto, contain;
		padding: 80px 0px;
	}

	#miku .detail_wrap{
		border: 8px solid #4096d3;
		position: relative;
	}

	#miku .detail_wrap::after{
		content: "";
		background: url("../img/accent_miku.png") 0 0 no-repeat;
		background-size: contain;
		width: 100%;
		max-width: 608px;
		aspect-ratio: 608 / 241;
		position: absolute;
		right: -150px;
		bottom: -160px;
		z-index: -1;
	}

	#miku .visual{
		position: absolute;
		z-index: 2;
		right: 130px;
		bottom: -30px;
	}

	#miku .expansion{
		border: 5px solid #4096d3;
	}

	#miku .expansion::before{color: #4096d3;}

	#miku .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #4096d3;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#miku .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #4096d3;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野四葉
	-------------------------------------------------- */
	#yotsuba{
		background: url("../img/motif_yotsuba.png") left top no-repeat, url("../img/pattern_yotsuba.png") center top repeat-y;
		background-size: 640px auto, contain;
		padding: 80px 0px;
	}

	#yotsuba .detail_wrap{
		border: 8px solid #69af4a;
		position: relative;
	}

	#yotsuba .detail_wrap::after{
		content: "";
		background: url("../img/accent_yotsuba.png") 0 0 no-repeat;
		background-size: contain;
		width: 100%;
		max-width: 777px;
		aspect-ratio: 777 / 236;
		position: absolute;
		right: -145px;
		bottom: -120px;
		z-index: -1;
	}

	#yotsuba .visual{
		position: absolute;
		z-index: 2;
		right: 180px;
		bottom: -30px;
	}

	#yotsuba .expansion{
		border: 5px solid #69af4a;
	}

	#yotsuba .expansion::before{color: #69af4a;}

	#yotsuba .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #69af4a;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#yotsuba .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #69af4a;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野五月
	-------------------------------------------------- */
	#itsuki{
		background: url("../img/motif_itsuki.png") left top no-repeat, url("../img/pattern_itsuki.png") center top repeat-y;
		background-size: 640px auto, contain;
		padding: 80px 0px;
	}

	#itsuki .detail_wrap{
		border: 8px solid #e42f2c;
		position: relative;
	}

	#itsuki .detail_wrap::after{
		content: "";
		background: url("../img/accent_itsuki.png") 0 0 no-repeat;
		background-size: contain;
		width: 100%;
		max-width: 571px;
		aspect-ratio: 571 / 296;
		position: absolute;
		right: -145px;
		bottom: -150px;
		z-index: -1;
	}

	#itsuki .visual{
		position: absolute;
		z-index: 2;

		right: 30px;
		bottom: -30px;
	}

	#itsuki .expansion{
		border: 5px solid #e42f2c;
	}

	#itsuki .expansion::before{color: #e42f2c;}

	#itsuki .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #e42f2c;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#itsuki .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #e42f2c;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* ポップアップ（モーダル）
	-------------------------------------------------- */
	.modal{
		display: none;
		position: fixed;
		z-index: 1000;
		left: 0;
		top: 0;
		width: 100%;
		box-sizing: border-box;
		height: 100%;
		background: #ffffff;
		padding: 2rem 6rem 0;
		animation-name: modalopen;
		animation-duration: 0.3s;
	}

	.modal::before{
		content: "";
		width: 15%;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		height: 100vh;
		animation-name: modalLine;
		animation-duration: 1s;
	}
	#modalVoice_ichika.modal::before,
	#modalBarrel_ichika.modal::before{background: #f8cd2a;}
	#modalVoice_nino.modal::before,
	#modalBarrel_nino.modal::before{background: #ae60a7;}
	#modalVoice_miku.modal::before,
	#modalBarrel_miku.modal::before{background: #4096d3;}
	#modalVoice_yotsuba.modal::before,
	#modalBarrel_yotsuba.modal::before{background: #69af4a;}
	#modalVoice_itsuki.modal::before,
	#modalBarrel_itsuki.modal::before{background: #e42f2c;}

	.closeBtn{
		display: block;
		box-sizing: border-box;
		position: absolute;
		top: 0;
		right: 0;
		width: 67px;
		aspect-ratio: 1/1;
		background: #000000;
		border: 0;
		cursor: pointer;
	}

	.closeBtn span{
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
	}

	.closeBtn span::before,
	.closeBtn span::after{
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 2px;
		height: 30px;
		background: #ffffff;
	}

	.closeBtn span::before{
		transform: translate(-50%,-50%) rotate(45deg);
	}

	.closeBtn span::after{
		transform: translate(-50%,-50%) rotate(-45deg);
	}

	.charaBox{
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
		width: 90%;
		max-width: 1100px;
		height: 90%;
		position: relative;
	}

	#modalVoice_ichika .charaBox,
	#modalVoice_nino .charaBox,
	#modalVoice_miku .charaBox,
	#modalVoice_yotsuba .charaBox,
	#modalVoice_itsuki .charaBox{
		overflow-y: scroll;
		/*スクロールバー非表示（IE・Edge）*/
		-ms-overflow-style: none;
		/*スクロールバー非表示（Firefox）*/
		scrollbar-width: none;
	}

	#modalVoice_itsuki .charaBox::-webkit-scrollbar{
		display:none;
	}

	.charaBox .boxLeft{
		width: 55%;
	}

	.btn_area{
		display: flex;
		justify-content: space-between;
		background: #efefef;
		border-radius: 50px;
		margin: 40px 0 20px;
	}

	.btn_area li{
		width: 50%;
		border-radius: 50px;
		text-align: center;
		color: #7e7e7e;
		padding: 15px 0;
		cursor: pointer;
		transition: 0.2s;
	}

	.btn_area li.active{
		background: #000000;
		color: #ffffff;
	}

	.tab_panel{
		display: none;
	}

	.tab_panel.active{
		display: block;
	}

	.name{
		font-size: 40px;
		line-height: 40px;
		font-weight: normal;
		letter-spacing: 0.05em;
	}

	.voice{
		display: block;
		margin-top: 40px;
		font-size: 18px;
		font-weight: 500;
	}

	.voiceList{
		margin-bottom: 40px;
	}

	.voiceList li{
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 30px 0;
		border-bottom: 1px solid #cccccc;
	}

	.voiceList li span{
		display: block;
		width: 17%;
		font-size: 14px;
		font-weight: 600;
	}

	.voiceList li p{
		display: block;
		width: 40%;
		text-align: left;
		font-size: 14px;
	}

	.voiceList li audio{
		display: block;
		width: 43%;
		height: 40px;
	}

	.boxRight{
		width: 45%;
		height: 90%;
		box-sizing: border-box;
		padding: 0 2rem;
		text-align: center;
	}

	.boxRight img{
		width: auto;
		height: 100%;
	}

	/* ポップアップ（モーダルバレル）
	-------------------------------------------------- */
	.boxLeft .barrel_name{
		font-size: 20px;
		font-weight: normal;
		letter-spacing: 0.05em;
	}

	.boxLeft .price{
		font-size: 20px;
		font-weight: 500;
		color: #cc0000;
		margin-top: 20px;
	}

	.boxLeft .comment{
		font-size: 12px;
	}

	.modal .link_wrap{
		flex-wrap: wrap;
		justify-content: center;
		margin-top: 40px;
	}

	.modal .link_wrap a{
		width: 100%;
		max-width: 350px;
	}

	.modal .link_wrap a.btn_black{
		margin-top: 20px;
	}

	#modalBarrel_ichika .charaBox,
	#modalBarrel_nino .charaBox,
	#modalBarrel_miku .charaBox,
	#modalBarrel_yotsuba .charaBox,
	#modalBarrel_itsuki .charaBox{
		align-items: center;
	}

	#modalBarrel_ichika .boxLeft,
	#modalBarrel_nino .boxLeft,
	#modalBarrel_miku .boxLeft,
	#modalBarrel_yotsuba .boxLeft,
	#modalBarrel_itsuki .boxLeft{
		width: 45%;
	}

	#modalBarrel_ichika .boxRight,
	#modalBarrel_nino .boxRight,
	#modalBarrel_miku .boxRight,
	#modalBarrel_yotsuba .boxRight,
	#modalBarrel_itsuki .boxRight{
		width: 55%;
		padding: 0;
	}

	.orbitvu-viewer-object-canvas.zindexer{
		transform: scale(0.85) !important;
	}

	.ovvvport{
		background: none !important;
		border: none !important;
	}

	.orbitvu-viewer-object-canvas{
		background: none !important;
	}

	.orbitvu-viewer{
		width: 400px;
		height: 600px;
		margin: 0;
	}

	.boxRight p{
		text-align: left;
		padding-left: 1em;
		text-indent: -1em;
		font-size: 14px;
		margin-top: 20px;
	}

	div.ov-control-panel > div{
		display: flex !important;
		justify-content: center;
	}

	div.ov-control-panel div.ovviosbuttonwrapper{
		margin: 0 8px !important;
		border-radius: 5px;
		padding: 5px;
	}
	#modalBarrel_ichika div.ov-control-panel div.ovviosbuttonwrapper{background: #f8cd2a;}
	#modalBarrel_nino div.ov-control-panel div.ovviosbuttonwrapper{background: #ae60a7;}
	#modalBarrel_miku div.ov-control-panel div.ovviosbuttonwrapper{background: #4096d3;}
	#modalBarrel_yotsuba div.ov-control-panel div.ovviosbuttonwrapper{background: #69af4a;}
	#modalBarrel_itsuki div.ov-control-panel div.ovviosbuttonwrapper{background: #e42f2c;}

	div.ovvioszoomin,
	div.ovvioszoomout,
	div.ovviosfullscreendesktop,
	div.ovviosautorotate,
	div.ovviosinfodesktop,
	div.ovviosmoverotate,
	div.ovviosbutton,
	div.ovviosbutton svg{
		width: 36px !important;
		height: 36px !important;
	}
	div.ov-control-panel{
		bottom: 50px !important;
	}

	#ovContent-s2ws9yW3T58g3QqCAtBMb7,
	#ovContent-8jmuYuxGszLfvbwKcm5rEU,
	#ovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	#ovContent-Q4xML2su4TZe7V7PzHFNmM,
	#ovContent-QdyvC2rSfTuePL9AUtBVEg{
		padding-bottom: 70px;
	}

	#path_backgroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	#path_backgroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	#path_backgroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	#path_backgroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	#path_backgroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		fill-opacity: 0 !important;
		fill: rgb(0,50,0) !important;
	}

	#path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7{
		stroke: rgb(0,0,0) !important;
		stroke-opacity: 0 !important;
	}
	#path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	#path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	#path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	#path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		stroke: rgb(255,255,255) !important;
		stroke-opacity: 0 !important;
	}

	/* 制御ボタンの中身の色 */
	#modalBarrel_ichika div.ov-control-panel > div > div:not(:last-child) #foreground path{
		fill-opacity: 1 !important;
		fill: rgb(0,0,0) !important;
	}
	#modalBarrel_nino div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_miku div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_yotsuba div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_itsuki div.ov-control-panel > div > div:not(:last-child) #foreground path{
		fill-opacity: 1 !important;
		fill: rgb(255,255,255) !important;
	}

	/* 制御ボタン（拡大・縮小）の色 */
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7{
		fill-opacity: 1 !important;
		fill: rgb(0,0,0) !important;
	}
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		fill-opacity: 1 !important;
		fill: rgb(255,255,255) !important;
	}

	/* 最後の制御ボタンの透明度 */
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		stroke-opacity: 1 !important;
	}

	div.ov-control-panel > div > div:nth-child(1),
	div.ov-control-panel > div > div:nth-child(5),
	div.ov-control-panel > div > div:nth-child(6){
		display: none;
	}

	/* 缶バッジ
	-------------------------------------------------- */
	#badge{
		background: #ebefef;
		padding: 80px 50px 0;
	}

	#badge .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 80px 100px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#badge .obi{
		display: block;
		width: 100%;
		max-width: 350px;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -50px;
		left: 10px;
	}

	#badge .obi img{
		width: 100%;
	}

	#badge h2{
		text-align: center;
	}

	.badge_list{
		display: flex;
		justify-content: center;
		margin-top: 50px;
	}

	.badge_list li{
		width: 20%;
		max-width: 140px;
		margin: 0 5px;
	}

	.badge_list li img{
		width: 100%;
	}

	#badge .text{
		text-align: center;
		font-size: 14px;
		margin-top: 80px;
		line-height: 1.8em;
	}

	#badge .attention{
		margin-top: 80px;
	}

	/* ビッグアクリルダーツスタンド
	-------------------------------------------------- */
	#acrylic{
		background: #ebefef;
		padding: 80px 50px 0;
	}

	#acrylic .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 80px 100px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#acrylic .obi{
		display: block;
		width: 100%;
		max-width: 340px;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -50px;
		left: 10px;
	}

	#acrylic .obi img{
		width: 100%;
	}

	#acrylic h2{
		text-align: center;
	}

	.acrylic_stand{
		display: flex;
		justify-content: space-around;
		margin-top: 50px;
	}

	.acrylic_stand li{
		width: 50%;
		max-width: 490px;
	}

	.acrylic_stand li img{
		width: 100%;
	}

	#acrylic .text{
		text-align: center;
		font-size: 14px;
		margin-top: 60px;
		line-height: 1.8em;
	}

	#acrylic .link_wrap{
		margin: 80px 0;
	}

	/* スタンディパネル
	-------------------------------------------------- */
	#panel{
		background: #ebefef;
		padding: 80px 50px 0;
	}

	#panel .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 80px 100px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#panel .obi{
		display: block;
		width: 100%;
		max-width: 150px;
		aspect-ratio: 200 / 203;
		position: absolute;
		top: -50px;
		left: 10px;
	}

	#panel .obi img{
		width: 100%;
	}

	#panel h2{
		text-align: center;
	}

	.panel_img{
		margin-top: 80px;
		text-align: center;
	}

	.panel_img img{
		width: 100%;
		max-width: 894px;
	}

	#panel .text{
		text-align: center;
		font-size: 14px;
		margin-top: 60px;
		line-height: 1.8em;
	}

	#panel .text span{
		color: #cc0000;
		font-weight: 600;
	}

	#panel .link_wrap{
		margin: 80px 0;
	}

	/* 筐体ラッピング
	-------------------------------------------------- */
	#wrapping{
		background: #ebefef;
		padding: 80px 50px;
	}

	#wrapping .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 80px 100px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#wrapping h2{
		text-align: center;
	}

	.machine{
		margin-top: 100px;
		display: flex;
		justify-content: space-between;
	}

	.machine li{
		width: 20%;
		max-width: 192px;
	}

	.machine li a{
		display: block;
		box-sizing: border-box;
		color: #4096d3;
		font-size: 14px;
		text-align: center;
		text-decoration: none;
	}

	.machine li a img{
		width: 100%;
	}

	.machine li a span{
		display: block;
		margin-top: 20px;
	}

	.machine li a:hover img{
		opacity: 0.8;
	}

	.machine li a:hover span{
		text-decoration: underline;
	}

	#wrapping .text{
		text-align: center;
		font-size: 14px;
		margin-top: 60px;
		line-height: 1.8em;
	}

	#wrapping .link_wrap{
		margin: 80px 0;
	}

	/* フッター
	-------------------------------------------------- */
	footer{
		display: none;
	}

	.copyright{
		background: #333333;
		color: #ffffff;
		font-size: clamp(14px, 1.3vw, 16px);
		text-align: center;
		padding: 10px 0;
	}
}

/* --------------------------------------------------

							ここからスマホ表示

--------------------------------------------------*/
@media screen and (max-width: 767px){
	.pcNone{display: block;}
	.spNone{display: none;}

	/* メインビジュアル
	-------------------------------------------------- */
	.mainSp img{
		width: 100%;
	}

	/* 概要
	-------------------------------------------------- */
	#overview{
		padding: 40px 0;
	}

	#overview .secInner{
		box-sizing: border-box;
		width: 100%;
		max-width: 900px;
		margin: 0 auto;
		padding: 0 20px 40px;
	}

	.intro{
		text-align: center;
		font-size: 16px;
		font-weight: 600;
	}

	.schedule{
		width: 100%;
		max-width: 800px;
		margin: 40px auto 0;
		border-top: 1px solid #000000;
		border-bottom: 1px solid #000000;
		padding: 40px 0;
	}

	.schedule h2{
		font-size: 14px;
		text-align: center !important;
		font-weight: 500;
	}

	.date{
		display: block;
		font-size: 18px;
		font-weight: 600;
		text-align: center;
		margin-top: 20px;
	}

	.attention{
		margin-top: 30px;
	}

	.attention2{
		display: none;
		padding-bottom: 20px;
		border-bottom: 1px solid #cccccc;
	}

	.attention li,
	.attention2 li{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
		line-height: 1.8em;
	}

	.attention a{
		color: #4096d3;
	}

	.accordion.switch{
		border-top: 1px solid #cccccc;
		border-bottom: 1px solid #cccccc;
		font-size: 14px;
		padding: 10px 0;
		text-align: center;
		margin: 20px 0;
		position: relative;
		z-index: 1;
	}

	.accordion.switch::before{
		content: "";
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 16px;
		width: 1px;
		height: 14px;
		margin-top: -7px;
		background-color: #000000;
		transition: 0.2s;
	}

	.accordion.switch.open{
		border-bottom: 0;
	}

	.accordion.switch.open::before{
		transform: rotate(90deg);
		opacity: 0;
	}

	.accordion.switch::after{
		content: "";
		display: inline-block;
		position: absolute;
		top: 50%;
		right: 10px;
		width: 14px;
		height: 1px;
		margin-top: -1px;
		background-color: #000000;
	}

	.accordion.switch span{
		display: block;
		text-align: center;
		color: #cc0000;
	}

	.onsale{
		margin-top: 30px;
		position: relative;
		z-index: 1;
	}

	.link_wrap{
		box-sizing: border-box;
		padding: 0 20px;
	}

	.link_wrap a{
		display: block;
		box-sizing: border-box;
		width: 100%;
		border-radius: 6px;
		margin-bottom: 20px;
		font-size: 14px;
		line-height: 60px;
		text-align: center;
		color: #ffffff;
		text-decoration: none;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		transition: 0.2s;
	}
	.link_wrap a:last-child{
		margin-bottom: 0;
	}

	.link_wrap a:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.btn_black{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #000000;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	.btn_red{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #cc0000;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	.btn_blue{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #4c59ce;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 特典・キャンペーン
	-------------------------------------------------- */
	#privilege{
		background: #ebefef;
		padding: 40px 20px 100px;
	}

	#privilege .secInner{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
	}

	.cpList li{
		width: 100%;
		margin-bottom: 40px;
	}

	.cpList li:last-child{
		margin-bottom: 0;
	}

	.cpList li a{
		display: flex;
		height: 100%;
		flex-direction: column;
		box-sizing: border-box;
		padding: 60px 60px 40px 20px;
		border-radius: 10px;
		text-decoration: none;
		color: #000000;
		background: url("../img/icon_arrow_bk.png") right 20px center no-repeat, #ffffff;
		background-size: 21px auto, auto;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		transition: 0.2s;
		position: relative;
		z-index: 1;
	}

	.cpList li:nth-child(4) a{
		padding: 20px 60px 20px 20px;
	}

	.cpList li:nth-child(1) .cpIcon,
	.cpList li:nth-child(2) .cpIcon{
		display: block;
		width: 60%;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -20px;
		left: -10px;
	}

	.cpList li:nth-child(3) .cpIcon{
		display: block;
		width: 20%;
		aspect-ratio: 200 / 203;
		position: absolute;
		top: -30px;
		left: -10px;
	}

	.cpList .cpIcon img{
		width: 100%;
	}

	.cpList li a:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.cpTitle{
		font-size: 16px;
		font-weight: 500;
		line-height: 1.5em;
	}

	.cpImg{
		display: none;
		align-content: center;
		height: 100%;
		margin-top: 20px;
	}

	.cpImg img{
		width: 100%;
		height: auto;
		object-fit: contain;
	}

	/* コンプリートセット
	-------------------------------------------------- */
	#complete{
		background: url("../img/bgi_pc.png") center top no-repeat;
		background-size: contain;
		position: relative;
		z-index: 1;
		padding: 140px 0 0;
	}

	#complete::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 908 / 850;
		background: url("../img/fullset_sp.png") left -10px top no-repeat;
		background-size: 113%;
		position: absolute;
		z-index: 2;
		top: -70px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#complete .secInner{
		width: 100%;
		max-width: 1200px;
		box-sizing: border-box;
		margin: 0 auto;
		background: #ffffff;
		padding: 40px 20px;
		border-radius: 20px 20px 0 0;
		position: relative;
		z-index: 5;
	}

	#complete h2{
		font-size: 16px;
		font-weight: 500;
		text-align: center;
	}

	#complete .price{
		font-size: 20px;
		font-weight: 500;
		color: #cc0000;
		text-align: left;
		margin-top: 30px;
	}

	#complete .price span{
		font-size: 14px;
	}

	#complete .comment{
		font-size: 12px;
		text-align: left;
	}

	#complete .accordion{
		margin-top: 30px;
		padding: 20px 0;
	}

	#complete .accordion.open{
		margin-bottom: 0;
	}

	#complete .set{
		display: none;
		box-sizing: border-box;
		border-bottom: 1px solid #cccccc;
		padding: 0 20px 20px;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.8em;
	}

	#complete .set span{
		display: none;
	}

	#complete .set a{
		color: #4096D3;
		text-decoration: none;
	}

	#complete .set a:hover{
		text-decoration: underline;
	}

	.setFlex{
		margin: 40px auto;
	}

	.flexL{
		display: flex;
		justify-content: space-between;
		box-sizing: border-box;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		z-index: 1;
	}

	.flexL li{
		width: 48%;
		margin-bottom: 4%;
	}

	.flexL li:nth-child(3){
		margin-right: 0;
	}

	.flexL li:nth-of-type(n+4){
		margin-bottom: 0;
	}

	.flexL li img{
		width: 100%;
	}

	.flexC{
		box-sizing: border-box;
		width: 100%;
		text-align: center;
		padding: 20px 0;
	}

	.flexC img{
		width: 100%;
		max-width: 34px;
	}

	.flexR{
		box-sizing: border-box;
		width: 100%;
		text-align: center;
	}

	.flexR img{
		width: 100%;
		max-width: 340px;
	}

	.flexR p{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
		text-align: left;
		margin-top: 10px;
	}

	#complete .link_wrap{
		padding: 0;
	}

	/* 個別紹介（共通）
	-------------------------------------------------- */
	.detail_wrap{
		box-sizing: border-box;
		display: flex;
		justify-content: space-between;
		width: 100%;
		max-width: 1200px;
		margin: 0 auto;
		background: #ffffff;
		border-radius: 20px 20px 0 0;
		position: relative;
		z-index: 5;
		padding: 40px 20px 0;
	}

	.character{
		display: block;
		position: relative;
		z-index: 1;
	}

	.detail{
		box-sizing: border-box;
		width: 100%;
		position: relative;
		z-index: 1;
	}

	.plate{
		position: absolute;
		z-index: 3;
		right: 20px;
		top: -320px;
		display: block;
		width: 40%;
		max-width: 286px;
		aspect-ratio: 286 / 165;
	}

	.plate img{
		width: 100%;
	}

	.expansion{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		box-sizing: border-box;
		width: 110px;
		aspect-ratio: 1/1;
		position: absolute;
		z-index: 2;
		right: 30px;
		top: -100px;
		border-radius: 100%;
		background: #ffffff;
		text-align: center;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		padding: 5px;
		transition: 0.2s;
		cursor: pointer;
	}

	.expansion:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.expansion::before{
		display: block;
		content: "全身";
		width: 100%;
		font-size: 14px;
		line-height: 14px;
		font-weight: 600;
		text-align: center;
	}

	.expansion img{
		height: 70%;
		width: auto;
	}

	.detail h2{
		font-size: 16px;
		font-weight: 500;
	}

	.detail .price{
		font-size: 16px;
		font-weight: 500;
		color: #cc0000;
		margin-top: 20px;
	}

	.detail .price span{
		font-size: 14px;
	}

	.detail .comment{
		font-size: 12px;
	}

	.detail .image{
		margin-top: 30px;
	}

	.detail .image img{
		width: 100%;
		max-width: 516px;
	}

	.detail .image+p{
		font-size: 12px;
		padding-left: 1em;
		text-indent: -1em;
	}

	.info{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 40px;
		position: relative;
		z-index: 10;
	}

	.info li:nth-child(1),
	.info li:nth-child(3){
		width: 100%;
	}

	.info li:nth-child(2),
	.info li:nth-child(4){
		width: 48%;
		margin-top: 20px;
	}

	.info li a,
	.info li span{
		display: flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: 60px;
		transition: 0.2s;
		border-radius: 6px;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		text-align: center;
		cursor: pointer;
	}

	.info li:nth-child(1){order: 1;}
	.info li:nth-child(2){order: 3;}
	.info li:nth-child(3){order: 2;}
	.info li:nth-child(4){order: 4;}

	.info li:nth-child(1) a{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #cc0000;
		background-size: 21px auto, auto;
		color: #ffffff;
		font-size: 14px;
		text-decoration: none;
		justify-content: center;
	}

	.info li:nth-child(2) span{
		font-size: 14px;
		text-decoration: none;
	}

	.info li:nth-child(3) a{
		background: url("../img/icon_arrow_wh.png") right 10px center no-repeat, #000000;
		background-size: 21px auto, auto;
		color: #ffffff;
		font-size: 14px;
		text-decoration: none;
		justify-content: center;
		margin-top: 20px;
	}

	.info li:nth-child(4) span{
		font-size: 14px;
		text-decoration: none;
	}

	.info li a:hover,
	.info li span:hover{
		transform: translateY(3px);
		box-shadow: 0 0 6px 0 rgba(0,0,0,0.16);
	}

	.slider{
		width: 100%;
		margin: 40px auto;
		position: relative;
		z-index: 5;
		overflow-x: hidden;
	}

	.slick-initialized .slick-slide{
		box-sizing: border-box;
		padding: 0 5px;
	}

	.slider li{
		margin: 0 auto;
	}

	.slick-slide img{
		margin: 0 auto;
		width: 100%;
	}

	/* 中野一花
	-------------------------------------------------- */
	#ichika{
		background: url("../img/bgi_ichika_sp.png") center top no-repeat;
		background-size: contain;
		padding: 300px 0 0;
		position: relative;
		z-index: 1;
	}

	#ichika::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 670 / 825;
		background: url("../img/ichika.png") center top no-repeat;
		background-size: 90%;
		position: absolute;
		z-index: 2;
		top: -20px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#ichika .detail_wrap{
		position: relative;
	}

	#ichika .visual{
		position: absolute;
		z-index: 2;
		right: 30px	;
		bottom: -30px;
	}

	#ichika .expansion{border: 3px solid #f9d928;}
	#ichika .expansion::before{color: #f1a82e;}

	#ichika .info li:nth-child(2) span{
		background: url("../img/icon_view_bk.png") right 20px center no-repeat, #f9d928;
		background-size: auto 21px, auto;
		color: #000000;
	}

	#ichika .info li:nth-child(4) span{
		background: url("../img/icon_sound_bk.png") right 20px center no-repeat, #f9d928;
		background-size: auto 21px, auto;
		color: #000000;
	}

	/* 中野二乃
	-------------------------------------------------- */
	#nino{
		background: url("../img/bgi_nino_sp.png") center top no-repeat;
		background-size: contain;
		padding: 300px 0 0;
		position: relative;
		z-index: 1;
	}

	#nino::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 367 / 825;
		background: url("../img/nino.png") center top no-repeat;
		background-size: 50%;
		position: absolute;
		z-index: 2;
		top: -20px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#nino .detail_wrap{
		position: relative;
	}

	#nino .visual{
		position: absolute;
		z-index: 2;
		right: 150px	;
		bottom: -30px;
	}

	#nino .expansion{
		border: 3px solid #ae60a7;
	}

	#nino .expansion::before{color: #ae60a7;}

	#nino .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 10px center no-repeat, #ae60a7;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#nino .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 10px center no-repeat, #ae60a7;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野三久
	-------------------------------------------------- */
	#miku{
		background: url("../img/bgi_miku_sp.png") center top no-repeat;
		background-size: contain;
		padding: 300px 0 0;
		position: relative;
		z-index: 1;
	}

	#miku::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 385 / 803;
		background: url("../img/miku.png") center top no-repeat;
		background-size: 60%;
		position: absolute;
		z-index: 2;
		top: -20px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#miku .detail_wrap{
		position: relative;
	}

	#miku .visual{
		position: absolute;
		z-index: 2;
		right: 130px;
		bottom: -30px;
	}

	#miku .expansion{
		border: 3px solid #4096d3;
	}

	#miku .expansion::before{color: #4096d3;}

	#miku .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #4096d3;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#miku .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #4096d3;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野四葉
	-------------------------------------------------- */
	#yotsuba{
		background: url("../img/bgi_yotsuba_sp.png") center top no-repeat;
		background-size: contain;
		padding: 300px 0 0;
		position: relative;
		z-index: 1;
	}

	#yotsuba::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 363 / 777;
		background: url("../img/yotsuba.png") center top no-repeat;
		background-size: 60%;
		position: absolute;
		z-index: 2;
		top: -20px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#yotsuba .detail_wrap{
		position: relative;
	}

	#yotsuba .visual{
		position: absolute;
		z-index: 2;
		right: 180px;
		bottom: -30px;
	}

	#yotsuba .expansion{
		border: 3px solid #69af4a;
	}

	#yotsuba .expansion::before{color: #69af4a;}

	#yotsuba .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #69af4a;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#yotsuba .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #69af4a;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* 中野五月
	-------------------------------------------------- */
	#itsuki{
		background: url("../img/bgi_itsuki_sp.png") center top no-repeat;
		background-size: contain;
		padding: 300px 0 0;
		position: relative;
		z-index: 1;
	}

	#itsuki::before{
		display: block;
		content: "";
		width: 100%;
		aspect-ratio: 670 / 825;
		background: url("../img/itsuki.png") center top no-repeat;
		background-size: 100%;
		position: absolute;
		z-index: 2;
		top: -30px;
		left: 0;
		right: 0;
		margin: 0 auto;
	}

	#itsuki .detail_wrap{
		position: relative;
	}

	#itsuki .visual{
		position: absolute;
		z-index: 2;
		right: 30px;
		bottom: -30px;
	}

	#itsuki .expansion{
		border: 3px solid #e42f2c;
	}

	#itsuki .expansion::before{color: #e42f2c;}

	#itsuki .info li:nth-child(2) span{
		background: url("../img/icon_view_wh.png") right 20px center no-repeat, #e42f2c;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	#itsuki .info li:nth-child(4) span{
		background: url("../img/icon_sound_wh.png") right 20px center no-repeat, #e42f2c;
		background-size: auto 21px, auto;
		color: #ffffff;
	}

	/* ポップアップ（モーダル）
	-------------------------------------------------- */
	.modal{
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1000;
		display: none;
		box-sizing: border-box;
		background: #ffffff;
		animation-name: modalopen;
		animation-duration: 0.3s;
	}

	.modal::before{
		content: "";
		width: 60px;
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		height: 100vh;
		animation-name: modalLine;
		animation-duration: 1s;
	}
	#modalVoice_ichika.modal::before,
	#modalBarrel_ichika.modal::before{background: #f8cd2a;}
	#modalVoice_nino.modal::before,
	#modalBarrel_nino.modal::before{background: #ae60a7;}
	#modalVoice_miku.modal::before,
	#modalBarrel_miku.modal::before{background: #4096d3;}
	#modalVoice_yotsuba.modal::before,
	#modalBarrel_yotsuba.modal::before{background: #69af4a;}
	#modalVoice_itsuki.modal::before,
	#modalBarrel_itsuki.modal::before{background: #e42f2c;}

	#modalVoice_ichika,
	#modalVoice_niru,
	#modalVoice_miku,
	#modalVoice_yotsuba,
	#modalVoice_itsuki{
		overflow-y: scroll;
	}

	.closeBtn{
		display: block;
		box-sizing: border-box;
		position: fixed;
		top: 10px;
		right: 10px;
		width: 40px;
		aspect-ratio: 1/1;
		background: #000000;
		border: 0;
		cursor: pointer;
		z-index: 1000;
	}

	.closeBtn span{
		display: block;
		position: relative;
		width: 100%;
		height: 100%;
	}

	.closeBtn span::before,
	.closeBtn span::after{
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 2px;
		height: 30px;
		background: #ffffff;
	}

	.closeBtn span::before{
		transform: translate(-50%,-50%) rotate(45deg);
	}

	.closeBtn span::after{
		transform: translate(-50%,-50%) rotate(-45deg);
	}

	.charaBox{
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		padding: 2rem 0 0;
		margin: 0 auto;
		width: 100%;
		height: 100dvh;
		position: relative;
		overflow-y: scroll;
	}

	.charaBox .boxLeft{
		order: 2;
		width: 100%;
		box-sizing: border-box;
		padding: 2rem 20px;
		padding-bottom: calc(env(safe-area-inset-bottom) + 40px);
		background: rgba(255,255,255,0.6);
		margin-top: -65%;
	}

	.charaBox .boxRight{
		order: 1;
		width: 90%;
		margin: 0 auto;
		text-align: center;
	}

	.charaBox .boxRight img{
		width: auto;
		height: 80vh;
	}

	.btn_area{
		display: flex;
		justify-content: space-between;
		background: #efefef;
		border-radius: 50px;
		margin: 20px 0;
	}

	.btn_area li{
		width: 50%;
		border-radius: 50px;
		text-align: center;
		color: #7e7e7e;
		padding: 10px 0;
		cursor: pointer;
		transition: 0.2s;
		font-size: 14px;
	}

	.btn_area li.active{
		background: #000000;
		color: #ffffff;
	}

	.tab_panel{
		display: none;
	}

	.tab_panel.active{
		display: block;
	}

	.name{
		font-size: 30px;
		line-height: 30px;
		font-weight: normal;
		letter-spacing: 0.05em;
	}

	.voice{
		display: block;
		margin-top: 40px;
		font-size: 16px;
		font-weight: 500;
	}

	.voiceList{
		margin-bottom: 30px;
	}

	.voiceList li{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		padding: 20px 0;
		border-bottom: 1px solid #cccccc;
	}

	.voiceList li span{
		display: block;
		width: 30%;
		font-size: 14px;
		font-weight: 600;
	}

	.voiceList li p{
		display: block;
		width: 65%;
		text-align: left;
		font-size: 14px;
	}

	.voiceList li audio{
		display: block;
		width: 100%;
		height: 50px;
		margin-top: 20px;
	}

	/* バレル（モーダル） */
	#modalBarrel_ichika .boxLeft,
	#modalBarrel_nino .boxLeft,
	#modalBarrel_miku .boxLeft,
	#modalBarrel_yotsuba .boxLeft,
	#modalBarrel_itsuki .boxLeft{
		margin: 120px 0 0;
		padding: 2rem 20px;
	}

	/*#modalBarrel_ichika .boxRight,
	#modalBarrel_nino .boxRight,
	#modalBarrel_miku .boxRight,
	#modalBarrel_yotsuba .boxRight,
	#modalBarrel_itsuki .boxRight{
		height: 63vh;
	}*/

	.barrel_name{
		font-size: 16px;
		font-weight: 500;
	}

	.boxLeft .price{
		color: #cc0000;
		font-size: 16px;
		font-weight: 500;
		margin-top: 20px;
	}

	.boxLeft .comment{
		font-size: 12px;
	}

	.boxLeft .link_wrap{
		margin-top: 40px;
	}

	.orbitvu-viewer{
		width: 100%;
		height: 380px;
		margin: 0 auto;
	}

	.boxRight p{
		text-align: left;
		padding-left: 1em;
		text-indent: -1em;
		font-size: 14px;
		margin-top: 40px;
	}

	div.ovvioszoomin,
	div.ovvioszoomout,
	div.ovviosfullscreendesktop,
	div.ovviosautorotate,
	div.ovviosinfodesktop,
	div.ovviosmoverotate,
	div.ovviosbutton,
	div.ovviosbutton svg{
		width: 26px !important;
		height: 26px !important;
	}

	div.ov-control-panel{
		bottom: 40px !important;
	}

	#ovContent-AVgzzcHZtypbqRyed8hfB3-obj-ovvvport{
		height: 100% !important;
	}

	.ovvvport{
		box-sizing: inherit !important;
		padding-bottom: 30px !important;
	}

	div.ovvvport,
	div.ovvvport.zoomin .orbitvu-viewer-object-canvas,
	div.ovvvport.zoomin .ovvtiles,
	canvas.orbitvu-viewer-object-canvas,
	canvas.ovvtiles{
		background: none !important;
		border: none !important;
	}

	.orbitvu-viewer-object-canvas.zindexer{
		transform: scale(0.85) !important;
	}

	div.ov-control-panel div.ovviosbuttonwrapper{
		margin: 0 8px !important;
		border-radius: 5px;
		padding: 5px;
	}
	#modalBarrel_ichika div.ov-control-panel div.ovviosbuttonwrapper{background: #f8cd2a;}
	#modalBarrel_nino div.ov-control-panel div.ovviosbuttonwrapper{background: #ae60a7;}
	#modalBarrel_miku div.ov-control-panel div.ovviosbuttonwrapper{background: #4096d3;}
	#modalBarrel_yotsuba div.ov-control-panel div.ovviosbuttonwrapper{background: #69af4a;}
	#modalBarrel_itsuki div.ov-control-panel div.ovviosbuttonwrapper{background: #e42f2c;}

	#path_backgroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	#path_backgroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	#path_backgroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	#path_backgroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	#path_backgroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		fill-opacity: 0 !important;
		fill: rgb(0,50,0) !important;
	}

	#path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7{
		stroke: rgb(0,0,0) !important;
		stroke-opacity: 0 !important;
	}
	#path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	#path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	#path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	#path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		stroke: rgb(255,255,255) !important;
		stroke-opacity: 0 !important;
	}

	/* 制御ボタンの中身の色 */
	#modalBarrel_ichika div.ov-control-panel > div > div:not(:last-child) #foreground path{
		fill-opacity: 1 !important;
		fill: rgb(0,0,0) !important;
	}
	#modalBarrel_nino div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_miku div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_yotsuba div.ov-control-panel > div > div:not(:last-child) #foreground path,
	#modalBarrel_itsuki div.ov-control-panel > div > div:not(:last-child) #foreground path{
		fill-opacity: 1 !important;
		fill: rgb(255,255,255) !important;
	}

	/* 制御ボタン（拡大・縮小）の色 */
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7{
		fill-opacity: 1 !important;
		fill: rgb(0,0,0) !important;
	}
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:nth-child(3) #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg,
	div.ov-control-panel > div > div:nth-child(4) #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		fill-opacity: 1 !important;
		fill: rgb(255,255,255) !important;
	}

	/* 最後の制御ボタンの透明度 */
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-s2ws9yW3T58g3QqCAtBMb7,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-8jmuYuxGszLfvbwKcm5rEU,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-cFuQxKxLD8cy6GzPZ2KeRY,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-Q4xML2su4TZe7V7PzHFNmM,
	div.ov-control-panel > div > div:last-child #path_foregroundovContent-QdyvC2rSfTuePL9AUtBVEg{
		stroke-opacity: 1 !important;
	}

	div.ov-control-panel > div > div:nth-child(1),
	div.ov-control-panel > div > div:nth-child(5),
	div.ov-control-panel > div > div:nth-child(6){
		display: none;
	}

	/* 缶バッジ
	-------------------------------------------------- */
	#badge{
		background: #ebefef;
		padding: 80px 20px 0;
	}

	#badge .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 20px;
		padding: 40px 20px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#badge .obi{
		display: block;
		width: 75%;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -30px;
		left: -10px;
	}

	#badge .obi img{
		width: 100%;
	}

	#badge h2{
		text-align: left;
		font-size: 16px;
	}

	.badge_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-top: 40px;
	}

	.badge_list li{
		width: 30%;
		max-width: 140px;
		margin: 0 1.5%;
	}

	.badge_list li img{
		width: 100%;
	}

	#badge .text{
		text-align: left;
		font-size: 14px;
		margin-top: 40px;
		line-height: 1.8em;
	}

	#badge .attention{
		margin-top: 20px;
	}

	/* ビッグアクリルダーツスタンド
	-------------------------------------------------- */
	#acrylic{
		background: #ebefef;
		padding: 80px 20px 0;
	}

	#acrylic .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 20px;
		padding: 40px 20px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#acrylic .obi{
		display: block;
		width: 75%;
		aspect-ratio: 531 / 138;
		position: absolute;
		top: -30px;
		left: -10px;
	}

	#acrylic .obi img{
		width: 100%;
	}

	#acrylic h2{
		text-align: left;
		font-size: 16px;
	}

	#acrylic h2 br{
		display: none;
	}

	.acrylic_stand{
		margin-top: 40px;
	}

	.acrylic_stand li{
		width: 80%;
		max-width: 490px;
		text-align: center;
		margin: 0 auto 20px;
	}

	.acrylic_stand li img{
		width: 100%;
	}

	#acrylic .text{
		text-align: left;
		font-size: 14px;
		margin-top: 40px;
		line-height: 1.8em;
	}

	#acrylic .link_wrap{
		margin: 40px 0;
	}

	/* スタンディパネル
	-------------------------------------------------- */
	#panel{
		background: #ebefef;
		padding: 80px 20px 0;
	}

	#panel .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 40px 20px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#panel .obi{
		display: block;
		width: 100%;
		max-width: 94px;
		aspect-ratio: 200 / 103;
		position: absolute;
		top: -60px;
		left: 0;
	}

	#panel .obi img{
		width: 100%;
	}

	#panel h2{
		text-align: left;
		font-size: 16px;
	}

	.panel_img{
		margin-top: 40px;
		text-align: center;
	}

	.panel_img img{
		width: 100%;
		max-width: 894px;
	}

	#panel .text{
		text-align: left;
		font-size: 14px;
		margin-top: 40px;
		line-height: 1.8em;
	}

	#panel .text span{
		color: #cc0000;
		font-weight: 600;
	}

	#panel .link_wrap{
		margin: 80px 0;
	}

	/* 筐体ラッピング
	-------------------------------------------------- */
	#wrapping{
		background: #ebefef;
		padding: 80px 20px;
	}

	#wrapping .secInner{
		width: 100%;
		box-sizing: border-box;
		max-width: 1200px;
		background: #ffffff;
		box-shadow: 0 3px 6px 0 rgba(0,0,0,0.16);
		border-radius: 30px;
		padding: 40px 20px;
		margin: 0 auto;
		position: relative;
		z-index: 1;
	}

	#wrapping h2{
		text-align: left;
		font-size: 16px;
	}

	.machine{
		margin-top: 20px;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}

	.machine li{
		width: 30%;
		margin: 20px 0 0;
	}

	.machine li:not(:nth-child(3)){
		margin-right: 3%;
	}

	.machine li a{
		display: block;
		box-sizing: border-box;
		color: #4096d3;
		font-size: 14px;
		text-align: center;
		text-decoration: none;
	}

	.machine li a img{
		width: 100%;
	}

	.machine li a span{
		display: block;
		margin-top: 20px;
	}

	.machine li a:hover img{
		opacity: 0.8;
	}

	.machine li a:hover span{
		text-decoration: underline;
	}

	#wrapping .text{
		text-align: left;
		font-size: 14px;
		margin-top: 40px;
		line-height: 1.8em;
	}

	#wrapping .link_wrap{
		margin: 40px 0;
	}
}

@keyframes modalopen{
	from{opacity: 0;}
	to{opacity: 1;}
}

@keyframes modalLine{
	from{height: 0;}
	to{height: 100vh;}
}



/*一部画面幅で左にずれている箇所の対策*/
@media screen and (min-width: 768px){
	body{width: calc(100vw - 0px);}
	#ichika .detail_wrap::after{right: -50px;}
	#nino .detail_wrap::after{right: -50px;}
	#miku .detail_wrap::after{right: -50px;}
	#yotsuba .detail_wrap::after{right: -50px;}
	#itsuki .detail_wrap::after{right: 55px;}
}
@media screen and (min-width: 1500px){
    body{width: calc(100vw - 15px);}
    #ichika .detail_wrap::after{right: -120px;}
	#nino .detail_wrap::after{right: -150px;}
	#miku .detail_wrap::after{right: -150px;}
	#yotsuba .detail_wrap::after{right: -145px;}
	#itsuki .detail_wrap::after{right: -145px;}
}

/*セーフバー周りの指定*/
.charaBox{height: 100vh !important;}
.veil{display: none;}

@supports (-webkit-touch-callout: none){
	.veil{
		position: sticky;
		top: 0;
		z-index: 10000;
		display: block;
		pointer-events: none;
	}
	.veil-overlay{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0;
		backdrop-filter: blur(1px);
	}
	.charaBox{
		padding-bottom: 40px !important;
	}
}
@media screen and (max-width: 767px){
	@supports (-webkit-appearance: none) and (not (-moz-appearance: none)){
		.charaBox .boxLeft{padding-bottom: 5rem !important;}
	}
}