/*	news
============================== */
div.sns-share section h2, div.sns-share section h3, div.sns-share section div.sns-rig {
    padding: 5px 0 8px;
    letter-spacing: 0em;
    color: #000;
}

@media all and (min-width: 768px) {
	#contentsArea { padding-top: 30px;}

	body.news article { margin: 0 auto 50px;
	display: inline-block;
	background: #fff;
	background: linear-gradient(135deg, transparent 78px, #fff 0) top left,
	linear-gradient(0deg, transparent 0px, #fff 0) top right,
	linear-gradient(-45deg, transparent 78px, #fff 0) bottom right,
	linear-gradient(0deg, transparent 0px, #fff 0) bottom left;
	background-size: 51% 51%;
	background-repeat: no-repeat;
	}
	body.news article .newsArea {background:rgba(255,255,255,0.5); border: solid 2px #421d3c; margin: 10px; padding: 18px 30px 0; width: 916px;}
	
	div.sns-share section {
    padding: 0px 0px;
    margin: 0 auto;
}
}
@media all and (max-width: 767px) {
	#contentsArea { padding-top: 18px; text-align: center;}
	
	body.news article { width: 100%; margin-bottom: 1em;
	display: inline-block;
	background: #fff;
	background: linear-gradient(135deg, transparent 40px, #fff 0) top left,
	linear-gradient(0deg, transparent 0px, #fff 0) top right,
	linear-gradient(-45deg, transparent 40px, #fff 0) bottom right,
	linear-gradient(0deg, transparent 0px, #fff 0) bottom left;
	background-size: 50% 50%;
	background-repeat: no-repeat;
	}
	body.news article .newsArea {background:rgba(255,255,255,0.5); border: solid 2px #421d3c; margin: 2%; padding: 2% 3% 0; text-align: left;}
}


body.news article .title {
padding-bottom: 3px; border-bottom: solid 2px #421d3c;
}


body.news .date {
	line-height: 1.2em;
	color: #000;
	font-family: "kaneda-gothic", sans-serif;
	font-weight: 800;
	font-style: normal;
	display: block; text-align: right; padding: 0 5px;
}
body.news article .title h2 {
	font-size: 1.6em;
	line-height: 1.5em;
	font-family: toppan-bunkyu-midashi-go-std, sans-serif;
	font-weight: 900;
	font-style: normal;
	background: linear-gradient(0deg, rgba(210,204,231,0.9) 0%, rgba(210,204,231,0.3) 100%);
	padding: 10px 15px;
}

body.news article h3{ 
	font-size: 1.5em; line-height: 1.8em; color: #421d3c; text-align: center; margin-bottom: 0.5em;
	font-family: toppan-bunkyu-midashi-go-std, sans-serif;
	font-weight: 900;
	font-style: normal;
}
body.news article h4{ 
	margin-bottom: 0.5em;
	line-height: 1.5em;
	text-align: center;
}
body.news article h4 span.under {
	background: linear-gradient(transparent 50%, rgba(210, 204, 231, 0.8) 50%);
    padding: 0 3px 5px;}

.comment h4 {
	font-weight: 700;
	font-size: 1.6em;
	line-height: 1.0em;
	position: relative;
	display: inline-block;
	padding: 0 0 0 40px;}
.comment h4:before {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30px;
  height: 3px;
  background-color: #136325;
	left:0;
}
.comment h4 .small { font-size: 0.8em;}

body.news article h5 { font-size: 0.9em;}


.phArea { margin:15px auto 25px auto; text-align:center; }
.ph { margin:auto; }
.ph p { position:relative; width:100%; height:0;
	border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px; }
.ph p span { position:absolute; display:block; left:0; top:0; width:100%; height:100%; background-position:center center; background-repeat:no-repeat; background-size:cover; text-indent:-9999px;}

.multiple { text-align: center; letter-spacing: -.4em;}
.multiple .phArea { display: inline-block; margin:15px 15px 25px auto;}


.product {color: #d22179; font-weight: bold; text-align: center; font-size: 1.1em; padding-top: 1em; line-height: 1.6em;}
.product .small {font-size: 0.8em;}
.productTxt { margin:1em 0;}

.borderBox {border:solid 1px rgba(66,29,60,0.7); padding:1.5em; margin:0 auto;}
.borderBox h4 {}

.endCam { position: relative;}
.endCam .endInfo {position: absolute; width: 100%; height:100%; background-color: rgba(255,255,255,0.8); top:0; left:0; display: table; }
.endCam .endInfo p {display: table-cell; vertical-align: middle; line-height: 1.5em;}
.endCam .endInfo p span.info { border: solid 1px #A12609; display: inline-block; padding:10px 15px 15px; background-color: rgba(255,255,255,0.8);}

@media all and (min-width: 768px) {
	.newsBlock {padding:20px 15px 30px;}
	body.news .date { font-size: 1.8em;}
	section.txtArea { padding:0.5em 0 1em; line-height: 2.0em;}
	section.txtArea .add { margin-top: -25px; padding: 0 10px;}
	section.txtArea .txt {padding: 0 0 0.8em;}
	
	body.news article h4 { font-size: 1.2em;}
	.comment h4 { font-size: 1.6em!important;}
	
	body.news article.info { margin-top: 3em;}
	
	.phBox { padding-bottom: 2.0em;}
	
	body.news article.n_0616_1 h3 { padding-top: 1.5em;}
	
}


@media all and (max-width: 767px) {
	body.news article .title {}
	body.news .date { font-size: 1.3em; letter-spacing: 0.02em;}
	body.news article .title h2 {font-size:1.0em; line-height: 1.4em; padding: 10px 10px;}
	.newsBlock {padding: 0.3em;}
	section.txtArea { padding:0.5em 0 1em; font-size: 0.9em; line-height: 1.8em;}
	body.news article h3{ font-size: 1.3em; line-height: 1.5em; margin: 1em 0 0.5em; }
	section.txtArea .add { margin-top: -15px; padding: 0 10px;}
	section.txtArea .txt {padding: 0 0 0.8em; font-size: 1em;}
	
	body.news article h4 { font-size: 1.1em;}
	
	.comment h4 { font-size: 1.3em!important; padding: 0 0 0 35px;}
	.comment h4:before {width: 25px;}
	
	.phArea { width:100%; margin:15px 0%; }
	.multiple .phArea { width:40%; margin:15px 2%;}
	.phArea#n_p_240529 { width:70%; margin:15px auto; }

	.ph { width:auto!important; height:auto!important; }
	
	.phBox { padding-bottom: 1.0em;}
	
	.borderBox {padding:1em; margin:0 auto;}
	.endCam .endInfo {height:100vh;}
}

/*	butten
============================== */
p.button { padding-bottom: 0.5em;}
p.button a {
    margin: 0 auto; padding-right: 20px;
    background-color: #000;
    display: block;
    transition: 0.5s;
	color: #fff;
	text-align: center;
	font-family: toppan-bunkyu-midashi-go-std, sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 1.3em; letter-spacing: 0.02em;
}
p.button a span{display: block;
	background-repeat: no-repeat;
    background-position: right center;
    background-size: 22px 17px;
    background-image: url(../img/arrow.png);}
p.button a:hover {
opacity:0.7;
}

@media all and (min-width: 768px) {
	p.button a {width: 300px;}
	p.button a span { padding: 20px 0;}
	p.button.tall a span{
	padding: 15px 30px 15px 0px;
	}
	.multiple .button { display: inline-block; margin: 0 15px; padding-bottom: 20px; vertical-align: top; }
	.n_0327 .multiple .button a {width: 220px;display: table; padding-left: 10px;}
	.n_0327 .multiple .button a span {    padding: 0px 30px 0px 0px; height: 65px; line-height: 1.2em;display: table-cell;
  vertical-align: middle;}
	.n_0526 p.button a {width: 350px;}
}

@media all and (max-width: 767px) {
	p.button a {width: 280px; padding-right: 15px; font-size: 1.1em;}
	p.button a span { padding: 20px 15px 20px 0; background-size: 18px 14px;}
	p.button.tall a span{
	padding: 12px 30px 12px 0px;
	}
}
@media all and (max-width: 399px) {
	p.button a{width: 90%;}
	p.button a span{font-size: 1.05em; padding: 20px 15px 20px 0px; }
}


/*	trailer
============================== */
@media all and (min-width: 768px) {
	.movieBox, .photoBox {width:750px; margin: 15px auto 25px auto; position: relative; }
	.movieBox div {width:750px;}
	.movieBox iframe {width:750px; height:422px;}
}
@media all and (max-width: 767px) {
	.movieBox, .photoBox {margin: 15px 0%; width:100%; position: relative;}
}


.disc li {
  text-align: left;
}


/*	table
============================== */

table {
 border-collapse:collapse;
 border-spacing:0;
 margin: 0 auto;
 letter-spacing: 0.05em;
}

table.border { border: solid 1px #fff; padding: 10px;}

table th ,
table td {
 padding-bottom: 0.5em;
}
table tr.space th ,
table tr.space td {
 padding-bottom: 0;
}
table th {
 text-align:left;
}
table td {
 text-align:left;
}
table th {
 font-weight: normal;
 white-space: nowrap;
 line-height: 2.5;
}

table th, table td {
 vertical-align: baseline;
	line-height: 1.5em;
}

.notes {line-height: 1.5em; padding-left:1em; padding-bottom: 0.5em; text-indent:-1em; }
.notesS {line-height: 1.5em; padding-left:1em; text-indent:-1em; }
.notesTxt {
	padding: 0.5em 0 1em;}
.notesTxt h5 {padding-bottom: 0.5em;}
.notesTxt p  {line-height: 1.5em; display: inline-block; text-align: left;}
.n_1210 table, .n_1217_3 table, .n_1219 table, .n_1220 table, .n_0119 table { margin: 0 0;}
.n_0602 table th { text-align: right;}

@media all and (min-width: 768px) {
	table {font-size:1em;}
	
	.tableBlock { width: 600px; margin: 0 auto;}
	.tableBlock table { margin: 0 0; }
	.tableBlock p {font-size:0.9em;}
	
	.n_0403 .borderBox, .n_0405 .borderBox, .n_0430 .borderBox, .n_0501 .borderBox, .n_0508 .borderBox, .n_0526 .borderBox, .n_0528 .borderBox, .n_0529 .borderBox, .n_0602 .borderBox, .n_0612 .borderBox, .n_0616_1 .borderBox, .n_0616_2 .borderBox { width: 600px; padding: 1em 0;}
	.n_0904 .borderBox { width: 400px; padding: 1em 1.5em;}
	
	.notesS { font-size: 0.9em;}

}
@media all and (max-width: 767px) {
	table { /*font-size:0.9em;*/ }
	
	.tableBlock table { margin: 0 0; }
	.tableBlock p {font-size:0.8em;}
	
	.notesTxt h5 { font-size: 0.9em;}
	.notesTxt p  {font-size: 0.9em;}
	.notes { font-size: 0.9em;}
	.notesS { font-size: 0.8em;}
	
	.n_0916 .borderBox table { margin: 1em 0em 0;}
	.n_0408 table th { letter-spacing: -0.05em;}
}

.infoBox { margin: 0 auto}
@media all and (min-width: 768px) {
	.infoBox { padding: 1em 0;} 
.n_0917_2 .infoBox {width: 700px}
}
@media all and (max-width: 767px) {
	.infoBox { padding: 0.5em 0;} 
}

@media all and (max-width: 390px) {
	.prd {letter-spacing: -0.05em;}
}


ol {
	margin-left: 2em; /* サイトに合せて調整 */
}

ol li {
	list-style-type: none;
	counter-increment: cnt;
	line-height: 1.5em;
}

ol li::before {
	content: "(" counter(cnt) ")";
	display:inline-block;
	margin-left:-2em; /* サイトに合せて調整 */
	width: 2em; /* サイトに合せて調整 */
}

/*	termsArea
============================== */
#termsArea li {line-height: 1.5em; padding-bottom: 0.5em;}
#termsArea h3 { text-align: center;}
#termsArea h3 span {background: linear-gradient(transparent 30%, #bfe1fc 20%); padding:0 18px 8px; display: inline-block; margin-bottom: 15px; line-height: 1.0em;
font-weight: 900;}
#termsArea .update { text-align: right; line-height: 1.5em; font-size: 0.9em;}
#termsArea .add { text-align: center; color: #ef1828; font-weight: bold; padding: 10px 0 15px;}
.agreeArea { text-align: center; }
#termsArea p, .agreeArea p {line-height: 1.5em;}
.termsBox p { padding-bottom: 0.5em;}
.agreeArea .agree { font-size: 1.1em; font-weight: bold; padding: 25px 0;}


.agreeArea .noteTxt { text-align: center; color: #ef1828; font-weight: bold;}

#terms {border:solid 1px rgba(66,29,60,0.7); padding: 10px; margin: 10px auto;}
.termsBox { padding: 20px 15px; line-height: 1.5em;} 

.termsBox .uline {
background:linear-gradient(transparent 85%, #bfe1fc 0%);
}
.termsBlock ul { padding-left: 1em; list-style-position: outside;
  list-style-type: disc;}
.termsBlock ul ul {list-style-type: none;}

@media all and (min-width: 768px) {
	#termsArea .read { padding-bottom: 45px; font-size: 1.1em;}
	#termsArea h3 span { font-size: 1.3em;}
}
@media all and (max-width: 767px) {
	#termsArea .read { padding-bottom: 30px; font-size: 0.9em;}
	#termsArea h3 span { font-size: 1.1em;}
	#termsArea .termsBox { font-size: 0.9em;} 
	.agreeArea { font-size: 0.9em;} 
	.agreeArea .agree {padding: 15px 0;}
	
	.termsBox { padding: 20px 5px;} 
}


/**--スライダー--**/
.slider-wrapper {
  width: 100%; height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
	margin: 0 auto;
}

.slider {
  height: 400px;
  -webkit-overflow-scrolling: touch;
}

.slider > * {
  -webkit-transform: translateZ(0px);
}

/*.slider-wrapper::-webkit-scrollbar {
  display: none;
  height: 0 !important;
}*/
/*/ スクロールバー全体*/
.slider-wrapper::-webkit-scrollbar {
  width:6px;
  /*background:#eee;*/
}
/*/ 横スクロールバー全体*/
.slider-wrapper::-webkit-scrollbar:horizontal {
  /*height:10px;*/ display: none;
}
/*/ スクロールバー上下左右末端のボタン*/
.slider-wrapper::-webkit-scrollbar-button {
  width:6px;
  height:6px;
  /*background:#666;*/
}
/*/ ドラッグするツマミ部分*/
.slider-wrapper::-webkit-scrollbar-thumb {
  background:#636363;
border-radius: 3px; 
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
}
/*/ 右下角部分*/
.slider-wrapper::-webkit-scrollbar-corner {
  /*background:#ddd;*/
}

.agreeArea { padding-bottom: 1em;}
.agreeArea #button button{
   margin: 0 auto; padding-right: 20px;
    background-color: #000;
    display: block;
    transition: 0.5s;
	color: #fff;
	text-align: center;
	font-family: toppan-bunkyu-midashi-go-std, sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 1.3em; letter-spacing: 0.02em; line-height: 1;
}
.agreeArea #button button span {display: block;
	background-repeat: no-repeat;
    background-position: right center;
    background-size: 22px 17px;
    background-image: url(../img/arrow.png);
}
.agreeArea #button button:hover {
opacity:0.7;
}

.agreeArea #button button:disabled {background-color: rgba(0,0,0,0.7); color:rgba(255,255,255,0.5); }
.agreeArea #button button:disabled span {background-image: url(../img/arrow_disabled.png);}

.environment { padding-top: 2em;}
.environment div { padding-top: 1em;}

@media all and (min-width: 768px) {
	.agreeArea #button button {width: 300px;}
	.agreeArea #button button span{ padding: 20px 0;}
	.environment dl dt, .environment dl dd  { display: inline-block;}
}

@media all and (max-width: 767px) {
	.agreeArea #button button{width: 280px; padding-right: 15px; font-size: 1.1em;}
	.agreeArea #button button span {padding: 20px 15px 20px 0; background-size: 18px 14px;}
}
@media all and (max-width: 399px) {
	.agreeArea #button button {width: 90%;}
	.agreeArea #button button span{font-size: 1.05em; padding: 20px 15px 20px 0px;}
}