@charset "UTF-8";

/*-------------------------
*MAIN
-------------------------*/

html {
	font-family: 'Noto Sans', sans-serif;
	font-size: 62.5%;
	font-feature-settings: "palt" 1;
}

body {
	display: flex;
	justify-content: center;
}

/*-------------------------
*LOADING
-------------------------*/

#loading-screen {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	transition: opacity 0.5s ease-out;
}

#loading-spinner {
	border: 8px solid #f3f3f3;
	border-top: 8px solid #3498db;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/*-------------------------
*MODAL SETTING
-------------------------*/
#age-verification-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background:url(../img/bg_ptn02.png),#FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9000;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

#age-verification-box {
	text-align: center;
}

#age-verification-box h1 {
	margin: 0 auto 2.0rem;
}
#age-verification-box h1 img {
	width: 50%;
}
#age-verification-box p {
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: 1px;
	margin-bottom: 2.0rem;
}
#age-verification-box button {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-size: 2rem;
	font-weight: 600;
	font-style: normal;
	color: #FFF;
	text-align: center;
	width: 300px;
	padding: 1.0rem;
	margin: 0 1.0rem;
	background-color: #ff8312;
	border: solid 1px #ff8312;
	cursor: pointer;
	transition: all 0.4s;
	color: white;
	
}

#age-verification-box button:hover {
	color: #ff8312;
	background-color: #FFF;
}

#main-content {
	width: 100%;
	opacity: 0;
	transition: opacity 0.5s ease-in;
}
.ptnA {background:url(../img/bg_ptn02.png),#FFF;}
.ptnB {background:url(../img/chr_tx.png) repeat-y center top,#FFF;}

/*-------------------------
*HEADER SETTING
-------------------------*/
header {}

#header {
	position: fixed;
	top: -100px;
	left: 0;
	width: 100%;
	padding: 1.0rem;
	background: rgba(255,255,255,0.9);
	opacity: 0;
	pointer-events: none;
	transition: all 0.5s ease;
	z-index: 1000;
}
#header.show {
	top: 0;
	opacity: 1;
	pointer-events: auto;
}

#global {
	max-width: 1920px;
	min-width: 1200px;
	margin: 0 auto;
}
#global ul {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 1.6rem;
	color: #333;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
#global ul li {
	margin: 0 1.0rem;
}
#global ul li a {
	color: #000;
	transition: all 0.6s;
}
#global ul li a:hover {
	color: #ff8312;
}
 
/* #top {
	width: 100%;
	max-width: 1920px;
	min-width: 1200px;
	aspect-ratio: 1920 / 1538;
	margin: 0 auto;
	position: relative;
}

#top .visual {
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 77.2%;
	aspect-ratio: 1482 / 1538;
	background: url(../img/main_chara.png?v=1.0)no-repeat center top;
	background-size: contain;
	transform: translateX(-46%);
	z-index: 1;
}
#top .visual-bg {
	position: absolute;
	width: 100%;
	inset: 0;
	background: url(../img/main_bg.png?v=1.2)no-repeat center top;
	background-size: contain;
	z-index: 0;
}
#top h1 {
	position: absolute;
	left: 50%;
	top: 60%;
	width: 36%;
	aspect-ratio: 698 / 428;
	background: url(../img/title_logo.png?v=1.0)no-repeat center center;
	background-size: contain;
	transform: translateX(-50%);
	z-index: 2;
	font-size: 0;
}
#top .sale {
	position: absolute;
	left: 50%;
	top: 90%;
	width: 37%;
	aspect-ratio: 715 / 53;
	background: url(../img/top_date01.png?v=1.2)no-repeat center center;
	background-size: contain;
	transform: translateX(-50%);
	z-index: 2;
	font-size: 0;
}
*/

#top {
	/* width: 100%;
	max-width: 1920px;
	min-width: 1200px;
	aspect-ratio: 1920 / 1538; */
	height: 1538px;
	margin: 0 auto;
	position: relative;
}

#top .visual {
	position: absolute;
	width: 100%;
	inset: 0;
	background: url(../img/main_allchara.png?1.0)no-repeat center top;
	z-index: 1;
}
#top .visual-bg {
	position: absolute;
	width: 100%;
	inset: 0;
	background: url(../img/main_bg.png?v=1.2)no-repeat center top;
	z-index: 0;
}

#top h1 {
	position: absolute;
	left: 50%;
	top: 60%;
	width: 698px;
	aspect-ratio: 698 / 428;
	background: url(../img/title_logo.png?v=1.0)no-repeat center center;
	background-size: contain;
	transform: translateX(-50%);
	z-index: 2;
	font-size: 0;
}
#top .sale {
	position: absolute;
	left: 50%;
	top: 90%;
	width: 715px;
	aspect-ratio: 715 / 53;
	background: url(../img/top_date01.png?v=1.1)no-repeat center center;
	background-size: contain;
	transform: translateX(-50%);
	z-index: 2;
	font-size: 0;
}

/*-------------------------
*SECTION
-------------------------*/
section {
	margin: 0 auto;
	padding: 5.0rem 0;
	overflow-x: hidden;
}
section h2 {
	width: 1200px;
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 3.0rem;
	text-align: center;
	margin: 0 auto 8.0rem;
	letter-spacing: 2px;
}
section h2:after {
	display: block;
	content: "Dragon Girls X Concept Cafe : Episode2";
	font-size: 1.0rem;
	padding-top: 0.5rem;
	opacity: 0.7;
}
#flagship {
	background: url(../img/bg_circle.png?v1.3) repeat-y center top;
}
#sectionInner {}

.returnPage a {
	display: inline-block;
	padding: 1.0rem 3.0rem;
	background: #FFF;
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 900;
	font-style: normal;
	font-size: 1.4rem;
	border-radius: 2.0rem;
	margin-left: 20px;
	transition: all 0.6s;
}

#mar .returnPage a:hover {
	margin-left: 0;
	color: #ff5884;
}
#fra .returnPage a:hover {
	margin-left: 0;
	color: #3790ff;
}
#alm .returnPage a:hover {
	margin-left: 0;
	color: #d6273e;
}
#pas .returnPage a:hover {
	margin-left: 0;
	color: #ffa63d;
}
#mas .returnPage a:hover {
	margin-left: 0;
	color: #d48632;
}
#spContents .returnPage a:hover {
	margin-left: 0;
	color: #0a850d;
}

#mar .returnPage a {
	box-shadow: 2px 2px 0 #b93c5e;
}
#fra .returnPage a {
	box-shadow: 2px 2px 0 #1d579e;
}
#alm .returnPage a {
	box-shadow: 2px 2px 0 #610d18;
}
#pas .returnPage a {
	box-shadow: 2px 2px 0 #815119;
}
#mas .returnPage a {
	box-shadow: 2px 2px 0 #653e14;
}
#spContents .returnPage a {
	box-shadow: 2px 2px 0 #0a850d;
}
/*-------------------------
*TOPICS
-------------------------*/

.slide-items {
	width: 1100px;
	margin: 0 auto 2.0rem;
}
.slbk {
	background: #FFF;
}
.slide-items li {
	margin: 0 0.5rem 0;
}
.slide-items li a {
	transition: all 0.5s;
}
.slide-items li a:hover {
	opacity: 0.5;
}
.slide-items img {
	width: 100%;
	height: auto;
}
.slick-dots li button:before {
	font-size: 3.5rem;
	top: 0.5rem;
	color: #333;
}
.slick-dots li.slick-active button:before {
	color: #555;
}

/*-------------------------
*CONCEPT
-------------------------*/
#concept {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	position: relative;
	background: url(../img/bg_concept.png) repeat-y center top,#41c3ff;
	/* background: url(../img/p_concept_chr.png) no-repeat 120% bottom,url(../img/bg_concept.png) repeat-y center top,#41c3ff; */
}
#concept h2 {
	color: #FFF;
}
#conceptInner {
	position: relative;
	width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	z-index: 1;
}
#concept h3 {
	width: 1168px;
	height: 307px;
	background: url(../img/m_concept.png) no-repeat;
	font-size: 0;
	margin: -50px auto 20px;
}

.con1 {
	display: inline-block;
	font-size: 2.4rem;
	font-style: italic;
	font-weight: 600;
	color: #FFF;
	background: #000;
	padding: 0.7rem 1.0rem;
	margin: 0 0 1.0rem 0;
}
.con2 {
	display: inline-block;
	font-size: 2.0rem;
	/* font-style: italic; */
	font-weight: 700;
	color: #000;
	background: #FFF;
	padding: 0.7rem 1.0rem;
	margin: 0 0 1.0rem 0;
}
.con3 {
	display: inline-block;
	font-size: 2.4rem;
	font-style: italic;
	font-weight: 900;
	color: #000;
	background: #FFF;
	padding: 0.7rem 1.0rem;
	margin: 0 0 3.0rem 0;
}

#kiseki {
	width: 684px;
	height: 79px;
	background: url(../img/t_kiseki.png) no-repeat;
	font-size: 0;
	margin-bottom: 10px;
}
#doraconcafeBana {
	width: 900px;
	background: #FFF;
}
#doraconcafeBana a {
	transition: all 0.6s;
}
#doraconcafeBana a:hover {
	opacity: 0.6;
}
#conImage {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-20%);
	z-index: 0;
}
.pick1 {
	font-weight: 900;
	color: #fffc00;
}
.pick2 {
	font-weight: 900;
	color: #ff00a8;
}
.margin1 {
	margin-bottom: 2.0rem;
}
.dash {
	letter-spacing: -4px;
}
/*-------------------------
*POWER UP
-------------------------*/
#power {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	background: url(../img/bg_powerup.png?v1.1) repeat-y center top,rgba(120,90,100,0.9);
}
#power h2 {
	color: #FFF;
}
#powerInner {
	width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}
#powerTitle {
	width: 1100px;
	height: 200px;
	background: url(../img/t_powerup02.png) no-repeat;
	margin: 0 auto 3.0rem;
}
#powerTitle h3 {
	width: 1100px;
	height: 200px;
	background: url(../img/t_powerup01.png) no-repeat;
	font-size: 0;
}
#sdImage {
	width: 871px;
	height: 175px;
	margin: 0 auto 3.0rem;
	background: url(../img/pu_sd.png) no-repeat;
}
.puBox1,.puBox2,.puBox3 {
	width: 1100px;
	margin: 0 auto 50px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.puBox1 h4,.puBox2 h4,.puBox3 h4 {
	width: 100%;
	height: 96px;
	font-size: 0;
	margin: 0 0 20px 0;
}
.puBox1 h4 {background: url(../img/m_point01.png) no-repeat;}
.puBox2 h4 {background: url(../img/m_point02.png) no-repeat;}
.puBox3 h4 {background: url(../img/m_point03.png) no-repeat;}

.puBox1 p,.puBox2 p,.puBox3 p {
	font-size: 1.8rem;
	line-height: 1.8;
	font-weight: 600;
	color: #FFF;
	width: 630px;
	margin: 0 20px 0 0;
	padding: 0.5rem;
}
.pick3 {
	font-weight: 900;
	color: #ff83b8;
}
.pick4 {
	font-weight: 900;
	color: #36eeff;
}
.slideshow {
  position: relative;
  width: 450px;
  height: 245px;
  overflow: hidden;
}

.slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  animation: fade 9s infinite;
}

.slide:nth-child(1) {
  animation-delay: 0s;
}
.slide:nth-child(2) {
  animation-delay: 3s;
}
.slide:nth-child(3) {
  animation-delay: 6s;
}

@keyframes fade {
  0%   { opacity: 0; }
  8%   { opacity: 1; }
  33%  { opacity: 1; }
  41%  { opacity: 0; }
  100% { opacity: 0; }
}

/*-------------------------
*STORY
-------------------------*/
#story {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	text-align: center;
	background: url(../img/bg_story.jpg) no-repeat center center;
	background-size: cover;
	position: relative;
}
#storyPt {
	width: 100%;
	background: url(../img/pt_story.png) repeat-y center top;
}
#story h2 {
	color: #FFF;
}
#storyInner {
	width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	z-index: 1;
}
.hosoku {
	width: 794px;
	height: 84px;
	background: url(../img/m_story01.png) no-repeat;
	font-size: 0;
	margin: 0 auto 10px;
}
#story h3 {
	width: 830px;
	height: 79px;
	background: url(../img/m_story02.png) no-repeat;
	font-size: 0;
	margin: 0 auto 80px;
}
.st1 {
	display: inline-block;
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
	background: #FFF;
	padding: 0.7rem 1.0rem;
	margin: 0 0 0.5rem 0;
}
.st2 {
	display: inline-block;
	font-size: 2.6rem;
	font-weight: 900;
	color: #4581ff;
	background: #FFF;
	padding: 0.7rem 1.0rem;
	margin: 0 0 0.5rem 0;
}
.stPick1 {
	font-size: 1.4em;
	font-weight: 900;
	color: #ff5884;
}
.stPick2 {
	font-size: 1.4em;
	font-weight: 900;
	color: #d6273e;
}
.stPick3 {
	font-size: 1.4em;
	font-weight: 900;
	color: #42c70d;
}

del.strike {
	background-image: linear-gradient(#ff5884, #ff5884);
	background-position: 0 55%;
	background-size: 100% 4px;
	background-repeat: repeat-x;
	text-decoration: none;
	padding: 0 2px;
}
#strImage {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(20%);
	z-index: 0;
}

/*-------------------------
*CHARACTER
-------------------------*/
#chara {
	position: relative;
	height: 1400px;
	background: url(../img/chr_pt.png) repeat-y center top,#f4b518;
}
#chara h2 {
}
#charaInner {
	width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}
#chrName1,#chrName2,#chrName3,#chrName4,
#chrLink1,#chrLink2,#chrLink3,#chrLink4 {
	position: absolute;
}
#chrName1 a img,#chrName2 a img,#chrName3 a img,#chrName4 a img {
	transition: all 0.5s;
}
#chrName1 a:hover img,#chrName2 a:hover img,#chrName3 a:hover img,#chrName4 a:hover img {
	opacity: 0;
}
#chrLink1 {
	bottom: 0;
	left: 50%;
	transform: translateX(-47%);
	z-index: 4;
	background: url(../img/b_chr01_on.png) no-repeat;
}
#chrLink2 {
	bottom: 0;
	left: 50%;
	transform: translateX(3%);
	z-index: 2;
	background: url(../img/b_chr02_on.png) no-repeat;
}
#chrLink3 {
	bottom: 0;
	left: 50%;
	transform: translateX(-89%);
	z-index: 3;
	background: url(../img/b_chr03_on.png) no-repeat;
}
#chrLink4 {
	bottom: 503px;
	left: 50%;
	transform: translateX(-40%);
	z-index: 1;
	background: url(../img/b_chr04_on.png) no-repeat;
}
#chrName1 {
	top: 845px;
	left: 50%;
	transform: translateX(-160%);
	z-index: 10;
	background: url(../img/chr_name01_on.png?v1.1) no-repeat;
}
#chrName2 {
	top: 650px;
	left: 50%;
	transform: translateX(120%);
	z-index: 10;
	background: url(../img/chr_name02_on.png?v1.2) no-repeat;
}
#chrName3 {
	top: 130px;
	left: 50%;
	transform: translateX(30%);
	z-index: 10;
	background: url(../img/chr_name04_on.png?v1.2) no-repeat;
}
#chrName4 {
	top: 350px;
	left: 50%;
	transform: translateX(-220%);
	z-index: 10;
	background: url(../img/chr_name03_on.png?v1.2) no-repeat;
}

/*-------------------------
*CHARA_ONLY
-------------------------*/
#mar {background: url(../img/chr_head01.png) no-repeat center top;}
#fra {background: url(../img/chr_head02.png) no-repeat center top;}
#alm {background: url(../img/chr_head03.png) no-repeat center top;}
#pas {background: url(../img/chr_head04.png) no-repeat center top;}
#mas {background: url(../img/chr_head05.png) no-repeat center top;}


#chrCommonInner {
	width: 1200px;
	margin: 0 auto;
}
#chrCommonInner h2 {
	color: #FFF;
}

#chrNavi ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 60px;
}
#chrNavi ul li {
	width: 130px;
	height: 130px;
	border-radius: 65px;
	margin: 0 10px;
}
#chrNavi ul li a {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 65px;
	font-size: 0;
	transition: all 0.6s;
}
li.chrPage1 a {background: url(../img/nav_chara01.png) no-repeat center center,#c7c7c7;}
li.chrPage2 a {background: url(../img/nav_chara02.png) no-repeat center center,#c7c7c7;}
li.chrPage3 a {background: url(../img/nav_chara03.png) no-repeat center center,#c7c7c7;}
li.chrPage4 a {background: url(../img/nav_chara04.png) no-repeat center center,#c7c7c7;}
li.chrPage5 a {background: url(../img/nav_chara05.png) no-repeat center center,#c7c7c7;}

li.chrPage1 a:hover {
	margin-top: -20px;
	background: url(../img/nav_chara01.png) no-repeat center center,#ff5884;
}
li.chrPage2 a:hover {
	margin-top: -20px;
	background: url(../img/nav_chara02.png) no-repeat center center,#3790ff;
}
li.chrPage3 a:hover {
	margin-top: -20px;
	background: url(../img/nav_chara03.png) no-repeat center center,#d6273e;
}
li.chrPage4 a:hover {
	margin-top: -20px;
	background: url(../img/nav_chara04.png) no-repeat center center,#ffa63d;
}
li.chrPage5 a:hover {
	margin-top: -20px;
	background: url(../img/nav_chara05.png) no-repeat center center,#d48632;
}

#chrBox {
	position: relative;
	width: 1160px;
	min-height: 1700px;
	margin: 0 auto;
}
#chrBox2 {
	position: relative;
	width: 1160px;
	min-height: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
#status {
	position: relative;
	z-index: 5;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}
#status h4 {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 2.0rem;
	margin-bottom: 10px;
}
#status h4:after {
	content: "";
	display: inline-block;
	width: 213px;
	height: 12px;
	margin-left: 7px;
	background: url('../img/chr_line.png') no-repeat;
	background-size: contain;
	vertical-align: middle;
}

/*立ち絵*/
.charaPose {
	position: absolute;
	top: 135px;
	left: 50%;
	transform: translateX(-20%);
	z-index: 2;
	width: 1200px;
	height: 1500px;
	overflow: hidden;
}
.charaPose2 {
	position: absolute;
	top: 135px;
	left: 50%;
	transform: translateX(0%);
	z-index: 2;
	width: 1200px;
	height: 1500px;
	overflow: hidden;
}
.chrBase {
	position: absolute;
	top: 320px;
	left: 50%;
	transform: translateX(-10%);
	z-index: 1;
}
.chrBase2 {
	position: absolute;
	top: 80px;
	left: 50%;
	transform: translateX(0%);
	z-index: 1;
}
.chrBase2 img {
	width: 90%;
}
/*コスチュームサムネール*/
.thumbnail {
	width: 320px;
	margin-bottom: 20px;
	background: #FFF;
}
.thumbnail .slick-track {
	transform: unset !important;
}
.thumbnail-img {
	width: 100px;
	opacity: 0.3;
	transition: opacity 0.3s linear;
	padding: 0;
	cursor: pointer;
}
.thumbnail .slick-current,.thumbnail-img:hover {
	opacity: 1;
}
/*各項目*/
.chrFullname {
	width: 820px;
	height: 130px;
	font-size: 0;
}
#mar .chrFullname {background: url(../img/chr_fullname01.png) no-repeat;}
#fra .chrFullname {background: url(../img/chr_fullname02.png) no-repeat;}
#alm .chrFullname {background: url(../img/chr_fullname03.png) no-repeat;}
#pas .chrFullname {background: url(../img/chr_fullname04.png) no-repeat;}
#mas .chrFullname {background: url(../img/chr_fullname05.png) no-repeat;}

.chrVoice {
	width: 200px;
	height: 35px;
	font-size: 0;
	margin-bottom: 20px;
}
#mar .chrVoice {background: url(../img/chr_cv01.png) no-repeat;}
#fra .chrVoice {background: url(../img/chr_cv02.png) no-repeat;}
#alm .chrVoice {background: url(../img/chr_cv03.png) no-repeat;}
#pas .chrVoice {background: url(../img/chr_cv04.png) no-repeat;}


.sampleVoice,.sampleFace {
	margin-bottom: 30px;
}
.sampleVoice ul,.sampleFace ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.sampleVoice ul li {
	width: 50px;
	height: 50px;
	margin-right: 5px;
}
.sampleVoice ul li a {
	display: block;
	width: 100%; height: 100%;
	border-radius: 25px;
	background-size: cover;
	transition: all 0.4s;
}





/*MAR*/
#mar .sampleVoice ul li a.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #ff5884;
}
#mar .sampleVoice ul li a.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #ff5884;
}
#mar .sampleVoice ul li a:hover.chBtn1,.sampleVoice ul li a.voiceon.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #ffa7be;
}
#mar .sampleVoice ul li a:hover.chBtn2,.sampleVoice ul li a.voiceon.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #ffa7be;
}

/*FRA*/
#fra .sampleVoice ul li a.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #3790ff;
}
#fra .sampleVoice ul li a.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #3790ff;
}
#fra .sampleVoice ul li a:hover.chBtn1,.sampleVoice ul li a.voiceon.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #95c5ff;
}
#fra .sampleVoice ul li a:hover.chBtn2,.sampleVoice ul li a.voiceon.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #95c5ff;
}

/*ALM*/
#alm .sampleVoice ul li a.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #d6273e;
}
#alm .sampleVoice ul li a.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #d6273e;
}
#alm .sampleVoice ul li a:hover.chBtn1,.sampleVoice ul li a.voiceon.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #ff7a8b;
}
#alm .sampleVoice ul li a:hover.chBtn2,.sampleVoice ul li a.voiceon.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #ff7a8b;
}

/*PAS*/
#pas .sampleVoice ul li a.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #ffa63d;
}
#pas .sampleVoice ul li a.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #ffa63d;
}
#pas .sampleVoice ul li a:hover.chBtn1,.sampleVoice ul li a.voiceon.chBtn1 {
	background: url(../img/mic.svg?v1.1)no-repeat center center, #ffcc92;
}
#pas .sampleVoice ul li a:hover.chBtn2,.sampleVoice ul li a.voiceon.chBtn2 {
	background: url(../img/heart.svg?v1.2)no-repeat center center, #ffcc92;
}






.sampleFace ul li {
	margin-right: 5px;
}
.catch {
	width: 560px;
	height: 110px;
	font-size: 0;
	margin-bottom: 20px;
}
#mar .catch {background: url(../img/chr_catch01.png) no-repeat;}
#fra .catch {background: url(../img/chr_catch02.png) no-repeat;}
#alm .catch {background: url(../img/chr_catch03.png) no-repeat;}
#pas .catch {background: url(../img/chr_catch04.png) no-repeat;}
#mas .catch {background: url(../img/chr_catch05.png) no-repeat;}

.history p {
	font-size: 1.2rem;
	line-height: 1.5;
	text-shadow: 0 0 3px #FFF,0 0 3px #FFF,0 0 3px #FFF,0 0 3px #FFF,
	0 0 3px #FFF,0 0 3px #FFF,0 0 3px #FFF;
}
#mar .history p span {color: #ff5884;}
#fra .history p span {color: #3790ff;}
#alm .history p span {color: #d6273e;}
#pas .history p span {color: #ffa63d;}
#mas .history p span {color: #d48632;}

.memo {

}
.chrMemo1 {
	display: inline-block;
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 600;
	color: #FFF;
	padding: 0.3rem 1.0rem;
	margin: 0 0 0.2rem 0;
}

#mar .memo .chrMemo1 {background: #611c2e;}
#fra .memo .chrMemo1 {background: #1f3f66;}
#alm .memo .chrMemo1 {background: #4f1119;}
#pas .memo .chrMemo1 {background: #523615;}
#mas .memo .chrMemo1 {background: #38240e;}



/*-------------------------
*GALLERY&MOVIE
-------------------------*/
#gallery {}
#cgList,#mvInner,#spList {
	width: 1200px;
	margin: 0 auto;
}
#cgList ul,#mvList ul {
	width: 960px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding-bottom: 10rem;
}
#cgList li div,#mvList li div {
	width: 300px;
	margin: 0 10px 5px;
	background: #FFF;
}
#cgList img,#mvList img,#op img {
	width: 100%;
	height: auto;
}
#cgList li a,#mvList li a,#op a,#spList li a {
	transition: all 0.5s;
}
#cgList li a:hover,#mvList li a:hover,#spList li a:hover,#op a:hover {
	opacity: 0.5;
}

#op {
	width: 940px;
	margin: 0 auto 20px;
}
#movie p {
	font-size: 1.6rem;
	line-height: 1.5;
	padding: 0 0 20px 10px;
	color: #333;
}


/*-------------------------
*SPECIAL
-------------------------*/
#special {}
#spList ul {
	width: 960px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding-bottom: 10rem;
}
#spList li {
	width: 300px;
	margin: 0 10px 5px;
}
#spList li div {
	width: 100%;
	height: auto;
	background: #FFF;
}
#spList li div img {
	width: 100%;
	height: auto;
}
#special p {
	font-size: 1.6rem;
	line-height: 1.5;
	padding: 0 0 40px 10px;
	color: #333;
}
#special p span {
	display: block;
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-size: 1.4rem;
	color: #10969e;
}

/*-------------------------
*SPECIAL+CONTENTS
-------------------------*/
#spContents {background: url(../img/sp_head.png) no-repeat center top;}
#spContents h2 {color: #FFF;}
#spInner {
	width: 1200px;
	margin: 0 auto;
}
#spInner h3 {
	width: 90%;
	margin: 150px auto 80px;
	padding: 0.5rem;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-size: 4.5rem;
	font-weight: 300;
	text-align: center;
	color: #000;
	background: url(../img/sp_title.png) no-repeat center bottom;
	text-shadow: 2px 2px 0 #ffffff;
}
#spInner h3 img {
	width: auto;
	height: 100%;
}
.setTitle,.setTitle_j {
	margin: 0 auto 5.0rem;
	text-align: center;
}
.setTitle_a {
	margin: 0 auto;
	text-align: center;
}
.setTitle h4 {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 4.5rem;
	text-align: center;
	margin: 0 auto 0.5rem;
	text-shadow: 2px 2px 0 #21d725;
}
.setTitle_j h4,.setTitle_a h4 {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 300;
	font-style: normal;
	font-size: 3.5rem;
	text-align: center;
	margin: 0 auto 0.5rem;
	text-shadow: 2px 2px 0 #21d725;
}
.setTitle p {
	display: inline-block;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	background: #21d725;
	padding: 0.1rem 10.0rem;
}
.setTitle_j p {
	display: inline-block;
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	background: #21d725;
	padding: 0.1rem 20.0rem;
}
.setTitle_a p {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #FFF;
	background: #21d725;
	padding: 0.1rem 20.0rem;
}



.subSection {
	text-align: center;
	margin: 0 auto 30px;
}
.subSection p {
	display: inline-block;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-size: 1.4rem;
	text-align: center;
	color: #FFF;
	background: #000;
	padding: 0.5rem 5.0rem;
}
.orderBox {
	width: 960px;
	margin: 0 auto 50px;
}
.orderBox ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
.orderBox ul li {
	width: 450px;
	margin: 0 10px;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 900;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
}
.orderBox ul li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #000;
	padding: 1rem 3rem;
	transition: all 0.6s;
}

.orderBox ul li.linkBtn1 a {
	background-color: #ff8312;
	border: solid 1px #ff8312;
}
.orderBox ul li.linkBtn2 a {
	background-color: #ff8312;
	border: solid 1px #ff8312;
}
.orderBox ul li.linkBtn1 a:hover {
	color: #ff8312;
	background-color: #FFF;
	border: solid 1px #ff8312;
}
.orderBox ul li.linkBtn2 a:hover {
	color: #ff8312;
	background-color: #FFF;
	border: solid 1px #ff8312;
}

/*予約*/
.yoyaku {
	width: 900px;
	margin: 20px auto 30px;
}
.yoyaku img {
	width: 100%;
	height: auto;
}
.yoyakuInner {
	width: 900px;
	margin: 0 auto;
}
.yykText {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 2rem;
	line-height: 1.8;
	text-align: center;
	color: #000;
	margin: 0 0 30px
}

.yykPick1 {
	font-weight: 900;
}
.yykPick2 {
	font-size: 0.7em;
	color: #f14c96
}
/*特典*/

.goods {
	width: auto;
	margin: 0 auto 50px;
	text-align: center;
}
.goods ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
.goods ul li {
	width: 400px;
	margin: 0 10px;
}

.goods ul li span {
	display: block;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #000;
	margin: 10px 0 0
}
.goods img {
	width: 100%;
	height: auto;
}
.goods p {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	padding-top: 20px;
}
.goods p span {color: #f14c96;}

.goods2 {
	width: auto;
	margin: 0 auto 50px;
	text-align: center;
}
.goods2 ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
.goods2 ul li {
	width: 600px;
	margin: 0 10px;
}

.goods2 ul li span {
	display: block;
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	color: #000;
	margin: 10px 0 0
}
.goods2 img {
	width: 100%;
	height: auto;
}
.goods2 p {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	text-align: center;
	padding-top: 20px;
}
.goods2 p span {color: #f14c96;}

.cdBox {
	width: 960px;
	margin: 0 auto 40px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.cdImage {
	width: 400px;
}
.cdImage img {
	width: 100%;
	height: auto;
}
.cdAbout {
	width: 520px;
	margin: 0 0 0 40px;
}
.cdBox p {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 4.0rem;
}
/*50%OFF*/
.saleBox {
	width: 1000px;
	margin: 0 auto 200px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.spShadow {
	box-shadow: 5px 5px 0 #CCC;
}
.salePack {
	width: 360px;
}
.salePack img {
	width: 100%;
	height: auto;
}
.saleAbout {
	width: 600px;
	margin: 0 0 0 40px;
}
.saleAbout p {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 4.0rem;
}
.salePick1 {
	font-size: 2.4rem;
	font-weight: 900;
	color: #e71a1a;
}
.salePick2 {
	font-size: 1.8rem;
	font-weight: 600;
	color: #08a40a;
}

.lineText1 {
	font-family: "M PLUS 2", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-size: 1.2rem;
	font-weight: 800;
	line-height: 1.5;
	margin-bottom: 1.0rem;
	border-bottom: solid 1px #000;
}

.shopBana ul {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.shopBana ul li {
	width: 250px;
	margin: 0 10px 0 0;
	background: #FFF;
}
.shopBana ul li img {
	width: 100%;
	height: auto;
}
.shopBana ul li a {
	transition: all 0.5s;
}
.shopBana ul li a:hover {
	opacity: 0.5;
}



/*SNS*/
.iconList,.headerList {
	margin-bottom: 100px;
}

.iconList ul,.headerList ul {
	width: 960px;
	margin: 0 auto 50px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.iconList ul li {
	width: 230px;
	margin: 0 5px 10px;
	background: #FFF;
	box-shadow: 4px 4px 0 #21d725;
}
.headerList ul li {
	width: 950px;
	margin: 0 5px 10px;
	background: #FFF;
	box-shadow: 4px 4px 0 #21d725;
}

.iconList ul li img,.headerList ul li img {
	width: 100%;
}
.iconList ul li a,.headerList ul li a {
	transition: all 0.6s;
}
.iconList ul li a:hover,.headerList ul li a:hover {
	opacity: 0.6;
}

/*-------------------------
*PRODUCT
-------------------------*/
#product {}

#prdInner {
	width:1200px;
	margin: 0 auto 10rem;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

#prdInner h3 {
	font-family: 'Jost', sans-serif;
	font-optical-sizing: auto;
	font-weight: 900;
	font-style: normal;
	font-size: 1.4rem;
	letter-spacing: 1px;
	border-bottom: solid 1px #000;
	padding: 0 0 0.5rem 0;
	margin: 0 0 1rem 0;
}

#prdBox1,#prdBox2,#prdBox3 {
	margin: 0 0 30px;
	padding: 0 10px;
}
#prdBox1 {
	width: 490px;
}
#prdBox2 {
	width: calc(100% - 490px);
}
#prdInner dl {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 20px;
}
#prdInner dl dt {
	width: 170px;
	padding: 0.7rem 0.5rem;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.5;
	color: #929084;

}
#prdInner dl dd {
	width: calc(100% - 170px);
	padding: 0.7rem 0.5rem;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
}

#prdBox3 p {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
	color: #f14c96;
}

/*-------------------------
*FOOTER
-------------------------*/

footer {
	padding: 4.0rem 0;
	text-align: center;
}
#footlogo {
	width: 200px;
	aspect-ratio: 472 / 86;
	margin: 0 auto 1.0rem;
	
}
#footlogo a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/brandlogo.png) no-repeat center center;
	background-size: contain;
	transition: all 0.4s;
	font-size: 0;
}
#footlogo a:hover {opacity: 0.3;}

footer p {
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 2px;
	text-align: center;
	padding: 1.0rem;
	color: #333;
}


/*-------------------------
*PAGETOP
-------------------------*/

#pageTop {
	position:fixed;
	bottom:20px;
	right: 20px;
	z-index: 3000;
	width: 73px;
	height: 77px;
	
}
#pageTop a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/b_pagetop.png) no-repeat;
	transition: all 0.5s;
}

#pageTop a:hover{opacity: 0.5;}

/*-------------------------
*SHARE
-------------------------*/

#shareArea {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

#shareArea div a {
	width: 40px; height: 40px;
	text-align: center;
	display: block;
	margin: 0 0.5rem;
	text-decoration: none;
	transition: all 0.5s;
}
#shareArea div a:hover {
	opacity: 0.3;
}

.shareTw {
	background: url(../img/icon_x.png?v1.1) no-repeat center center;
	background-size: cover;
}
.shareTh {
	background: url(../img/icon_thread.png?v1.1) no-repeat center center;
	background-size: cover;
}
.shareBs {
	background: url(../img/icon_bluesky.png?v1.1) no-repeat center center;
	background-size: cover;
}





/* QUICK BUY (added) */
.quickBuy {
	padding: 4.0rem 0 2.5rem;
}
.quickBuyInner {
	max-width: 980px;
	margin: 0 auto;
	padding: 0 2.0rem;
}
.quickBuyLead {
	font-size: 1.9rem;
	line-height: 1.6;
	margin: 1.2rem 0 2.0rem;
}
.quickBuyBtns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.2rem;
}
.quickBuyBtn {
	display: block;
	text-align: center;
	text-decoration: none;
	border: 2px solid #ff8312;
	border-radius: 1.2rem;
	padding: 1.2rem 1.0rem;
	font-size: 1.8rem;
	font-weight: 700;
	color: #ff8312;
	background: rgba(255,255,255,0.06);
	transition: 0.2s ease;
}
.quickBuyBtn:hover {
	background: #fff;
	color: #ff8312;
}
.quickBuyBtn.primary {
	background: #ff8312;
	color: #fff;
}
.quickBuyBtn.primary:hover {
	background: #fff;
	color: #ff8312;
}
.quickBuyNote {
	font-size: 1.4rem;
	opacity: 0.9;
	margin-top: 1.6rem;
}

.stickyBuyBar {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9998;
	padding: 0.9rem;
	gap: 0.8rem;
	background: rgba(0,0,0,0.78);
	backdrop-filter: blur(8px);
}
.stickyBuyBtn {
	flex: 1;
	display: block;
	text-align: center;
	text-decoration: none;
	border-radius: 1.2rem;
	padding: 1.0rem 0.6rem;
	font-size: 1.6rem;
	font-weight: 800;
	background: #ff8312;
	color: #fff;
	border: 1px solid rgba(255,255,255,0.25);
}
.stickyBuyBtn:hover {
	background: #fff;
	color: #ff8312;
}

@media screen and (max-width: 900px) {
	.quickBuyBtns {
		grid-template-columns: 1fr;
	}
	.stickyBuyBar {
		display: flex;
	}
	/* bottom bar space */
	body {
		padding-bottom: 7.0rem;
	}
}
