@charset "utf-8";
/**************common**************/
html{
	margin:0;
	padding:0;
	height:auto !important;
}
*{
	box-sizing: border-box;
}

body{
overflow-x:hidden;
}


@media screen and (max-width: 1199px) {
  body{ overflow-x:auto; }
}

html, body, div, h1, p, blockquote, pre, 
ul, ol, li, dl, dt, dd,table, th, td, form, fieldset {
	margin: 0;
	padding: 0;
	line-height:1.4;
	font-family:Meiryo,"Hiragino Kaku Gothic ProN",sans-serif !important;
	box-sizing: border-box;
	font-size:13px;
	color:#555555;
	word-break: break-all;
}

a{
	color:inherit;
	text-decoration:none;
  	transition: all 0.2s linear;
}
i{margin-right:0.3rem;}

a.underline:hover{
	text-decoration:underline !important;
}
.clearfix{
	clear:both;
	width:100%;
}
.cartmenu input[type="submit"]{
	margin:1.0rem auto;
}

h2 {
font-size: 1.2rem;
font-weight: bold;
font-style: normal;
margin: 0 0 20px;
}

/* 翻訳ツール用 */
.google-tr{
display:inline-block;
margin-right: 1em;
}

/*****font*****/
.text-bold{
   font-weight:bold;
}
.f14{
	font-size:1.0rem;
}
.bigfont{
	font-size:2.0rem;
	margin-right:10px;
	line-height:30px;
	font-weight:bold;
}
.midfont{
	font-size:1.2rem;
	line-height:20px;
}
.smallfont{
	font-size:0.9rem;
}
.minfont{
	font-size:0.8rem;
	
}
.redfont{
	color:#f00;
}
.floatR{
	float:right;
}
.floatL{
	float:left;
}
/*****font*****/

/*****icon*****/
.icon-b{
	font-size:1.6rem;
	margin: 0 5px;
	text-decoration:none;
}
.icon-b20{
	font-size:1.8rem;
	margin: 0 5px;
	text-decoration:none;
}
.icon-s{
	font-size:1.0rem;
	margin:0 5px;
	text-decoration:none;
}


/*****font*****/

/*-------------------------------------
width margin系
-------------------------------------*/
.w10{
	width:10% !important;
}
.w15{
	width:15% !important;
}
.w20{
	width:20% !important;
}
.w25{
	width:25% !important;
}
.w30{
	width:30% !important;
}
.w35{
	width:35% !important;
}
.w40{
	width:40% !important;
}
.w45{
	width:45% !important;
}
.w50{
	width:50% !important;
}
.w55{
	width:55% !important;
}
.w60{
	width:60% !important;
}
.w65{
	width:65% !important;
}
.w70{
	width:70% !important;
}
.w75{
	width:75% !important;
}
.w80{
	width:80% !important;
}
.w85{
	width:85% !important;
}
.w90{
	width:90% !important;
}
.w95{
	width:95% !important;
}
.w100{
	width:100% !important;
}
.mr10{
margin-right:1.0rem !important;
}
.mr20{
margin-right:2.0rem !important;
}
.mr30{
margin-right:3.0rem !important;
}
.mr40{
margin-right:4.0rem !important;
}
.mr50{
margin-right:5.0rem !important;
}
.ml10{
margin-left:1.0rem !important;
}
.ml20{
margin-left:2.0rem !important;
}
.ml30{
margin-left:3.0rem !important;
}
.ml40{
margin-left:4.0rem !important;
}
.ml50{
margin-left:5.0rem !important;
}
.mb00{
    margin-bottom:0rem !important;
}
.mb10{
    margin-bottom:1rem !important;
}
.mb20{
    margin-bottom:2rem !important;
}
.mb30{
    margin-bottom:3rem !important;
}
.mb40{
    margin-bottom:4rem !important;
}
.mb50{
    margin-bottom:5rem !important;
}
.mb60{
    margin-bottom:6rem !important;
}
.mb70{
    margin-bottom:7rem !important;
}

.mt00{
    margin-top:0rem !important;
}

.mt10{
    margin-top:1rem !important;
}

.mt20{
    margin-top:2rem !important;
}

.mt30{
    margin-top:3rem !important;
}

.mt40{
    margin-top:4rem !important;
}

.mt50{
    margin-top:5rem !important;
}
.nmt10{
    margin-top:-1rem !important;
}

.nmt20{
    margin-top:-2rem !important;
}

.nmt30{
    margin-top:-3rem !important;
}

.nmt40{
    margin-top:-4rem !important;
}

.nmt50{
    margin-top:-5rem !important;
}
.nmt60{
    margin-top:-6rem !important;
}
.nmt70{
    margin-top:-7rem !important;
}
.nmt80{
    margin-top:-8rem !important;
}
.nmt90{
    margin-top:-9rem !important;
}
.nmt100{
    margin-top:-10rem !important;
}


.text-center{
	text-align:center !important;
}
.text-left{
	text-align:left !important;
}
.text-right{
	text-align:right !important;
}
.div-center{
	margin:0 auto !important;
}

.max-w50{
	max-width:50% !important;
}
.max-w80{
	max-width:80% !important;
}
.max-w90{
	max-width:90% !important;
}
.max-w100{
	max-width:100% !important;
}
.disp-b{
	display:block;
}
.disp-ib{
	display:inline-block;
}


.opa07:hover{
	opacity:0.7;
  	transition: all 0.2s linear;
}

.pb00{
	padding-bottom:0 !important;
}
.pt00{
	padding-top:0rem !important;
}
.pt10{
	padding-top:1rem !important;
}
.pt20{
	padding-top:2rem !important;
}
.pt30{
	padding-top:3rem !important;
}
.pt40{
	padding-top:4rem !important;
}
.pt50{
	padding-top:5rem !important;
}

.fs00{
	font-size:0rem !important;
}
.fs08{
	font-size:0.8rem !important;
}
.fs09{
	font-size:0.9rem !important;
}
.fs11{
	font-size:1.1rem !important;
}
.fs12{
	font-size:1.2rem !important;
}
.fs14{
	font-size:1.4rem !important;
}
.fs16{
	font-size:1.6rem !important;
}
.fs18{
	font-size:1.8rem !important;
}
.fs20{
	font-size:2.0rem !important;
}
.fs30{
	font-size:3.0rem !important;
}


/**************common**************/

/*-------------------------------------
page-top
-------------------------------------*/
	#page-top{
		width:3rem;
		height:3rem;
		display:none;
		position:fixed;
		right:1rem;
		bottom:1rem;
		font-size: 1rem;
		text-align: center;
		text-decoration: none;
		z-index:100;
		background-color:#222222;
		color:#ffffff;
		border:1px solid #222222;
	}

	#page-top i{
		vertical-align:middle;
		line-height:3rem;
		margin-left:0.2rem;
	}


/**************page-index**************/



/****parts-contents****/
#main{
	width:100%;
	margin:0 auto;
/****	max-height:450px;****/
	overflow:hidden;
}
.pageinner{
	width:100%;  /******basesize******/
	margin:0 auto;
	background-color:inherit;
}
.threetext{
	text-align:center;
	line-height:1.8rem;
}
/****parts-contents****/


/**************page-index**************/

/**************inputs**************/
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"]{
	outline: none;
	background: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-appearance: none;
	margin-top: 0.5rem;
	border:unset;
	border-bottom: 1px solid #ccc;
	padding: 0.5rem 1rem;
}
.p_count.w50{
padding: 0.4rem 0.5rem;
width: 5rem;
}
select{
	border:1px solid #ccc;
	border-radius:0;
	height:2.5em;
	padding:0.4rem 0.5rem;
	font-size:1.0rem;
    background: #fafafa;
}
textarea {
    border: 1px solid #ccc;
	border-radius:0;
	padding:0.4rem 1.0rem;
    font-size: 1.0rem;
    line-height: 1.5rem;
    font-family: "Meiryo",sans-serif;
}


a.btn3{
	padding:1.0rem;
	border-radius:0.5em;
	letter-spacing:0.1em;
	text-align:center;
	margin:0 auto;
}
a.btn3:hover{
	opacity:0.8;
	cursor:pointer;
}


input[type="submit"]{
	display: block;
	padding: 1rem;
	text-align: center;
	border: 1px solid #222222;
	margin: 0 0 0 0;
	transition: all 0.2s linear;
	cursor:pointer;
}

input[type="submit"]:hover{
	color: #ffffff;
	background-color: #222222;
	border-color: #222222;
}
input[type="submit"]:disabled{
	cursor:unset;
	border: 1px solid #cccccc;
}


/**************inputs**************/

/*****************ankor******************/

.ankorlinkarea{
	width:100%;
	margin:0px auto;
	padding:0px 1.0rem;
}

.ankorlinkarea .ankorlinks{

	margin:2% 1% 0;
	width:30.333%;
	padding:0px;
	float:left;
	display:inline-block;
}

.ankorlinkarea .ankorlinks a i{
	vertical-align:middle;
	margin-right:0.5rem;
}

.ankorlinkarea .ankorlinks a{
	border-radius:5px;
	box-sizing:border-box;
	display:block;
	width:300px;
	max-width:100%;
	margin:0 auto;
	padding:0 1.0rem;
	text-align:center;
	height:80px;
	display: table-cell;
	vertical-align: middle;
}

.ankorlinkarea .ankorlinks a:hover{
	opacity:0.7;
}
/*****************ankor******************/

/*****************guide******************/
.guidearea{
	width:100%;
	margin:0px auto;
	padding:0px 0;
  margin-top:3.0rem;
}
.guidetitle{
font-size:2.0rem;
border-style: solid none;
border-color: #aaaaaa;
border-width: 1px;
line-height:4.0rem;
height:4.0rem;
font-weight:bold;
}
.guidetitle i{
	vertical-align:middle;
	margin-right:0.5rem;
	
}
.guidecont{
	padding:1.0rem 1.0rem 1.0rem 2.0rem
	line-height:2rem;
}


ol{
counter-reset: li;
list-style: none;
padding: 0;
margin-bottom: 2.0rem;
text-shadow: 0 1px 0 rgba(255,255,255,.5);
}
ol ol{
margin: 0 0 0 2.0rem; 
}
.circle-list li{
padding: 2.0rem;
border-bottom: 1px dashed #ccc;
}
 
.circle-list h2{
position: relative;
margin: 0;
margin-bottom: 1.0rem;
padding-left:1.2rem;
}
 
.circle-list p{
    margin: 0;
}

p.mg-20{
	margin:20px 0;
}


.circle-list h2:before{
    content: counter(li);
    counter-increment: li;
    position: absolute;
    z-index: -1;
    left: -1.3em;
    top: -.8em;
    background: #f5f5f5;
    height: 1.5em;
    width: 1.5em;
    border: .1em solid rgba(0,0,0,.05);
    text-align: center;
    font: italic bold 1em/1.5em Georgia, Serif;
    color: #ccc;
    border-radius: 1.5em;
    transition: all .2s ease-out;
}
 
.circle-list li:hover h2:before{
    background-color: #E9EAEC;
    border-color: rgba(0,0,0,.08);
    border-width: .2em;
    color: #333;
    transform: scale(1.5);
}
.guidearea .link{
display:inlineblock;
margin:0px 0px 0px 30px;
border:2px solid #ccc;
padding: 10px 30px;
color: #333;
}
.guidearea .link:hover{
	cursor:pointer;
	opacity:0.7;
}

/*****************guide******************/
/*****************FAQ******************/
#faq{
  position:relative;
  width: 100%;
  margin: 0 auto;
}
#faq .link{
display:inlineblock;
margin:0px 0px 0px 30px;
border:2px solid #aaa;
padding: 10px 30px;
}
#faq .link:hover{
	cursor:pointer;
	opacity:0.7;
}

#faq h2{
padding: 1.0rem 1.5rem;
margin-top: 3.0rem;
margin-bottom: 1.0rem;
}
#faq h2 i{
	vertical-align:middle;
	margin-right:0.8rem;
}
#faq input{
  position:absolute;
  height: 0;
  padding:0;
}
#faq div div{
  position: relative;
  padding: 1.0rem 1.0rem 1.0rem 1.8rem;
  border:1px solid #aaa;
  border-radius:30px;
  font-weight:bold;
  margin:0px 2.0rem auto;
}
#faq div div i{
	vertical-align:middle;
	margin-right:0.5rem;
	}

#faq div div:hover{
	opacity:0.7;
	cursor: pointer;
}
#faq div div:after{
  position:absolute;
  top: 0.5rem;
  right:1.8rem;
  color: #aaa;
  font-size: 1.8rem;
	font-family: "Font Awesome 5 Free";/*忘れずに*/
  content: "\f138";
  -moz-transition: .2s;
  -webkit-transition: .2s;
  -o-transition: .2s;
  -ms-transition: .2s;
  transition: .2s;
  font-weight: 900;
}
#faq input:checked + div div:after{
  top: 10px;
  right:20px;
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
#faq ul{
  list-style: none;
  margin: 0;
}
#faq ul li ans{
  display: block;
  overflow: hidden;
  height: 0;
  padding: 0px 4.0rem;
  text-decoration: none;
  -moz-transition: .1s;
  -webkit-transition: .1s;
  -o-transition: .1s;
  -ms-transition: .1s;
  transition: .1s;
  margin-bottom: 2.0rem;
}

#faq input:checked + div ul li ans{
  position:relative;
  background: none;
  height: auto;
  padding: 2.0rem 4.0rem;
  line-height: 1.4rem;
  margin-bottom: 2.0rem;
}
#faq input:checked + div ul li ans:before{
position: absolute;
top: 1.0rem;
left:1.8rem;
font-size:1.6rem;
line-height:1.0;
font-family: "Font Awesome 5 Free";/*忘れずに*/
content: "\f086";
-moz-transition: .1s;
-webkit-transition: .1s;
-o-transition: .1s;
-ms-transition: .1s;
transition: .1s;
font-weight:900;
}
#faq label input{
	display:none;
}
/*****************FAQ******************/

/*****************pass_change******************/
#kiyaku{
	margin:3em 0px 1.5em 0px ;
	padding:10px 10px;
	width:100%;
	height:200px;
	border:1px solid #ccc;
	border-radius:5px;
	overflow-x:hidden;
	overflow-y:scroll;
	margin:0 auto;
}
/*****************pass_change******************/


/*************contact****************/
#changeprf {
	margin: 0 auto;
}
#changeprf table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 auto;
}
#changeprf th.t_top {
	border-top:4px solid #b3b3b3;
}
#changeprf td.t_top {
	border-top:4px solid;
}
#changeprf th {
	height: 40px;
	width:30%;
	border-bottom: #e3e3e3 1px solid;
	border-left: #e3e3e3 1px solid;
	border-right: #e3e3e3 1px solid;
	text-align: left;
	padding: 1.0rem;
	font-weight: normal;
}
#changeprf td {
	width:70%;
	border-bottom: #e3e3e3 1px solid;
	border-right: #e3e3e3 1px solid;
	text-align: left;
	padding: 1.0rem;
}
.historybackbtn{
	padding:1.0rem 1.2rem;
	border-radius:5px;
	letter-spacing:1px;
	display:inline-block;
	margin:0 auto;
	line-height:1.5em;
	font-family: "Meiryo",sans-serif;
}

/*****************my_setting&contact******************/
/*****************cart******************/
.cartinfo{
	margin: 0 auto 2.0rem;
	padding: 1.0rem;
	text-align:center;
	font-size:1.0rem;
	border-bottom: 3px solid #ccc;
	background:#eeeeee;
}
.cartinfo .big{
	font-size:2.0rem;
	font-weight:bold;
}
.cartinfo i{
	font-size:1.4rem;
	color:#999999;
	margin:0px 0.5rem;
}

.cartcaution{
	margin:0 auto 1.0rem;
	padding: 1.0rem;
	font-size:0.8rem;
}

ul.text-notes-list {
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
}
ul.text-notes-list li {
	position: relative;
	padding: 0 0 0 1.55rem;
	margin: 0 auto 0.5rem;
	line-height: 1.4;
	font-size: 0.9rem;
}
ul.text-notes-list li::before {
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	position: absolute;
	font-size: 0.7rem;
	left: 0.25rem;
	top: 0;
	color:inherit;
	font-weight: 900;
}

#cart{
	margin: 0 auto;
	padding: 0.5rem 0;
}
#cart table{
	width:100%;
	margin: 0 auto;
	padding: 0;
	border: #ccc 1px solid;
	border-collapse: collapse;
}
#cart table,#cart tr{
	border: #ccc 1px solid;
}
#cart th,#cart td{
	border: #ccc 1px dashed;
	border-right:#ccc 1px dashed;
}
#cart th.text-left{
	padding-left:0.8rem;
}
#cart .cell1{
	width:10%;
}
#cart .cell2{
	width:20%;
}
#cart .cell3{
	width:20%;
}
#cart .cell4{
	width:10%;
}
#cart .cell5{
	width:10%;
}
#cart .cell6{
	width:15%;
}
#cart th td{
	height:30px;
}
#cart .titlecell{
	height:50px;
	text-align:center;
}
#cart .imgcell{
	height:120px;
	text-align:center;
}
#cart .othercell{
	height:50px;
	text-align:right;
	background:#f1f1f1;
}
#cart .othercelltd{
	padding: 0px 0.5rem;
	text-align:right;
	color:inherit;
}
#cart .othercelltd div.total,#cart .othercelltd div.multi_total{
color:inherit;
}
#cart td{
	text-align:center;
	height:50px;
	font-size:0.9rem;
}

.containcart{
	width:100px;
	height:100px;
	float:left;
	display:inline-block;
	border:none;
	margin:10px;
	background-image:none;
	position:relative;
}
.pictures{
	background-color:#c9c9c9;
}
.containcart .pictures{
	width:100%;
	height:100%;
	background-size:contain;
	background-position:center center;
	background-repeat:no-repeat;	
	background-color:#ccc;
	position:relative;
	z-index:0;
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    transform-origin: 0 50%;
}
.containcart{
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    transform-origin: 0 50%;
}
.containcart:hover {
    position: relative;
    -webkit-transform-origin: 0 50%;
    -moz-transform-origin: 0 50%;
    -o-transform-origin: 0 50%;
    -ms-transform-origin: 0 50%;
    transform-origin: 0 50%;
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    -webkit-transform: scale(2.5);
    -moz-transform: scale(2.5);
    -o-transform: scale(2.5);
    -ms-transform: scale(2.5);
    transform: scale(2.5);
    z-index: 1;
}


#cart input[type="button"],.phsize input[type="button"]{
	padding: 5px 10px;
	font-family: "Meiryo",sans-serif;
}
.cartmenu{
	width:100%;
    vertical-align: middle;
	margin:1.0rem auto;
}


/*配送先の項目*/
.delidiv .ankorlinkarea {
width: 100%;
margin: 0px auto 1.0rem;
padding: 0px;
box-sizing:border-box;
border:1px solid #aaa;
}
.delidiv .ankorlinkarea .ankorlinks{
margin: 0px auto;
width: 20% !important;
padding: 0px;
float: none;
display: inline-block;
height:68px;
vertical-align:middle;
}

.delidiv .ankorlinkarea .ankorlinks span{
box-sizing: border-box;
display: inline-block;
width: 100%;
font-size:1.4rem;
margin: 0 auto;
padding: 0px;
font-weight:bold;
text-align: center;
line-height:68px;
height:68px;
vertical-align: middle;
background:#eeeeee;
}
.delidiv-text{
display: inline-block;
padding: 0 1.0rem;
vertical-align:middle;
}

/*****************cart******************/


/*****************支払い選択******************/

.twobox{
box-sizing:border-box;
display:inline-block;
float:none;
margin:0 1%;
vertical-align:top;
width:98%;
}
.twobox .newinfo{
	text-align:left;
    margin: 1.0rem auto 3.0rem;
    box-shadow: 2px 2px 6px 3px rgba(150,150,150,0.65);
    -webkit-box-shadow: 2px 2px 6px 3px rgba(150,150,150, 0.65);
    -moz-box-shadow: 2px 2px 6px 3px rgba(150,150,150, 0.65);
    padding: 0.8rem;
}

.twobox .newinfo .mtitle {
    padding: 1.0rem 0;
    font-size: 1.0rem;
    margin-bottom: 0.8rem;
	border-bottom:2px solid;
}
.twobox .newinfo .mtitle .text-bold{
	font-size:1.6rem;
}
.twobox .newinfo .mtitle i{
    font-size: 1.8rem;
    margin: 0 0.5rem 0 0 ;
}
.twobox .newinfo>.smallfont>img{
	width:65px;
	border:1px solid #aaa;
}
.twobox-left{
display:inline-block;
float:left;
width:50%;
margin:0 2% 0 0;
text-align: justify;
}
.twobox-right{
display:inline-block;
float:left;
text-align:center;
width:48%;
}

.imgwidth{
max-width:50px;
}
.imgwidth-l{
max-width:80px;
}
/*****************支払い選択******************/



/************回転ボタン***************/
.regbtn {
	display: inline-block;
	width: 35%;
	height: 60px;
	text-align: center;
	text-decoration: none;
	line-height: 60px;
	outline: none;
	position: relative;
	-webkit-perspective: 35%;
	perspective: 35%;
	margin:0px 20px 0px 20px;
}
.regbtn::before,
.regbtn::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.regbtn,
.regbtn::before,
.regbtn::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.regbtn span {
	display: block;
	position: absolute;
	width: 100%;
	height: 60px;
	text-align: center;
	line-height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .2s;
	transition: all .2s;
	pointer-events: none;
}
.regbtn span:nth-child(1) {
	-webkit-transform: rotateX(90deg);
	-moz-transform: rotateX(90deg);
	transform: rotateX(90deg);
	-webkit-transform-origin: 50% 50% -30px;
	-moz-transform-origin: 50% 50% -30px;
	transform-origin: 50% 50% -30px;
	opacity: 0.80;
}
.regbtn span:nth-child(2) {
	-webkit-transform: rotateX(0deg);
	-moz-transform: rotateX(0deg);
	transform: rotateX(0deg);
	-webkit-transform-origin: 50% 50% -30px;
	-moz-transform-origin: 50% 50% -30px;
	transform-origin: 50% 50% -30px;
}
.regbtn:hover span:nth-child(1) {
	-webkit-transform: rotateX(0deg);
	-moz-transform: rotateX(0deg);
	transform: rotateX(0deg);
}
.regbtn:hover span:nth-child(2) {
	-webkit-transform: rotateX(-90deg);
	-moz-transform: rotateX(-90deg);
	transform: rotateX(-90deg);
	opacity: 0.0;
}

/************最新イベント情報***************/


.pager{
	width:100%;
	text-align:center;
	margin-bottom:20px;
}
.pagenum{
	display:inline-block;
	margin:2px;
}
.pagenum a{
	display:block;
	padding:5px 15px;
}
.nowpage{
	border:1px solid #222222;
	padding:5px 15px;
	color:#222222;
	display:inline-block;
}

.linkpage{
	border:1px solid #aaaaaa;
	padding:5px 15px;
	color:#aaaaaa;
	display:inline-block;
}

.albumouter{
margin-bottom:30px !important;
}

.addcart-btn{
width: 92%;
margin: 0 auto;
border: 1px solid;
padding:10px;
text-align:center;
box-sizing:border-box;
display:block;
}
.hidden-cart{
display:none;
}
.hidden-addcart{
display:none;
}
.added-text{
box-sizing:border-box;
width: 92%;
margin: 0 auto;
padding:10px;
text-align:center;
border: 1px solid #b3b3b3;
background-color:#b3b3b3;
color:#ffffff;
}
.cart-btn{
box-sizing:border-box;
display: block;
width: 100px;
line-height:1.5em;
text-align: center;
text-decoration: none;
border-radius: 5px;
padding:10px 15px;
font-size:1.0rem;
float:left;
margin:5px;
}
.cart-btn i{ margin-right:10px;}

.pointer{
cursor: pointer;
}
.mg-r05{
margin-right:0.5rem;
}



/*====================================
ここからeテンプレ用追加
=================================== */

/*------------------------------------- */
/* 基本
------------------------------------- */


/*------------------------------------- */
/* header
------------------------------------- */
/* 不要classありそう */
#header{
width:100%;
min-width:800px;
margin:0 auto;
position:relative;
}
.headertop{
width:100%;
min-width:800px;
max-width:1200px;
margin:0 auto;
padding:10px 0;
position:relative;
}
.headertop-text{
padding:10px 0 10px 1.0rem;
font-size:1.0rem;
text-align:left;
float:left;
}

.headertop-right{
float:right;
padding: 0 1.5rem 0 1.0rem;
text-align:right;
}
.headertop-linkarea{
border-radius:5px;
display:inline-block;
vertical-align:middle;
}
.headertop-linkarea:after{
clear: both;
width: 100%;
}
.headertop-linkbtn{
font-size:0.8rem;
padding:5px 0.5rem;
display:inline-block;
text-align:center;
height:inherit;
float:left;
}
.headertop-linkarea .headertop-linkbtn:last-child{
border-left:1px solid;
}
.headertop-linkbtn:hover{
opacity:0.7;
}
.headermain{
width:100%;
height:75px;
margin:0 auto;
padding:0;
position:relative;
border-bottom:5px solid;
}
.headermain-navi{
width:100%;
min-width:800px;
max-width:1200px;
margin:0 auto;
height:75px;
position:relative;
z-index:3;
}
.headerlogolink{
display: block;
width: 25%;
padding: 0 1.0rem 5px;
float:left;
height:75px;
position:relative;
}
.logobg{
width:100%;
height:70px;
margin:0 auto;
}
.headerlogoimg{
line-height:0;
height:70px;
}

.headermain-navilink{
width:12.5%;
margin:0;
float:left;
height:inherit;
margin:0 auto;
display:block;
padding: 0;
border-bottom:5px solid transparent;
}
.headermain-navilink:last-child{
margin:0;
}
.headermain-navilink:hover{
border-bottom:5px solid transparent;
border-color:#1b41ab;
}
.navilink-inner{
width:100%;
height:65px;
border-left:0.1px solid #cccccc;
padding:5px 0.2rem 0;
text-align:center;
}
.headermain-navilink:last-child .navilink-inner{
border-right:0.1px solid #cccccc;
}

.navilink-bottom{
text-align:center;
font-size:0.8rem;
padding:5px 0;
line-height:1.0;
}



/* タイトルアイコン */
.navilink-top {
height:auto;
margin: 0 auto;
padding: 0;
font-family: sans-serif;
display:inline-block;
vertical-align: top;
}
.navilink-heading {
margin:0;
line-height:1.0;
}
.navilink-top0 .navilink-heading {
position: relative;
height:2.0rem
}

.navilink-heading .titlecolor01{
font-size:0.8rem;
position: relative;/*相対位置*/
padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
}

.navilink-heading .titlecolor01:before{
font-family: "Font Awesome 5 Free";
content: "\f138";
position: absolute;/*絶対位置*/
font-size: 1em;/*サイズ*/
left: 0.25em;/*アイコンの位置*/
top: 0.7em;/*アイコンの位置*/
font-weight: 900;
}


/* カートナンバー */
.cartin-number{
font-size:0.8rem;
line-height:1.0;
padding:3px 5px;
margin:0 0 0 0.5rem;
border-radius:50%;
display:inline-block;
padding: 3px 5px;
}

/* 不要多そうここまで */
/*------------------------------------- */
/* footer
------------------------------------- */
.footerback{
	padding:0;
}


#footer{
	width: auto;
	padding:0 0 0 0;
	text-align:center;
}

.footertop{
	width:100%;
	margin:0;
	position:relative;
}
ul.footer-navi{
	min-width:900px;
	text-align:center;
	position:relative;
	list-style:none;
	margin:0 auto;
	padding:2rem 0;
}
ul.footer-navi li{
	display:inline-block;
}
.fnavilink{
	font-size:0.8rem;
	padding:1rem 0 1rem 0;
}
.fnavilink:hover{
	text-decoration:underline;
}
.footerbottom{
}
.footer-copyright{
	width:100%;
	min-width:900px;
	margin:0 auto;
	text-align:center;
	position:relative;
	margin:0 auto;
	padding:0.5rem 0;
	font-size:0.8rem;
	background-color:#222222;
	color:#ffffff;
}
.footer-copyright a{
}



/*------------------------------------- */
/* コンテンツ表示部
------------------------------------- */
/* コンテンツ部分外枠 */
.contentsarea{
	margin:0 auto;
	position:relative;
	border-top: 3px solid #222222;
}

.contentsarea.side{
	margin-left:300px !important;
	min-width:900px;
}

.contentsarea.nonside{
	width:100%;
}

.maincontents.side{
	min-width:900px !important;
	width:100%;
}
.maincontents.nonside{
	min-width:900px !important;
	width:100%;
}

.slidermain.side{
	margin-left:300px !important;
	min-width:900px !important;
}

.slidermain.nonside{
}


/* コンテンツブロック */
.contents-block{
width:100%;
padding:2rem 3rem 3rem 3rem;
margin:0 auto;
max-width:1200px;
min-width:900px;
}

.contents-block-fw{
	width:100%;
}

.img-mask-dot{
	background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),url("../usrimg/dot01.png");
}

.img-mask-black{
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4));
}

.img-mask-white{
	background-image: linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.4));
}

/* 下層ページ用タイトル */

.eyecatcharea{
		position: relative;
}

.eyecatcharea:before{
	background-image:url('../usrimg/eyecatch0001.jpg');
	background-attachment: unset;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-clip: unset;
	content: "";
	display: block;
	padding-top:280px;

}
.eyecatcharea-mask{
	background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),url("../usrimg/dot01.png");
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.page-title-area{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
	margin: 0 auto;
	max-width: 1200px;
	min-width: 900px;
}

.page-title-area .page-title{
	margin:0;
	position: absolute;
	bottom: 3rem;
	left: 3rem;
	font-size:2.0rem;
	padding-left: 3.0rem;
	color:#ffffff;
	font-weight:normal;
	border-bottom: 1px solid #eeeeee;
	padding-bottom: 0.5rem;
}
.page-title-area .page-title:before {
    content: "□";
    position: absolute;
    width: 1.4rem;
    height: 1.4rem;
    font-size: 1.5rem;
    left: 0;
    top: 0.2rem;
	color:#ffffff;
}

.page-title-area .page-title:after {
    content: "■";
    position: absolute;
    width: 1.8rem;
    height: 1.8rem;
    font-size: 1.8rem;
    left: 0.4rem;
    top: 0.5rem;
	color:#ffffff;
}

/*-----------------------
.conttitle-heading02 {
	font-size: 2.0rem;
	text-align: center;
	display: inline-block;
}
.conttitle-heading02:before {
	content: '';
	display: inline-block;
	border-top: 0.3rem solid transparent;
	border-bottom: 0.3rem solid transparent;
	border-right: 0.6rem solid #222222;
	margin-bottom: 0.4rem;
}
.conttitle-heading02:after {
	content: '';
	display: inline-block;
	top: 50%;
	width: 0;
	height: 0;
	border-top: 0.3rem solid transparent;
	border-bottom: 0.3rem solid transparent;
	border-left: 0.6rem solid #222222;
	margin-bottom: 0.4rem;
}
---------------------------------*/
.conttitlearea.border {
border-bottom: 1px solid #cccccc;
}
.conttitle-top02 {
width: 100%;
margin: 0;
padding: 0;
font-family: sans-serif;
text-align:left;
}
.conttitle-top02 .conttitle-heading02 {
position: relative;
padding-left: 2.5rem;
}
.overcolor01 {
color: #79bcee !important;
}
.conttitle-top02 .conttitle-heading02:before {
content: "□";
position: absolute;
width: 1.4rem;
height: 1.4rem;
font-size: 1.5rem;
left: 0;
top: 0.2rem;
}
.conttitle-top02 .conttitle-heading02:after {
content: "■";
position: absolute;
width: 1.8rem;
height: 1.8rem;
font-size: 1.8rem;
left: 0.4rem;
top: 0.5rem;
}
.conttitle-heading02 .titlecolor01{
font-size: 2.0rem;
}
.snsbtnarea-top {
display: inline-block;
vertical-align: bottom;
}
.snsbtnarea-top a{
display: inline-block;
width: 2.0rem;
line-height: 1;
margin: 0 0.3rem 0 0;
}
.snsbtnarea-top a img{
width:100%;
}
.snsbtnarea-bottom {
display:block;
vertical-align: bottom;
margin: 1.0rem auto 0;
}
.snsbtnarea-bottom a{
display:inline-block;
width:2.0rem;
line-height: 1;
margin: 0 0.3rem 0 0;
}
.snsbtnarea-bottom a img{
width:100%;
}
.snsbtnarea-top a:hover,.snsbtnarea-bottom a:hover{
opacity:0.7;
}




/* 下層ページ　テキストコンテンツ系 */
.texttable th,.texttable td{
	line-height:1.8;
}
.thcell{
	background:#fafafa;
}
.textcontents-main dt{
	margin-top:2.0rem;
	font-size:1.2rem;
	font-weight:bold;
}
.textcontents-main dt.big{
	margin:2.0rem 3.0rem;
	padding: 1.0rem 3.0rem;
	font-size:1.4rem;
	font-weight:bold;
	text-align:center;
	background:#eeeeee;
	color:#333333;
}
.textcontents-main dd{
	margin-bottom:2.0rem;
}






/*------------------------------------- */
/* サイドメニュー追加
------------------------------------- */
/* 固定式サイドメニュー */
.fixed-sidemenu{
	position: fixed;
	z-index: 100;
	width: 300px;
	height: 100vh;
	background-color: RGBA(30,30,30,1.0);
	color: #ffffff;
	text-align: center;
	padding-top: 2vh;
	top:0;
	left:0;
}
.sidemenu-logolink{
}

.sidemenu-logoimg{
	width:80%;
}
.sidemenu-logo-area{
	width:100%;
	margin-bottom:1vh;
}
.fixed-sidemenu-menu{
	width:100%;
	height:6vh;
	position:relative;
}
.fixed-sidemenu-snsarea{
	width:100%;
	height:10vh;
	border-top:1px solid #333333;
	border-bottom:1px solid #333333;
	line-height:10vh;
	margin-top:1.5vh;
}
.fixed-sidemenu-snsicon{
	width: 3.0vh !important;
	vertical-align: middle;
	margin:0.2vh;
}

.fixed-sidemenu-snsicon:hover{
	opacity:0.7;
}


.fixed-sidemenu-menu a{
	line-height:6vh;
	font-size:3vh;
	color:#dddddd;
	transition:0.2s;
	position: relative;
}

.fixed-sidemenu-menu a:hover , .fixed-sidemenu-snsarea a:hover{
	opacity:0.7;
	transition:0.2s;
}

.fixed-sidemenu-menu.subsidemenu{
	text-align:left;
	padding-left:130px;
}

.fixed-sidemenu-menu.subsidemenu a{
	font-size:2vh;
}


.glayout{
	opacity:0.4;
	cursor: pointer;
}
.glayout:hover{
	opacity:0.4 !important;
}
.commingsoon{
	position: absolute;
	top: 50%;
	right:-1rem;
	opacity: 0;
	transition: all 0.2s ease;
	background-color:RGBA(0,0,0,0.6);
	padding:0.2rem 0.5rem 0.2rem 0.5rem;
	color:#dddddd;
	font-size:0.8rem;
	pointer-events: none;
}
.fixed-sidemenu-menu:hover .commingsoon{
	opacity: 1;
	top: 40%;
	right:-1rem;
}

.commingsoon:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -0.35rem;
	transform: translate(-50%,-50%);
	margin-top: 0;
	border: 0.3rem solid transparent;
	border-right: 0.5rem solid RGBA(0,0,0,0.6);
}

.badge-number{
	position: absolute;
	top: -0.5rem;
	right: -2.0rem;
	background-color: #ffffff;
	color: #555555;
	font-size: 0.7rem;
	text-align: center;
	border-radius: 50%;
	width: 1.8rem;
	height: 1.8rem;
	line-height: 1.4rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.post-number {
	position: absolute;
	top: -0.5rem;
	right: -2.0rem;
	background-color: #ffffff;
	color: #555555;
	font-size: 0.7rem;
	text-align: center;
	border-radius: 50%;
	width: 1.8rem;
	height: 1.8rem;
	line-height: 1.4rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-family: initial;
}
.badge-number.menubar{
	top: 0rem;
	right: -0.9rem;
}
.post-number.menubar{
	top: 0rem;
	right: -0.9rem;
}

.menu-title{
	display: inline-block;
	font-family: inherit;
	color: inherit;
	font-size: inherit;
}


/*------------------------------------- */
/* トップコンテンツ
------------------------------------- */
/* スライダー部分 */
.topsliderarea{
	width:100%;
	overflow:hidden;
}


/* タイトルコンテンツ */
.conttitlearea{
	width:100%;
	position:relative;
	margin:0 auto;
	padding: 0.5rem 0.5rem 0.5rem;
	text-align:center;
	margin-top:1rem;
	margin-bottom:3rem;
}

.conttitle-heading{
	font-size:4rem;
	text-align:center;
	display:inline-block;
}

.conttitle-heading:before{
	content: '';
	display: inline-block;
	border-top: 0.3rem solid transparent;
	border-bottom: 0.3rem solid transparent;
	border-right: 0.6rem solid #222222;
	margin-bottom:1rem;
}

.conttitle-heading:after{
	content: '';
	display: inline-block;
	top: 50%;
	width: 0;
	height: 0;
	border-top: 0.3rem solid transparent;
	border-bottom: 0.3rem solid transparent;
	border-left: 0.6rem solid #222222;
	margin-bottom:0.8rem;
}
.conttitle-heading-caption{

}


.contentsubtitle{
	border-left:0.2rem solid #222222;
	padding-left:1rem;
	font-size:2rem;
	margin-bottom:1.5rem;
}

.contentsubtitle.lowerpage{
	position:relative;
	margin-bottom:2.5rem;
}
.contentsubtitle.lowerpage::after{
	content:'';
	position:absolute;
	bottom:-0.5rem;
	left:-0.2rem;
	display:block;
	width:100%;
	height:1px;
	background:#cccccc;
}


/* MOVIE */
.movieeventarea{
	text-align:left;
}

.movieitem{
	position: relative;
	width:48%;
	display: inline-block;
	margin: 0 0.5% 2rem 0.5%;
	vertical-align: top;
}
.movieitem a{
	display: block;
}
.moviethumbnail{
	width:100%;
}

.moviethumbnail:before {
    content:"";
    display: block;
    padding-top: 100%; /* 高さを幅の100%に固定 */
}

.movie-captionarea{
	padding-top:0.5rem;
}

.movie-date{
	font-size:0.8rem;
}

.movie-caption{
	font-size:0.8rem;
	height: 2rem;
    overflow: hidden;
	margin: 0.2rem 0 0;
}
.moviethumbnail i{
	position:absolute;
	font-size: 3rem;
	color:RGBA(0,0,0,0.6);
	top:40%;
	left:50%;
	transform:translate(-50%,-40%);
}


/* GUIDE SLIDER */
.entryguide-area{
	width:50%;
	display:inline-block;
	position: relative;
	padding:1rem 0 4rem 0;
	background-color:RGBA(255,255,255,1.0);
	border-radius:0.3rem;
}
.guideslider-item{
	width:100%;
	height:auto;
	padding:0rem 4rem 0rem 4rem;
}
.guideslider-item:focus{
	outline:none;
}
.guide-slider .slick-dots{
	position:absolute !important;
	bottom:-8rem !important;
}
.guideslider-title{
	font-size:3.0rem;
	text-align:center;
	margin-bottom:1rem;
}
.guideslider-subtitle{
	font-size:1.2rem;
	text-align:center;
	margin-bottom:1rem;
}
.guideslider-image{
	width:100%;
	margin:0 auto;

}
.guideslider-image:before {
    content:"";
    display: block;
    padding-top: 50%; /* 高さを幅の100%に固定 */
}

.guideslider-contents{
	width:100%;
	padding:1rem 0;
	line-height:1.6rem;
	text-align:justify;
	text-justify:distribute;
}
.guideslider-entrybtn{
	display: block;
	padding:1rem;
	text-align:center;
	border:1px solid #222222;
	margin:0 4rem 0 4rem;
}

/*==================================
 MOVIE(TOP)
==================================*/
.movieeventarea{
width:100%;
margin:0 auto;
}



/* リンクボタン */
.viewmore-area{
	text-align:center;
}


.contpage-linkbtn{
	font-size:2.0rem;
	display: inline-block;
	text-align: center;
	padding: 0.5rem 5.0rem;
	border: 1px solid #222222;
	margin: 2rem 0 2rem 0;
	transition: 0.2s;
	position: relative;
}

.contpage-linkbtn:after{
	font-family: "Font Awesome 5 Free";/*忘れずに*/
	content: "\f101";
	font-weight:900;
	font-size:0.8rem;
	position: absolute;
	top: 1.4rem;
	right: 0.5rem;
}

.contpage-linkbtn:hover{
	color:#ffffff;
	background-color:#222222;
	border-color:#222222;
}

/* テキストコンテンツ */
.textcontents-main{
font-size: 1.0rem;
text-align: left;
padding: 0 0 1.0rem 0;
line-height:1.8rem;
}


/* 新着情報 */
.newslistlink{
display:block;
padding:1.5rem 0 1.5rem 0;
border-bottom:1px solid #dddddd;
position:relative;
}
a.newslistlink::after{
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	position: absolute;
	font-size: 1.0rem;
	right: 1.0rem;
	top: 50%;
	color: #555555;
	font-weight: 900;
	transform: translate(0,-50%);
}
.newslistlink:hover{
}
.newslist-date{
width:15%;
min-width:160px;
text-align:left;
display:inline-block;
vertical-align:middle;
padding:0 0 0 3.5rem;
position:relative;
}
.newslist-date.new:before{
content: 'New';
display: block;
width: 2.2rem;
position: absolute;
top: 50%;
left: 0.5rem;
text-align: center;
background: #bbbbbb;
border-radius: 50%;
font-size: 0.7rem;
height: 2.2rem;
line-height: 2.2rem;
transform: translateY(-50%);
color: #fff;
}

.newslist-tag{
	font-size:0.8rem;
	width: 20%;
	min-width: 100px;
	text-align: left;
	display: inline-block;
	vertical-align: middle;
	padding: 0.4rem;
	background: #000000;
	color: #ffffff;
	text-align: center;
	line-height:1;
}
.newslist-tag.one-corum{
	width: 10%;
}

.newslist-title{
width:65%;
text-align:justify;
display:inline-block;
vertical-align:middle;
padding:0 1.0rem 0 3.5rem;
overflow:hidden;
min-width:95%;
max-height: 2.8rem;
margin-top:0.5rem;
}
.newslist-titlelist{
width:76%;
text-align:left;
display:inline-block;
vertical-align:middle;
margin:0 1%;
}

.newslist-catearea{
width:100%;
margin:0 auto 3.0rem;
}
.newslist-catelink{
display:inline-block;
vertical-align:middle;
padding:0.5rem;
font-size:0.8rem;
margin:0 0.5rem 0.8rem 0;
}
.newslist-catelink:hover{
opacity:0.7;
}
.comment-tag {
font-size: 0.8rem;
text-align: left;
display: inline-block;
vertical-align: middle;
padding: 0.4rem;
color: #555555;
line-height: 1;
min-width:4.0rem;
}


/* 動画一覧 */
.movielist {
width: 32%;
margin: 0 0 2% 2%;
position: relative;
box-shadow: 0 1px 3px rgba(0,0,0,0.18);
float: left;
display: block;
position: relative;
}
.newslistarea .movielist:nth-child(3n + 1) {
margin: 0 0 2%;
}
.movieimgarea {
width: 100%;
position: relative;
overflow:hidden;
}
.movieimgarea::before {
content: '';
display: block;
padding-top: 100%;
}
.movieimg {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.movieimg i {
position: absolute;
font-size: 3rem;
color: RGBA(0,0,0,0.6);
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}
.movietextarea {
width: 100%;
position: relative;
padding: 0.5rem 0.5rem;
}
.movietext-date {
font-size: 0.8rem;
height:1.6rem;
}
.movietext-tag {
font-size: 0.8rem;
padding: 0.1rem 0.5rem;
border: 1px solid;
display: inline-block;
vertical-align: middle;
}
.movietext-caption {
font-size: 1.0rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
font-weight: bold;
margin:0.5rem 0 0;
}


/* SNSコンテンツ */
.snscontentsarea{
width:100%;
margin:0 auto 3.0rem;
}
/* ポイントコンテンツ */
.pointcontentsarea{
width:100%;
margin:0 auto 3.0rem;
padding:0;
}

.pointcontentsarea:after{
content:'';
clear:both;
width:100%;
display:block;
}
.pointcont{
width:32%;
margin:0 2% 0 0;
padding:0;
box-shadow:0 1px 3px 1px rgba(180,180,180,0.2);
float:left;
background:#ffffff;
overflow:hidden;
}
.pointcontentsarea .pointcont:last-of-type{
margin:0;
}
.pointcont-img{
width:100%;
position:relative;
}
.pointcont-img:before{
content:'';
display:block;
padding-top:100%;
}
.pointcont-innerimg{
width:100%;
height:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
}
.pointcont-title{
width: 100%;
margin: 0;
padding: 1.0rem;
text-align: center;
font-size: 1.1rem;
font-weight: bold;
}
.pointcont-text{
width:100%;
margin:0;
padding:1.0rem 1.0rem 2.0rem;
text-align:left;
}

/* リンクコンテンツ */
.linkbaner{
width:31.3%;
max-width:280px;
height:90px;
max-height:90px;
float:left;
margin: 1.0rem 2% 1.0rem 0;
background:#bbbbbb;
text-align:center;
}



/* プロフィールエリア */
.profile-contentsarea{
	width:100%;
	position:relative;
	margin-bottom:3rem;
}
.prf-left-block{
	width:47%;
	display:inline-block;
	margin-right: 2%;
    vertical-align: top;
}

.prf-left-block-image{
	
}
.prf-left-block-image img{
	width:100%;
}

.prf-right-block{
	width:47%;
	display:inline-block;
	margin-left: 2%;
	vertical-align: top;
	padding: 0 5rem 0rem 5rem;
}
.prf-right-block-title{
	font-size:3.0rem;
	text-align:center;
	margin:0;
}

.prf-right-block-subtitle{
	font-size:1.2rem;
	font-weight: bold;
	text-align:center;
	letter-spacing: 0.5rem;
	text-indent: 0.5rem;
	margin-top: -0.5rem;
	margin-bottom:2rem;
}
.prf-right-block-text{
	line-height: 1.8rem;
	text-align: justify;
	margin-bottom:2rem;
}
.prf-right-block-btn{
}




/*==================================
 写真コンテンツ　シリーズ表示
==================================*/
.series-toparea{
width:100%;
margin:0 auto;
background:#999999;
position:relative;
}
.series-event{
width: 100%;
height:100%;
margin: 0 auto;
max-width: 1200px;
min-width: 900px;
padding: 2rem 3rem 3rem 3rem;
}

.series-ev-left{
width:calc(96% - 300px);
float:left;
margin:0 4% 0 0;
color:#eeeeee;
}
.series-ev-name{
font-size: 1.0rem;
margin: 0 0.5rem 0.3rem 0;
display: inline-block;
color: #ffffff;
border-radius: 0;
padding: 0.3rem;
}

.series-ev-title{
margin: 0 0 1.0rem;
position: relative;
font-size: 2.0rem;
padding-left: 3.0rem;
color: #eeeeee;
font-weight: normal;
border-bottom: 1px solid #eeeeee;
padding-bottom: 0.5rem;
max-width:600px;
}
.series-ev-title:before {
content: "□";
position: absolute;
width: 1.4rem;
height: 1.4rem;
font-size: 1.5rem;
left: 0;
top: 0.2rem;
color: #ffffff;
}
.series-ev-title:after {
content: "■";
position: absolute;
width: 1.8rem;
height: 1.8rem;
font-size: 1.8rem;
left: 0.4rem;
top: 0.5rem;
color: #ffffff;
}

.series-ev-text{
font-size:1.0rem;
color:inherit;
}
.series-ev-text pre{
font-size:1.0rem;
color:inherit;
white-space: pre-wrap;
font-family: inherit;
margin:0 auto 1.0rem;
}
.series-ev-right{
width:300px;
float:left;
margin:0;
color:#eeeeee;
}
.series-ev-status{
font-size:1.0rem;
color:inherit;
}
.series-ev-date{
font-size:1.0rem;
margin:0 0 10px;
color:inherit;
}
.series-ev-cover{
width:100%;
position:relative;
}
.series-ev-cover::before{
content: '';
display: block;
padding-top: 66%;
}
.series-ev-cvimg{
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
background-position:center center;
background-repeat:no-repeat;
background-size:cover;
}
.beforesale{
border:1px solid #bbbbbb;
}
.series-ev-count{
display:inline-block;
padding:5px 2%;
position:absolute;
bottom:5%;
right:0;
border-radius: 5px 0 0 5px;
font-size: 0.6em;
text-align: center;
}
.series-ev-bottomarea{
width:100%;
position: relative;
}
.series-ev-bottom{
width: 100%;
min-width: 900px;
max-width: 1200px;
margin: 0 auto;
padding: 1.0rem 3rem 1.0rem;
}
.series-tagarea{
margin:10px 0 0;
}
.series-tag{
display:inline-block;
border-radius:0;
padding:0.5rem 1.0rem;
text-align:center;
font-size: 0.8rem;
margin: 0 1.0rem 0.5rem 0;
border: 1px solid #333333;
background-color:#333333;
color:#ffffff;
}
.series-ev-bottom .series-tag:last-child{
margin:0;
}

/* アルバム（下層ページの場合）*/
.series-albumarea{
width:100%;
background:#999999;
color:#eeeeee;
position:relative;
}
.series-album{
width:100%;
min-width:900px;
max-width:1200px;
margin:0 auto;
padding:1.0rem 3.0rem;
color:inherit;
}
.series-album-cover{
width:10%;
position:relative;
display:inline-block;
vertical-align:middle;
}
.series-album-cover::before{
content: '';
display: block;
padding-top: 66%;
}
.series-album-cvimg{
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
background-position:center center;
background-repeat:no-repeat;
background-size:cover;
}
.series-album-title{
font-size:1.5rem;
color:inherit;
display:inline-block;
vertical-align:middle;
margin:0 1.0rem;
padding:0.5rem 0.5rem;
max-width:45%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
text-decoration:underline;
}
.series-album-title:hover{
color:#555555;
}
.series-album-text{
font-size:1.5rem;
color:inherit;
display:inline-block;
vertical-align:middle;
margin:0 1.0rem 0 0.5rem;
max-width:30%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.series-album-icon{
font-size:1.4rem;
color:inherit;
display:inline-block;
vertical-align:middle;
max-width:5%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}

.series-backbtn{
padding: 0.5rem;
border-radius: 0;
border: 1px solid #ccc;
display: inline-block;
margin: 0 0.5rem;
}
.series-backbtn:hover{
opacity:0.7;
}


.series-tag-text {
font-size: 1.5rem;
color: inherit;
display: inline-block;
vertical-align: middle;
margin: 0 1.0rem 0 0;
line-height:1.6;
}

/*==================================
 写真イベント表示
==================================*/
/* イベント掲載コンテンツ */
.photocontentsarea{
width:100%;
margin:0 auto 3rem;
}
.photoeventarea{
width:100%;
margin:0 auto;
}

.photoevent{
width:32%;
margin:0 0 2% 2%;
background:#ffffff;
position:relative;
box-shadow: 0 1px 3px rgba(0,0,0,0.18);
float:left;
display:block;
position:relative;
}

.contents-block .photoevent:nth-child(3n + 2) {
    margin: 0 0 2%;
}
.post .photoevent:nth-child(even) {
margin:0 0 2%;
}
.photoevent:hover{
box-shadow: 0 3px 5px 2px rgba(0,0,0,0.20);
}
.photoimgarea{
width: 100%;
position: relative;
}
.photoimgarea::before{
content: '';
display: block;
padding-top: 66.666%;
}
.photoimg{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.photoeffect{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background:linear-gradient(rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.8) 80%, rgba(0, 0, 0, 1)), center center no-repeat;
background-size:cover;
}
.photoeffect-past{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background:rgba(0,0,0,0.65) center center no-repeat;
background-size:cover;
}
.past-msg{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
font-size: 2.2rem;
color: #ffffff;
opacity: 0.7;
width: 100%;
letter-spacing:0.3rem;
text-align: center;
}
.pastevent{
pointer-events: none; 
}
.photo-count{
display:inline-block;
padding:0.5rem;
position:absolute;
top:5%;
right:0;
border-radius: 5px 0 0 5px;
font-size: 0.7rem;
text-align: center;
}
.photo-evarea{
width:100%;
position:absolute;
bottom:0;
left:0;
padding:0.5rem 1.0rem;
color:#ffffff;
}
.photo-ev-catearea{
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: inherit;
}
.ev-catename{
font-size:0.8rem;
color:inherit;
margin-right: 0.5rem;
}
.ev-title{
font-size: 1.2rem;
color: inherit;
text-overflow: ellipsis;
overflow: hidden;
white-space: normal !important;
height: 3rem !important;
}
.phototextarea{
width:100%;
position:relative;
padding:0.5rem 0.5rem;
}
.photo-status{
float:left;
font-size:0.7rem;
}
.photo-date{
float:right;
font-size:0.7rem;
}
.photo-tagarea{
margin:0;
min-height:2.6rem;
max-height: 2.6rem;
overflow: hidden;
}
.photo-tag{
display:inline-block;
background:#b9b9b9;
color:#000000;
border-radius:0;
padding: 0.25rem 0.5rem;
text-align:center;
font-size: 0.8rem;
margin: 0.5rem 1% 0 0;
border: 1px solid;
}
.phototextarea .photo-tag:last-child{
margin:0.5rem 0 0;
}

/* タレント一覧 */
.photo-talentname{
width:100%;
font-size:1.3rem;
font-weight:bold;
margin:0 0 0.5rem;
}
.photo-talentdesc{
width:100%;
}
.photo-talentdesc pre{
color:inherit;
font-family: inherit;
white-space: pre-wrap;
font-size:0.8rem;
line-height:2.0;
min-height:4.5rem;
max-height:4.5rem;
overflow:hidden;
}

/*==================================
 写真リスト表示
==================================*/
.contents-block-midarea{
width:100%;
min-width:900px;
max-width:1200px;
padding:2.0rem 3.0rem 0;
margin:0 auto;
}
.page-titlearea{
width:100%;
position:relative;
margin:0 auto 2.0rem;
padding:0;
}
.page-titletext{
display:inline-block;
vertical-align:middle;
font-size:2.0rem;
}
.page-titlebtnarea{
width:10%;
max-width:100px;
display:inline-block;
vertical-align:middle;
line-height:0;
}
.page-titlebtnarea.photolist{
width: auto;
display: block;
vertical-align: middle;
line-height: 0;
float: right;
max-width: unset;
}

.page-titlebtninner{
display: inline-block;
width: 100%;
border-radius: 5px;
margin: 0;
text-align: center;
}
.page-titlebtninner.photolist{
display: inline-block;
width: auto;
border-radius: 5px;
margin: 0;
text-align: center;
float:right;
}
.page-titlebtn{
display: block;
width: 50%;
float: left;
padding:0.2rem;
text-align:center;
line-height:1.0;
border-radius:0 5px 5px 0;
border:1px solid;
}
.page-titlebtninner .page-titlebtn:first-child{
border-radius:5px 0 0 5px;
border-right:none !important;
}
.squareicon{
width:80%;
}


.switchradio{
display:none;
margin: 0 !important;
}
/* 画像サイズ変更用css */
.imagewidth01{
width:47% !important;
margin:0 1% 1.0rem !important;
}

/* タグ検索用戻るぼたん */
.tagclearbtn{
display: inline-block;
vertical-align:middle;
text-align: center;
padding: 0.4rem 1.0rem;
border: 1px solid;
border-radius: 0;
margin: 0 1.0rem;
border:1px solid;
}


.checkbox04{
display:inline-block;
vertical-align:middle;
}
.checkbox04-input{
  display: none;
}
.checkbox04-parts {
    position: relative;
    padding: 0.5rem 1.0rem 0.50rem 4.0rem;
    transition: .2s;
    color: #444;
    border-radius: 0 !important;
    border: 1px solid #ddd;
    display: inline-block;
    line-height: 1;
	cursor: pointer;
}
.checkbox04-parts:hover{
opacity:0.7;
}
.checkbox04-input:checked + .checkbox04-parts{
  background: #79bcee;
  color: #fff;
  border: 1px solid #79bcee;
}
.checkbox04-parts::before {
    content: "";
    display: block;
    left: 0.6rem;
    width: 2.2rem;
    height: 1.05rem;
    border-radius: 0.5rem;
    border: 1px solid #aaa;
    background: #fff;
    position: absolute;
}
.checkbox04-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 0.63rem;
    left: 0.8rem;
    width: 0.9rem;
    height: 0.9rem;
    background: #aaa;
    border-radius: 50%;
    transition: .2s;
    display: block;
}
.checkbox04-input:checked + .checkbox04-parts::before {
  border: 1px solid #79bcee;
}
.checkbox04-input:checked + .checkbox04-parts::after {
  left: 1.85rem;
  background: #79bcee;
}

.checkbox04-parts i{
font-size:1.2rem;
margin:0;
line-height:1.0;
}



/* アルバム用css */
.photoblock{
width:22%;
float:left;
position:relative;
background:#f4f4f4;
margin:0 1% 1.0vw;
}
.photoblock::before{
content: '';
display: block;
padding-top: 100%;
}
.photobg{
width:100%;
position:absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
overflow:hidden;
}
.photobg.albumdiv::before{
content: '';
display: block;
padding-top: 100%;
}
.albumimg{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-size:cover;
background-position:center center;
}
.albumtitle{
display:inline-block;
margin-bottom:0px;
height: 28px;
position: absolute;
top: 0;
width: 100%;
padding: 2px;
box-sizing: border-box;
line-height: 12px;
font-size: 0.8rem;
left: 0;
z-index: 11;
text-align:center;
}

.nonside .photoblock{
	width: 22%;
    margin: 0 1% 1.0vw;
}

.cart-btn000{

}

.cart-btn000 .addcart-btn{
width: 100%;
margin: 0 auto;
padding: 0.6rem;
text-align: center;
box-sizing: border-box;
display: block;
font-size: 1.0rem;
line-height:1.0;
margin:0.5rem auto;
border:1px solid;
}
.cart-btn000 .hidden-cart{
display:none;
}
.cart-btn000 .hidden-addcart{
display:none;
}
.cart-btn000 .added-text{
width: 100%;
margin: 0 auto;
padding: 0.6rem;
text-align: center;
box-sizing: border-box;
font-size: 1.0rem;
line-height:1.0;
margin:0.5rem auto;
border: 1px solid #b3b3b3;
background:#b3b3b3;
}

.cart-btn000 .pointer{
cursor: pointer;
}

.side .hidden-cart{
display:none;
}
.side .hidden-addcart{
display:none;
}

.side .gridder-list i.cartdiv{
top: 0;
right: 0;
padding: 0.5rem;
border-radius: 5px;
margin: 0.5rem;
font-size: 1.4rem;
position: absolute;
z-index:1;
}
.nonside .hidden-cart{
display:none;
}
.nonside .hidden-addcart{
display:none;
}
.nonside .gridder-list i.cartdiv{
top: 0;
right: 0;
padding: 0.5rem;
border-radius: 5px;
margin: 0.5rem;
font-size: 1.4rem;
position: absolute;
z-index:1;
}



.photoarea-bottom{
width:100%;
padding:20px 3%;
margin:20px 0 0;
}
.backbtn{
display:inline-block;
padding:15px 5%;
text-align:center;
border:1px solid;
font-size:0.8rem;
}


/*==================================
 写真拡大詳細表示
==================================*/

.listclose{
width: 40px;
position: absolute;
top: 0;
right: 1%;
height: 40px;
text-align: center;
font-size: 2.4rem;
color: #ffffff;
}
.imagenotes{
color: #f6f6f6;
text-align: left;
margin: 0 0 0.5rem;
}


.imageinner{
width:58%;
margin:0 2% 0 0;
background-color:inherit;
height:auto;
padding:0;
background:#f4f4f4;
float:left;
}





.griderinnertext{
width:40%;
margin:0 auto;
background-color:inherit;
height:auto;
padding:0;
float:left;
text-align:left;
color:#ffffff;
}

.griderinnertitlearea{
border-bottom: 1px solid #cccccc;
width: 100%;
margin: 0 auto 1.0rem;
padding-bottom: 0.5rem;
position:relative;
}
.griderinnertitle{
border-left: 0.3rem solid;
width: 100%;
margin: 0 auto;
text-align: left;
color: #ffffff;
font-size: 1.6rem;
padding-left: 1rem;
}


.photoimgarea.yoko::before{
content: '';
display: block;
padding-top: 66.6%;
background:#ddd;
}
.photoimgarea.tate::before{
content: '';
display: block;
padding-top: 150%;
background:#ddd;
}
.photoimgarea.shikaku::before{
content: '';
display: block;
padding-top: 100%;
background:#ddd;
}
.photoimgarea.bulk::before{
content: '';
display: block;
padding-top: 100%;
background:#ddd;
}


.phototag-op{
width:100%;
margin:0 auto 2.0rem;
color:#999999;
padding:0 1.0rem;
}

/* 縦写真レイアウト */
.bottom-nav{
width:100%;
padding:15px 0.5rem;
margin: 0 auto;
}
.bottom-nav-left{
float:left;
width:50%;
display:block;
cursor:pointer;
}
.bottom-nav-leftimg{
display:inline-block;
vertical-align:middle;
width:18%;
text-align:left;
}
.bottom-nav-lefttext{
display:inline-block;
vertical-align:middle;
font-size:1.1rem;
color:#ffffff;
}
.bottom-nav-right{
float:right;
width:50%;
text-align:right;
display:block;
cursor:pointer;
}
.bottom-nav-rightimg{
display:inline-block;
vertical-align:middle;
width:18%;
}
.bottom-nav-righttext{
display:inline-block;
vertical-align:middle;
font-size:1.1rem;
color:#ffffff;
}


ul.pricelist{
width:100%;
margin:0 auto 2.0rem;
padding:0;
list-style:none;
color:#ffffff;
}
ul.pricelist li{
padding:0.5rem 0.2rem;
border-bottom:1px dashed #cccccc;
}
ul.pricelist label:last-child li{
border-bottom:none;
}
.pricelist-left{
display:inline-block;
vertical-align:middle;
width:100%;
}
.price-size{
font-size:1.2rem;
font-weight:bold;
margin:0 0 5px;
color:#ffffff;
}
.price-comment{
font-size:0.7rem;
color:#ffffff;
}
.pricelist-center{
display:inline-block;
vertical-align:middle;
width:45%;
line-height:1.0;
color:#ffffff;
}
.price-num{
font-weight:bold;
font-size:1.1rem;
display:inline-block;
vertical-align:middle;
color:#ffffff;
}
.price-tax{
font-size:0.6rem;
display:inline-block;
vertical-align:middle;
color:#ffffff;
}
.pricelist-right{
display:inline-block;
vertical-align:middle;
width:52%;
}
.cartbtn:hover{
opacity:0.7;
}
.price-cart{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
font-size:1.0rem;
display:block;
cursor:pointer;
}
.price-carttext{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
display:block;
cursor:pointer;
}
.price-carttext.redfont{
font-size:0.8rem;
}
.pricelist-bottom{
width:100%;
}
.buyclickbtn{
display:inline-block;
text-align:center;
padding:1.0rem 1.0rem;
border:1px solid;
border-radius:0;
margin:0 auto 1.0rem;
width:100%;
cursor: pointer;
}
.buyclickbtn:hover{
opacity:0.7;
}

.cart-btn000 .buyclickbtn{
display:inline-block;
text-align:center;
padding:1.0rem 1.0rem;
border:1px solid;
border-radius:5px;
margin:0 auto 1.0rem;
width:100%;
border: 1px solid #b3b3b3;
}
.cart-btn000 .delclickbtn{
text-align:center;
padding:1.0rem 1.0rem;
border:1px solid;
border-radius:5px;
margin:0 auto 1.0rem;
width:100%;
border: 1px solid #b3b3b3;
}
.gridertitlecolor01{
color:#ffffff;
}
.linkbtn{
width:94%;
margin:0 auto 10px;
text-align:center;
padding:15px 0;
border-radius:5px;
font-size:1.0rem;
display:block;
}

/* 横写真レイアウト */
.imageinner.yokotype{
width:100%;
margin:0 auto 1.5rem;
background-color:inherit;
height:auto;
padding:0;
}
.griderinnertext.yokotype{
width:100%;
margin:0 auto;
background-color:inherit;
height:auto;
padding:0;
text-align:left;
color:#ffffff;
}

.pageinner.yokotype{
width:100%;
display:inline-block;
vertical-align:top;
}
.pricelist-bottom.yokotype{
width:100%;
display:inline-block;
vertical-align:top;
}
.bottom-nav-yoko{
width:100%;
padding:0 0.5rem;
margin: 0 auto 1.0rem;
}
.bottom-nav-yoko-left{
width:33%;
display:inline-block;
cursor:pointer;
}
.bottom-nav-yoko-center{
width:33%;
display:inline-block;
cursor:pointer;
text-align: center;
padding: 1rem;
}

.bottom-nav-yoko-center a{
display:block;
border:1px solid #cccccc;
border-radius:0.5rem;
padding:1rem;
color:#ffffff;
}

.bottom-nav-yoko-leftimg{
display:inline-block;
vertical-align:middle;
width:10%;
text-align:left;
}
.bottom-nav-yoko-lefttext{
display:inline-block;
vertical-align:middle;
font-size:1.2rem;
color:#ffffff;
margin:1.0rem
}
.bottom-nav-yoko-right{
width:32%;
text-align:right;
display:inline-block;
cursor:pointer;
}
.bottom-nav-yoko-rightimg{
display:inline-block;
vertical-align:middle;
width:10%;
}
.bottom-nav-yoko-righttext{
display:inline-block;
vertical-align:middle;
font-size:1.2rem;
color:#ffffff;
margin:1.0rem
}

ul.pricelist-yoko{
width:100%;
margin:0 auto 2.0rem;
padding:0;
list-style:none;
color:#ffffff;
}
ul.pricelist-yoko li{
padding:0.8rem 1.0rem;
border-bottom:1px dashed #cccccc;
}
ul.pricelist-yoko label:last-child li{
border-bottom:none;
}
.pricelist-left-yoko{
display:inline-block;
vertical-align:middle;
width:40%;
}
.price-size-yoko{
font-size:1.2rem;
font-weight:bold;
margin:0 0 10px;
color:#ffffff;
}
.price-comment-yoko{
font-size:0.7rem;
color:#ffffff;
}
.pricelist-center-yoko{
display:inline-block;
vertical-align:middle;
width:20%;
text-align:right;
line-height:1.0;
color:#ffffff;
}
.price-num-yoko{
font-weight:bold;
font-size:1.1rem;
display:inline-block;
vertical-align:middle;
color:#ffffff;
}
.price-tax-yoko{
font-size:0.6rem;
display:inline-block;
vertical-align:middle;
color:#ffffff;
}
.pricelist-right-yoko{
display:inline-block;
vertical-align:middle;
width:30%;
margin-left:5%;
}
.price-cart-yoko{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
font-size:1.2rem;
display:block;
cursor:pointer;
}
.price-carttext-yoko{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
display:block;
cursor:pointer;
}
.price-carttext-yoko.redfont{
}





/* メインコンテンツ内 サブミット */
.maincont-formsubmit {
margin: 0 auto !important;
border: 1px solid #cccccc !important;
font-size: 1.0rem;
cursor: pointer;
padding: 10px 1.0rem;
border-radius:5px;
display:inline-block;
text-align:center;
}


/*--------------------------------
新着情報コンテンツ
-------------------------------- */


/* 記事内容ページ */
.newsinner-days{
text-align:right;
margin:0 auto 1.0rem;
}
.newsinner-text pre{
white-space: pre-wrap;
font-family:inherit;
margin:2.0rem auto;
}
.newsinner-main{
width:100%;
margin:0 auto;
}
.newsinner-img{
width:50%;
}
.news-tagarea{
display:inline-block;
float:left;
}

.news-catetag{
font-size:0.9rem;
padding:0.3rem 0.5rem;
text-align:center;
display:inline-block;
vertical-align: middle;
border: 1px solid;
}
a.news-catetag:hover{
opacity:0.7;
}
.newspagerarea{
text-align:center;
margin:2.0rem auto 0;
width: 100%;
max-width: 640px;
}

.newslistpager{
display:inline-block;
border:1px solid #222222;
padding:0.5rem 0.87rem;
margin:0 0.5rem;
}
.newspager{
display:inline-block;
text-align:center;
margin: 0 1%;
padding:0.5rem;
border:1px solid;
width:30%;
font-size:1.0rem
}

.newspager.nonediv{
border:none;
}
.article-btn {
padding: 1rem 2rem;
background-color: #dddddd;
display: inline-block;
margin-bottom: 2rem;
}

.article-btn:hover {
opacity:0.8;
}
.article-sub{
margin-bottom: 0;
font-size: 1.5em;
}

.newsinner-main video{
width:100%;
overflow:hidden;
margin:0 auto 1.0rem;
}
/*------------------------------------
タレント一覧　中ページ
----------------------------------- */
.talentlistlink{
display:block;
padding: 1.0rem 2.5rem 1.0rem 1.0rem;
}
.talentlistlink:hover{
}
.talentlist-left{
width:100%;
display:inline-block;
padding:0 2.0rem 0 0;
vertical-align:middle;
}
.talentlist-name{
font-size:1.3rem;
margin-bottom:10px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.talentlist-text{
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.talentlist-right{
width:38%;
display:inline-block;
padding:0;
position:relative;
vertical-align:middle;
}
.talentlist-right::before{
display:block;
content:"";
padding-top:100%;
}
.talentlist-img{
width:100%;
height:100%;
background-position:center center;
position:absolute;
top:0;
left:0;
background-repeat:no-repeat;
background-size:contain;
}

.talent-tag-name{
font-size: 2.2rem;
margin: 0 1.0rem 2.0rem 0;
display: inline-block;
color: #ffffff;
}


/*------------------------------------
セッションカート登録選択
----------------------------------- */

.idx_cart_login{
width:48%;
margin:0 1%;
float:left;
box-shadow: 0 1px 3px rgba(0,0,0,0.18)
}
.idx_cart_login-title{
text-align:center;
font-size:1.2rem;
padding:10px 1.0rem;
}
.idx_cart_login-inner{
padding:10px 1.0rem;
}
.idx_cart_login-innertext{
font-size:1.0rem;
margin:0 0 1.0rem;
}
.idx_cart_login_formparts{
margin:0 0 1.0rem;
}



/*------------------------------------
イベントカウントダウンタイマー
----------------------------------- */

.cdtarea{
position: absolute;
top: 0;
text-align: center;
width: 100%;
background-color: RGBA(0,0,0,0.6);
color: #ffffff;
padding: 0.5em 0;
font-size: 1.5vw;
font-family: 'Nova Mono', monospace;
}


/*------------------------------------
ログアウトページform
----------------------------------- */

.reloginarea{
width:100%;
padding:1.0rem;
}
.relogintitle{
font-size:1.1rem;
font-weight:bold;
margin:0 0 1.0rem;
}
.reloginform{
width:100%;
}
.reloginform-top{
width:100%;
display:inline-block;
vertical-align:middle;
}
.reloginform-bottom{
width:100%;
display:inline-block;
vertical-align:middle;
}
.reloginform-name{
display:inline-block;
vertical-align:middle;
margin:0 0 1.0rem;
}
.reloginform-inputarea{
width:24%;
display:inline-block;
vertical-align:middle;
margin:0 2% 1.0rem;
}
.reloginform-input{
width: 100%;
margin: 0 auto !important;
border-radius: 0 !important;
border: 1px solid #ccc !important;
background: #eeeeee;
}
.reloginform-submit {
margin: 0 auto !important;
border-radius: 0 !important;
border: 1px solid;
font-size: 1.0rem;
cursor: pointer;
padding: 10px 1.0rem;
}
.submitbtnarea input:disabled{
font-size: 1.0rem;
display: inline-block !important;
text-align: center;
padding: 1.0rem 4.0rem !important;
border: 1px solid #aaaaaa;
background:#dddddd;
margin: 2.0rem 0 2.0rem 0 !important;
transition: 0.2s;
position: relative;
}

/*------------------------------------
トップ掲載SNSエリア用
----------------------------------- */
.sns_feedarea{
	vertical-align:top !important;
	display:inline-block !important;
	margin: 0 0 0 2% !important;
	height:fit-content;
}

.sns_feedarea:first-child{
	margin: 0 2% 0 0 !important;
}

/*------------------------------------- */
/* Instagram feed design */
/*------------------------------------- */
.instagram_feedarea{
	width:100%;
	position:relative;
	height:600px;
	text-align:left;
}
.instagram_item{
	width:32%;
	display:inline-block;
	vertical-align:top;
	position:relative;
	overflow: hidden;
	margin-bottom:0.2rem;
}
.instagram-card_img{
	width:100%;
	position: relative;
	z-index: 0;
}

.instagram-card .playbadge{
	position:absolute;
	font-size: 2rem;
	color:RGBA(0,0,0,0.6);
	top:45%;
	left:50%;
	transform:translate(-50%,-45%);
}

.instagram-card_badge{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	text-align:left;
	overflow:hidden;
}
.instagram-icon{
	font-size:0.8rem;
	vertical-align: middle;
	color:#ffffff;
}
.instagram-card_badge i{
	margin-left:0.5rem;
	margin-right:unset;
}
.instagram_icontxt{
	font-size:0.8rem;
	display:inline-block;
	color:#ffffff;
}
.instagram-card_comment_icon{
	position:absolute;
	bottom:0;
	right:0;
	font-size:1.2rem;
	vertical-align: middle;
	color:#ffffff;
	margin-bottom:0.2rem;
	margin-right:0.2rem;
}

.instagram_captionarea {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
	-webkit-transition: .2s;
	transition: .2s;
	opacity: 0;
	padding:0.5rem;
}
.instagram_captionarea span {
	position: absolute;
	top: 200%;
	left:0;
	width: 100%;
	-webkit-transition: .2s;
	transition: .2s;
	font-size:0.8rem;
	line-height:1.0rem;
	text-align:left;
	max-height:95%;
	color:#ffffff;
	text-align:justify;
	text-justify:distribute;
}
.instagram_captionarea span {
  padding:0.5rem;
  overflow:hidden;
}
.instagram_item:hover .instagram_captionarea {
  opacity: 1;
}
.instagram_item:hover .instagram_captionarea span {
  top:0;
  left:0;
  opacity: 1;
}
.instagram_item:hover .instagram_captionarean span {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
}



.instagram-card{
	width:100%;
	position:relative;
	display:block;
}
.instagram-card::before{
	content:'';
	display:block;
	padding-top:100%;
}
.instagram-card_img {
	z-index: 0;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}


/*------------------------------------
同タグで他にもイベントがある場合用
----------------------------------- */
.othereventarea{
width: 100%;
padding: 1.0rem 2.0rem;
position: relative;
background:#f1f1f1;
margin:0 0 2.0rem;
border-top:1px solid #dddddd;
}
.otherevent-toptext{
font-size: 1.2rem;
margin-bottom: 1.0rem;
}
.otherevent-toptalent{
font-weight:bold;
letter-spacing: 0.1em;
border-bottom: 1px solid;
line-height: 1.0;
display: inline-block;
}
.otherevent-imgarea{
width: 20%;
position: relative;
display:inline-block;
}
.otherevent-imgarea::before {
content: '';
display: block;
padding-top: 66.666%;
}
.otherevent-cvimg{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
.otherevent-evtextarea{
width: 76%;
position: relative;
display:inline-block;
margin:0 0 0 1%;
vertical-align:top;
}
.otherevent-title{
font-size:1.4rem;
font-weight:bold;
margin-bottom:0.5rem;
border-bottom: 1px solid #ddd;
}
.otherevent-text{
width: 60%;
display: inline-block;
}
.otherevent-text pre{
color: inherit;
white-space: pre-wrap;
font-family: inherit;
margin: 0;
}

.otherevent-evlinkarea{
width: 36%;
position: relative;
display:inline-block;
vertical-align:top;
text-align:right;
margin:0 0 0 2%;
}
.otherevent-link{
display: inline-block;
text-align: center;
padding: 0.5rem 0.5rem;
border: 1px solid;
border-radius: 5px;
width:100%;
}
.otherevent-evlinkarea .otherevent-link:first-child{
margin:0 0 1.0rem;
}
.otherevent-link:hover{
opacity:0.7;
}

/*------------------------------------
アルバム検索機能
----------------------------------- */
.albumsearcharea {
	width: 100%;
	padding: 1.0rem 2.0rem;
	position: relative;
	margin: -1.0rem 0 1.0rem;
}
.searchtitle{
	display: inline-block !important;
	margin-right:0.5rem;
}
.searchword{
	margin-right:0.5rem;
	width:15rem;
}
.searchbtn {
	display: inline-block !important;
	vertical-align: middle;
	text-align: center;
	padding: 0.4rem 1.0rem !important;
	border: 1px solid;
	border-radius: 5px;
}

/*------------------------------------
ロゴ合成機能
----------------------------------- */
.logocheck{
width: 100%;
text-align: center;
display: block;
padding:0.5rem;
text-align:left;
color:#ffffff;
}
.logocheck.yoko{
width: initial;
display:inline-block;
padding:0;
position:absolute;
top:0rem;
right:3.0rem;
}

/* ラベルボタン */
.switchAreatitle{
display: inline-block;
vertical-align: middle;
font-size: 1.2rem;
}
 /* === ボタンを表示するエリア ============================== */
.switchArea {
line-height: 2.0rem;
letter-spacing: 0;
text-align: center;
font-size: 1.2rem;
position: relative;
margin: auto;
width: 6rem;
display: inline-block;
margin: 0 0 0 0.5rem;
vertical-align: middle;
}
 
 /* === チェックボックス ==================================== */
.switchArea input[type="checkbox"] {
display        : none;            /* チェックボックス非表示 */
}
 
 /* === チェックボックスのラベル（標準） ==================== */
.switchArea label {
display: block;
box-sizing: border-box;
height: 2.0rem;
border: 2px solid #999999;
border-radius: 2.5rem;
}
 
 /* === チェックボックスのラベル（ONのとき） ================ */
.switchArea input[type="checkbox"]:checked +label {
  border-color   : #ffffff;             /* 選択タブの枠線     */
}
 
 /* === 表示する文字（標準） ================================ */
.switchArea label span:after {
content: "OFF";
padding: 0 0 0 0.7rem;
color: #999999;
position: relative;
}
 
 /* === 表示する文字（ONのとき） ============================ */
.switchArea input[type="checkbox"]:checked + label span:after {
    content: "ON";
    padding: 0 0.7rem 0 0;
    color: #ffffff;
}
 
 /* === 丸部分のSTYLE（標準） =============================== */
.switchArea .swImg {
position: absolute;
width: 1.5rem;
height: 1.5rem;
background: #999999;
top: 0.25rem;
left: 0.3rem;
border-radius: 100%;
transition: .2s;
}
 
 /* === 丸部分のSTYLE（ONのとき） =========================== */
.switchArea input[type="checkbox"]:checked ~ .swImg {
transform: translateX(3.9rem);
background: #ffffff;
}

/* -------------------------
 ダウンロードコンテンツ
-------------------------- */
.dlbtn{
display:inline-block;
padding:0.8rem;
border-radius:0;
}


/* -------------------------
 ガチャコンテンツ関連
-------------------------- */
/* サイドバー 未開封ガチャ */
.contentslink-gacha {
display: block;
margin: 0 auto 0;
position: relative;
width: 90%;
padding: 1.0rem 0 1.0rem;
line-height: 1.4rem;
overflow: hidden;
position: relative;
font-size: 1.6rem;
font-weight: bold;
}
.contents-innertext-gacha {
display: block;
margin: 0 auto 1.0rem;
width: 90%;
padding: 0;
line-height: 1.4rem;
overflow: hidden;
position: relative;
font-size: 0.8rem;
}
.contents-gachainfo{
width:90%;
margin:1.0rem auto 0;
padding:1.0rem 0;
}
.contents-gachainfo-icon{
margin-right:0.5rem;
}

/* 購入履歴関連 */
.ordergachatext{
width: 90%;
margin: 0 auto;
text-align: center;
font-size: 0.8rem;
padding: 0.5rem;
font-weight: bold;
margin: 0.5rem auto;
border-left: 5px solid #cccccc;
color: #555555 !important;
text-align: left;
}




.gachacontentsarea {
width: 100%;
margin: 0 auto 3rem;
}
.gachainfobox{
width: 32%;
margin: 0 0 2% 2%;
background: #ffffff;
float: left;
display:block;
position:relative;
}

.contents-block .gachaeventarea .gachainfobox:nth-child(3n + 1) {
margin: 0 0 2%;
}


.gachainfo{
width:100%;
display:block;
box-shadow: 0 1px 3px rgba(0,0,0,0.18);
cursor:pointer;
}
.gachainfo:hover{
box-shadow: 0 3px 5px 2px rgba(0,0,0,0.20);
}

.gachainfobgarea{
width:100%;
position:relative;
}
.gachainfobgarea::before{
padding-top:66.666%;
display:block;
content:'';
}
.gachainfobg{
width:100%;
height:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
background-repeat:no-repeat;
background-size: cover;
background-position: center center;
}
.gachabg-effect{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background: linear-gradient(rgba(0, 0, 0, 0) 60%, rgba(0, 0, 0, 0.8) 80%, rgba(0, 0, 0, 1)), center center no-repeat;
background-size: cover;
}
.gachalock-area{
display: inline-block;
padding: 0.5rem 0.5rem 0.5rem 0.8rem;
position: absolute;
top: 5%;
right: 0;
border-radius: 5px 0 0 5px;
font-size: 0.7rem;
text-align: center;
}

.gachainfo-textarea{
width: 100%;
position: relative;
padding: 1.0rem 0.5rem;
min-height: 5.0rem;
}
.gachainfo-texttitle{
width: 100%;
position: absolute;
bottom: 0;
left: 0;
padding: 0.5rem 1.0rem;
color: #ffffff;
font-size: 1.2rem;
font-weight: bold;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.gachainfo-status {
float: left;
font-size: 0.7rem;
}
.gachainfo-date {
float: right;
font-size: 0.7rem;
}
.gachainfo-sublink{
margin: 1.0rem 0 0 auto;
text-align: right;
min-height: 2.3rem;
}
.gachainfobtn-link{
padding: 0.5rem;
border-radius: 0;
letter-spacing: 0.1em;
border: 1px solid #ccc;
display: inline-block;
font-size:0.8rem;
}

/* ガチャ詳細ページ */
.gachadetailarea{
width:100%;
margin:0 auto;
}
.gachadetail-title{
font-size: 1.8rem;
font-weight: bold;
margin: 0 0 10px;
border-left:5px solid;
padding: 0 0 0 1.0rem;
}
.gachadetail-topcont{
width:100%;
margin:0 auto 3.0rem;
}
.gachadetail-imgarea{
width:50%;
margin:0 auto;
position:relative;
float:left;
}
.gachadetail-imgarea::before{
display:block;
content:'';
padding-top:66.666%;
}
.gachadetail-bg{
width:100%;
height:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
background-repeat:no-repeat;
background-size:contain;
background-position:center center;
}
.gachadetail-textarea{
width:47%;
float:right;
margin:0 0 0 3%;
padding:0 0.5rem;

}
.gachadetail-text{
padding:0 0 1.0rem;
}
.gachadetail-text pre{
white-space: pre-wrap;
word-wrap: break-word;
}
.gachadetail-btn{
padding:0.5rem;
font-size:1.0rem;
border:1px solid;
display:inline-block;
border-radius:0;
}
ul.pricelist-gacha{
width:100%;
margin:0 auto 2.0rem;
padding:0;
list-style:none;
}
ul.pricelist-gacha li{
padding:0.8rem 1.0rem;
border-bottom:1px dashed #cccccc;
transition: all 0.2s linear;
}
ul.pricelist-gacha label:last-child li{
border-bottom:none;
}

.pricelist-left-gacha{
display:inline-block;
vertical-align:middle;
width:40%;
}
.price-size-gacha{
font-size:1.2rem;
font-weight:bold;
margin:0 0 10px;
}
.price-comment-gacha{
font-size:0.7rem;
}
.pricelist-center-gacha{
display:inline-block;
vertical-align:middle;
width:20%;
text-align:right;
line-height:1.0;
}
.price-num-gacha{
font-weight:bold;
font-size:1.1rem;
display:inline-block;
vertical-align:middle;
}
.price-tax-gacha{
font-size:0.6rem;
display:inline-block;
vertical-align:middle;
}
.pricelist-right-gacha{
display:inline-block;
vertical-align:middle;
width:30%;
margin-left:5%;
}
.price-cart-gacha{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
font-size:1.2rem;
display:block;
cursor:pointer;
}
.price-carttext-gacha{
width:100%;
text-align:center;
padding:0.6rem;
border-radius:0;
display:block;
cursor:pointer;
}

.gachadetail-cart{
display: inline-block;
text-align: center;
padding: 1.0rem 3.0rem;
border: 1px solid;
border-radius: 0;
margin: 0 auto 1.0rem;
font-size:1.2rem;
}
.gachadetail-cart:hover{
opacity:0.7;
}

.pricelist-gachatext{
padding:0.5rem 1.0rem;
margin:0 auto 1.0rem;
}
.cartaddtext{
font-size:1.4rem;
font-weight:bold;
text-align:center;
}
.cartaddtext-icon{
margin:0 0.5rem 0 0;
}



/* ガチャウィンドウ */
.windowtitle{
background:#555555;
font-size:1.4rem;
padding:1.0rem;
font-weight:bold;
color:#ffffff;
}
.windowtitle-icon{
margin:0 0.8rem 0 0 !important;
}
.w-closebtn {
padding: 1.0rem;
border-radius: 0;
letter-spacing: 0.1em;
border: 1px solid #ccc;
display: block;
float: right;
margin: 1.0rem 0;
font-size:1.0rem;
cursor:pointer;
}
.w-gachabtn {
padding: 1.0rem;
border-radius: 0;
letter-spacing: 0.1em;
border: 1px solid #ccc;
display: block;
float: right;
margin:0 1.0rem;
font-size:1.0rem;
cursor:pointer;
}


.gachalist-all-area{
padding:2.0rem;
width:100%;
max-width:1000px;
}
.gachalist-cont{
width:100%;
margin:0 auto 3.0rem;
}

.gachalist-cont .gachalist-all{
width:18%;
display:block;
float:left;
margin:0 0 2.5% 2.5%;
}
.gachalist-cont .gachalist-all:first-child,.gachalist-cont .gachalist-all:nth-child(5n+1){
margin:0 0 2.5% 0;
}
.gachalist-rate-area{
width:100%;
padding:2.0rem;
width:100%;
max-width:500px;
}
.ratelist{
width:100%;
}

table.ratelist{
	border:1px solid #ccc;
	border-collapse: collapse;
	margin:0 auto 2.0rem;
}
table.ratelist tr{
	border-bottom:1px solid #ccc;
}

table.ratelist tr:nth-child(odd){
	background:#eeeeee;
}


table.ratelist tr th{
	background:#dddddd;
}
table.ratelist tr th,table.ratelist tr td{
	border-right:1px dotted #cccccc;
	padding:1.0rem;
	text-align:center;
}
table.ratelist tr th:last-of-type,table.ratelist tr td:last-of-type{
		border-right:none;
}


/* rate表示タイトル */
.gachamodalarea {
width: 100%;
position: relative;
margin: 1.0rem auto;
padding: 0;
text-align:left;
}
.gachamodalarea.border {
border-bottom: 1px solid #cccccc;
}
.gachamodal-top {
width: 100%;
margin: 0;
padding: 0;
font-family: sans-serif;
}
.gachamodal-bottom {
padding: 0 1.0rem 0 0;
color: #cccccc;
font-family: sans-serif;
text-align: right;
position: absolute;
bottom: 0;
right: 0;
font-size:1.6rem;
}
.gachamodal-top0 .gachamodal-heading {
position: relative;
padding-left: 2.5rem;
position: relative;
padding: 0.5em 0.5em 0.5em 1.5em;
}
.gachamodal-top0 .gachamodal-heading:before {
font-family: "Font Awesome 5 Free";
content: "\f138";
position: absolute;
font-size: 1em;
left: 0.25em;
top: 0.7em;
font-weight: 900;
}
.gachamodal-heading .titlecolor01 {
font-size: 1.4rem;
font-weight: bold;
}
.gachalist-conttextarea{
font-size: 1.4rem;
padding: 1.0rem 1.5rem;
text-align:left;
margin:0 auto 3.0rem;
}
.gachalist-conttextarea span{
font-weight:bold;
font-size:1.8rem;
}


/* 開封画面 */
.containerbox{
width:100%;
max-width:1000px;
padding:2.0rem;
margin:0 auto;
}
.fliparea{
margin:2.0rem auto 0;
}

.quickflip-wrapper {
margin: 0 4.0% 4.0% 0;
width: 15.2%;
position: relative;
overflow: hidden;
color: #fff;
float:left;
}
.quickflip-wrapper:before{
content:'';
display:block;
padding-top:100%;
}
.containerbox .quickflip-wrapper:nth-child(5n){
margin: 0 0 4.0% 0;
}



div.flip01,div.flip02{
width: 100%;
height: 100%;
position: absolute;
top: 50% !important;
left: 50% !important;
transform: translate(-50%,-50%);
overflow: hidden;
background-size: contain;
background-position: center center;
background-repeat: no-repeat;
}


.clearfix{
clear:both;
content:'';
display:block;
}


div.flip01{
background: url('../usrimg/gacha-r3.png') no-repeat center center / contain;
}
div.flip01.gacha-r1{
background: url('../usrimg/gacha-r3.png') no-repeat center center / contain;
}
div.flip01.gacha-r2{
background: url('../usrimg/gacha-r3.png') no-repeat center center / contain;
}
div.flip01.gacha-r3{
background: url('../usrimg/gacha-r3.png') no-repeat center center / contain;
}
div.flip01.gacha-r4{
background: url('../usrimg/gacha-r4.png') no-repeat center center / contain;
}
div.flip01.gacha-r5{
background: url('../usrimg/gacha-r5.png') no-repeat center center / contain;
}
div.flip01.gacha-r6{
background: url('../usrimg/gacha-r6.png') no-repeat center center / contain;
}


div.flip02{
position:relative;
background-color:#f4f4f4;
}

div.flip01 a{
background:transparent;
}


.reflection {
    height      :100%;
    width       :30px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #fff;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 2s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 2s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 2s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 2s ease-in-out infinite;
}

@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

.infotextarea{
position:absolute;
top:3%;
left:3%;
background:rgba(255,255,255,0.8);
border-radius:5px;
line-height:1.0rem;
border:1px solid #dddddd;
}

.inforarename{
padding:0.3rem 0.5rem;
font-size:1.0rem;
color:#555555;
font-weight: bold;
line-height:1.0rem;

}
.inforarename.text-r1{
font-weight:bold;
}
.inforarename.text-r2{
font-weight:bold;
}
.inforarename.text-r3{
font-weight:bold;
}
.inforarename.text-r4{
font-weight:bold;
}
.inforarename.text-r5{
font-weight:bold;
}
.inforarename.text-r6{
font-weight:bold;
}


.infosizename{
color:#555555;
font-size:1.0rem;
font-weight:bold;
text-align:right;
position:absolute;
top:3%;
right:3%;
background:rgba(255,255,255,0.8);
border-radius:5px;
padding:0.3rem 0.5rem;
line-height:1.0rem;
border:1px solid #dddddd;
}
.luminous-one{
overflow:hidden;
}



.gachafullopen {
margin: 0 4.0% 4.0% 0;
width: 15.2%;
position: relative;
overflow: hidden;
color: #fff;
float:left;
display:block;
}
.gachafullopen:before{
content:'';
display:block;
padding-top:100%;
}
.containerbox .gachafullopen:nth-child(5n){
margin: 0 0 4.0% 0;
}

.gachafullopen-bg{
width: 100%;
height: 100%;
position: absolute;
top: 50% !important;
left: 50% !important;
transform: translate(-50%,-50%);
overflow: hidden;
background: #f4f4f4;
background-size: contain;
background-position: center center;
background-repeat: no-repeat;
}

/*--------------------------------
　サイドバーなしの場合
-------------------------------- */
.nonside-loginform{
font-size: 1.0rem;
text-align: left;
padding: 0 2.0rem 1.0rem;
line-height: 1.8rem;
}
.nonside-loginform-parts{
width:55%;
display:inline-block;
vertical-align:middle;
}
.nonside-loginform-parts.submitarea{
width:40%;
}
.nonside-loginform-parts-left{
width:30%;
display:inline-block;
vertical-align:middle;
margin:0 3% 1.0rem 0;
}
.nonside-loginform-parts-right{
width:65%;
display:inline-block;
vertical-align:middle;
margin:0 auto 1.0rem;
}

.nonside-logininput {
width: 100%;
margin: 0 auto !important;
border-radius: 0 !important;
border: 1px solid #ccc !important;
background: #eeeeee;
}
.nonside-loginsubmit {
width: 80%;
margin: 0 auto 1.0rem!important;
border-radius: 0 !important;
border: 1px solid !important;
font-size: 1.0rem;
cursor: pointer;
padding: 0.4rem 1.0rem !important;
}
.nonside-loginform-bottom{
margin:1.0rem 0 0;
}
.nonside-linkbtn {
border-radius: 0 !important;
border: 1px solid;
font-size: 0.8rem;
cursor: pointer;
padding: 0.6rem 1.0rem;
display: inline-block;
text-align: center;
}
.nonside-linkbtn:hover{
opacity:0.7;
}
.nonside-loginform-bottom .nonside-linkbtn:first-child{
margin:0 1.0rem 0 0;
}
/*----------------------------------
トリミング機能関連
----------------------------------- */
.trimtext{
	display:inline-block;
	padding:0.3rem 0.5rem;
	text-align:center;
	margin:0.5rem auto;
	font-weight:bold;
}



/**************tinybox*****************/

.modalpic {
    float: left;
    display: inline-block;
    background-color: #ccc;
    background-image: linear-gradient(-45deg, #aaa 25%, transparent 25%, transparent 50%, #aaa 50%, #aaa 75%, transparent 75%, transparent);
    background-size: 10px 10px;
	margin:0;
    width: 400px;
    height: 400px;
}

.modalpicinner {
    margin: 0 auto;
    background-position: center center;
    overflow: hidden;
    width: 400px;
    height: 400px;
}
.contain2 {
    display: inline-block;
    background-color: #ccc;
    background-position: center center;
    background-repeat: no-repeat;
    margin: 5px;
    width: 400px;
    height: 400px;
    border: 1px solid #ccc;
    background-size: contain;
}

.modalpic .contain2{
	margin: 0;
    border: none;
    background-position: center center;
    background-size: contain;
	width: 400px;
	position:relative;
}

/**************small?v?f*****************/
.small .az-modalpic {
    float: left;
    display: inline-block;
    background-color: #ddd;
    background-size: 10px 10px;
	margin:0;
    width: 540px;
    height: 540px;
}

.small .az-modalpicinner {
    margin: 0 auto;
    background-position: center center;
    overflow: hidden;
    width: 540px;
    height: 540px;
    line-height: 540px;
}

.small .az-modalpic .az-contain2{
    display: inline-block;
    background-color: #ddd;
    margin: 0;
    border: none;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 540px;
    height: 540px;
    position:relative;
}

.small .az-modalpic .az-contain3{
    display: inline-block;
    background-color: #ddd;
    margin: 0;
    border: none;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    position:relative;
    vertical-align: middle;
}
.small-photo-w{
    width: 540px;
    height: 360px;
}
.small-photo-h{
    width: 360px;
    height: 540px;
    left:90px;
}

.small-photo-bulk{
    width: 540px;
    height: 540px;
}
.small-photo-type3{
    width: 540px;
    height: 540px;
}

/**************large?v?f*****************/
.large .az-modalpic {
    float: left;
    display: inline-block;
    background-color: #ddd;
    background-size: 10px 10px;
	margin:0;
    width: 1800px;
    height: 1800px;
}

.large .az-modalpicinner {
    margin: 0 auto;
    background-position: center center;
    overflow: hidden;
    width: 1800px;
    height: 1800px;
    line-height: 1800px;
}

.large .az-modalpic .az-contain2{
    margin: 0;
    display: inline-block;
    background-repeat: no-repeat;
    width: 1800px;
    height: 1800px;
    border: 1px solid #ddd;
    border: none;
    background-position: center center;
    background-size: contain;
    position:relative;
}
.large .az-modalpic .az-contain3{
    margin: 0;
    display: inline-block;
    background-repeat: no-repeat;
    border: 1px solid #ddd;
    border: none;
    background-position: center center;
    background-size: contain;
    position:relative;
    vertical-align: middle;
    align: center;
}
.large-photo-w{
    width: 1800px;
    height:1200px;
}
.large-photo-h{
    width: 1200px;
    height: 1800px;
    left:200px;
}
.large-photo-bulk{
    width: 1800px;
    height: 1800px;
}
.large-photo-type3{
    width: 1800px;
    height: 1800px;
}

.filename,span.filename{
	display:inline-block;
	position:absolute;
	padding:10px;
	box-sizing:border-box;
	background-color:rgba(255,255,255,0.8);
	border-radius:10px;
	left:10px;
	bottom:10px;
}
.taglinkL{
    border-radius: 5px;
	padding:3px;
	margin:0px 5px 5px 5px;
	font-size:11px;
	position:absolute;
	bottom:0;
	left:0;
	letter-spacing:-0.5px;
	max-width:98%;
	box-sizing:border-box;
	word-break:break-all;
	background-color:rgba(255,255,255,0.8);
}
.taglinkR {
    border-radius: 5px;
    padding: 3px 5px;
    margin: 0px 5px 5px 5px;
    font-size: 11px;
    position: absolute;
    bottom: 0px;
    right: 0px;
    max-width: 55%;
    word-break: break-all;
    background-color: #fff;
    line-height: 14px;
}
.grouplink{
    border-radius: 5px;
	padding:0px 5px;
	margin:5px 5px 0px 0px;
	font-size:11px;
	background-color:#fff;
	max-width:80%;
}
/**************large?v?f???????*****************/
.printsize{
	width:540px;
	height:540px;
	position:absolute;
	z-index:+1;
}
.modalprice{
	
	margin:10px 0 20px 0;
	float:left;
	display:inline-block;
	height:250px;
	width:260px;
}

.modalbtnarea{
	
	display:block;
	float:left;
	width:280px;
}

.modalbtnarea li{
	
	text-align:center;
	
}

.modalbtnarea i{
	
	margin-right:5px;
	margin-left:5px;
	font-size:14px;	
	vertical-align:sub;
}



.modaldeletebtn{
	
	border-radius:10px;
}

.modalclosebtn{
	
	float:right !important;
	border-radius:10px;
	
}
/*----------------------------------
 タレント一覧追加css
---------------------------------- */
.groupname-title{
cursor:pointer;
margin:3.0rem auto 3.0rem 0;
}
.groupname-title:after{
content:'※クリックで表示します。';
position:absolute;
bottom:-2.0rem;
left:2%;
width:98%;
}
.groupname-titleinner:after {
content: '';
width: 0;
height: 0;
border: solid 0.5rem transparent;
border-left: solid 0.6rem #555555;
position: absolute;
right: 1%;
top: 50%;
transform: translate(0,-50%);
}

.groupname-title.active .groupname-titleinner:after {
content: '';
width: 0;
height: 0;
border: solid 0.5rem transparent;
border-top: solid 0.6rem #555555;
position: absolute;
right: 0%;
top: 50%;
transform: translate(0,-50%);
}
.groupname{
display:none;
}

/*　-----------------------------------
  物販機能追加用
------------------------------------- */
/* 一覧表示用 */
.productcontentsarea {
width: 100%;
margin: 0 auto 3rem;
}
.producteventarea {
width: 100%;
margin: 0 auto;
}

.productevent {
width: 32%;
margin: 0 0 2% 2%;
background: #ffffff;
position: relative;
float: left;
display: block;
position: relative;
box-shadow: 0 1px 3px rgb(0 0 0 / 18%);
}
.productevent:hover{
background:rgba(238,238,238,0.7);
box-shadow: 0 3px 5px 2px rgb(0 0 0 / 20%);
}

.producteventarea .productevent:nth-child(3n + 1) {
margin: 0 0 2%;
}
.productimgarea {
width: 100%;
position: relative;
}
.productimgarea::before {
content: '';
display: block;
padding-top: 100%;
}
.productimg {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
}
.product-evarea {
width: 100%;
padding: 0.5rem 0.5rem;
position: relative;
height: 4.5rem;
}
.product-ev-title{
width:100%;
font-size:1.0rem;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.product-ev-price{
display:inline-block;
vertical-align: middle;
}
.product-limittag{
	display: inline-block;
	background: #333333;
	color: #ffffff;
	border-radius: 0;
	padding: 0.25rem 0.5rem;
	text-align: center;
	font-size: 0.6rem;
	margin: 0.5rem 1% 0 0;
	border: 1px solid;
}
.product-ev-catearea {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: inherit;
text-align:right;
position:absolute;
bottom:0;
left:0;
font-size:1.0rem;
color:#ffffff;
text-align:right;
padding:0.5rem 1.0rem;
width:100%;
}
.product-count {
display: inline-block;
padding: 0.5rem;
position: absolute;
top: 5%;
right: 0;
border-radius: 5px 0 0 5px;
font-size: 0.7rem;
text-align: center;
}

.price-tag {
	display: inline-block;
	position: absolute;
	bottom: 0.5rem;
	right: 1rem;
	color: #ffffff;
}



/* 詳細表示 */
.productdetail-imgarea{
width:50%;
float:left;
}
.productdetail-formarea{
width:50%;
float:left;
padding-left:5%;
}
#item_slider{
width: 100%;
margin: 0 auto 0.5rem;
padding:0;
list-style:none;
}
.slide-item{
position:relative;
background:#eeeeee;
width:100%;
}
.slide-item::before{
padding-top:100%;
display:block;
content:'';
}
.itemmain-img{
width:auto;
height:auto;
max-width:100%;
max-height:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
}
.item-prev.slick-arrow {
position: absolute;
top: 50%;
left: -2rem;
transform: translate(0,-50%);
width: 2rem;
height: 3.0rem;
font-size: 3.0rem;
z-index: 10;
background: rgba(173,173,173,0.8);
line-height: 3.0rem;
text-align: center;
cursor: pointer;
color: #ffffff;
}
.item-next.slick-arrow {
position: absolute;
top: 50%;
right: -2rem;
transform: translate(0,-50%);
width: 2rem;
height: 3.0rem;
font-size: 3.0rem;
z-index: 10;
background: rgba(173,173,173,0.8);
line-height: 3.0rem;
text-align: center;
cursor: pointer;
color: #ffffff;
}
#thumbarea{
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
ul#thumbnail_slider{
display: flex;
margin: 1.0rem auto 2.0rem;
padding:0;
list-style:none;
}
.thumbnail-item{
position:relative;
background:#eeeeee;
width:16%;
display:flex;
margin:0 0 0 2%;
cursor:pointer;
}
ul#thumbnail_slider .thumbnail-item:first-child{
margin:0;
}
.thumbnail-item::before{
padding-top:100%;
display:block;
content:'';
}
.thumbnail-item:hover{
opacity:0.7;
}
.thumbnail-img{
width:auto;
height:auto;
max-width:100%;
max-height:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
}
.product-block{
width:100%;
margin:0 auto 2.5rem;
}
.product-pricearea{
font-size:1.4rem;
}
.product-text01area pre,.product-text02area pre{
margin:0.5rem auto 0.5rem;
text-align:justify;
font-family:inherit;
white-space: pre-wrap;
}
.product-text01area{
background: #fafafa;
padding: 1.0rem;
font-size: 0.9rem;
line-height: 1.6;
}
.product-text01area span.title{
font-size:1.4rem;
}
.product-text02area{
margin:2.0rem auto 0;
border-top:1px dotted #dddddd;
padding:1.5rem 0 0;
font-size: 1.0rem;
}
.product-table{
border-bottom:1px solid #cccccc;
width:100%;
margin:0;
}
.product-table-left{
background:#eeeeee;
width:30%;
text-align:center;
display:inline-block;
vertical-align:middle;
padding: 1.2rem 1.0rem;
font-weight:bold;
}
.product-table-right{
width:68%;
display:inline-block;
vertical-align:middle;
padding: 0 0 0 1.0rem;
}
.product-table-right select{
margin:0 !important;
}
.product-table-right input{
margin:0 !important;
width:6.0rem !important;
}

.addcarttext-ok-left{
	font-size: 1.2rem;
	font-weight: bold;
	display: inline-block;
	vertical-align: middle;
	color: #ff0000;
}
.addcarttext-ok-link{
	font-size: 1.2rem;
	display: inline-block;
	padding: 1.0rem 2.5rem;
	text-decoration: none;
	margin-left: 2.0rem;
}

/*----------------------
 ここから追加　後で整理すること
---------------------- */
.btnarea-02{
width:45%;
margin:0 2%;
display:inline-block !important;
vertical-align:middle;
max-width:250px;
line-height: 1.6 !important;
padding: 0.4rem 1.0rem !important;
}

/* カート内のボタン */
a.btn{
	padding:1.0rem;
	border-radius:0.5em;
	letter-spacing:0.1em;
	border:1px solid #ccc;
	display:block;
	margin:1.0em 0.5rem;
	border-radius:0;
}
a.btn:hover{
	cursor:pointer;
}

/* 基本ボタン 1個*/
.linkbtn01{
font-size: 1.0rem;
display: inline-block !important;
text-align: center;
padding: 1.0rem 3.0rem !important;
border: 1px solid #222222;
margin: 2rem 0 2rem 0 !important;
transition: 0.2s;
position: relative;
vertical-align: middle;
}

/* 基本ボタン 2個*/
.linkbtn02{
font-size: 1.0rem;
display: inline-block !important;
text-align: center;
padding: 1.0rem 1.0rem !important;
border: 1px solid #222222;
margin: 2rem 1.0rem 0 0 !important;
transition: 0.2s;
position: relative;
max-width: 240px;
width: 100%;
}

/* 基本ボタン 2個 float*/
.linkbtn02-float{
font-size: 1.0rem;
display: block !important;
text-align: center;
padding: 1.0rem 1.0rem !important;
border: 1px solid #222222;
margin: 2rem 0 0 4% !important;
transition: 0.2s;
position: relative;
width: 48%;
float:left;
}
.linkbtn02area .linkbtn02-float:first-child,input.linkbtn02-float{
margin: 2rem 0 0 !important;
}
input[type="submit"].linkbtn02-float{
	line-height:1.6;
	border: none;
}

/* テキスト横のボタン */
.linkbtn-text{
font-size: 1.0rem;
display: inline-block !important;
text-align: center;
padding: 0.5rem 2.0rem !important;
border: 1px solid #222222;
margin: 0 0 0 1.0rem !important;
transition: 0.2s;
position: relative;
vertical-align:bottom;
cursor:pointer;
}

/*--------------------------------------
  プロフィールページ
-------------------------------------- */
.profarea-left{
width:48%;
float:left;
margin:0 2% 0 0;
}
.profimg img{
width:100%;
}
.profarea-right{
width:50%;
float:left;
margin:0;
}

.proftable{
width:100%;
border:1px solid #e3e3e3;
table-layout: fixed;
border-collapse: collapse;
border-spacing: 0;
}
.proftable tr{
border-bottom:1px solid #e3e3e3;
}
.proftable tr:last-child{
border-bottom:none;
}
.proftable tr th,.proftable tr td{
padding:1.0rem;
}
.proftable tr th{
background:#fafafa;
width:9.0rem;
border-right:1px solid #e3e3e3;
font-size: 0.9rem;
}
.proftable tr td{
line-height:1.6;
text-align:justify;
font-size: 0.9rem;
}
.proftable-link{
display:block;
margin:0 auto 0.5rem;
}
.proftable-link:hover{
text-decoration:underline;
}

.proftable.type-works tr th{
width:13.0rem;
}
.works-detail{
line-height: 1.4;
text-align: justify;
font-size: 0.9rem;
margin: 0 auto 0.5rem;
}

/*--------------------------------------
  コメント機能
-------------------------------------- */
.comment_btn{
text-align:center;
display: inline-block;
border:1px solid #cccccc;
margin-top:2rem;
margin-bottom:2rem;
padding:0.5rem 2rem;
cursor:pointer;
}
.comment_btn:hover{
background-color:#eeeeee;
}

.comment_btn.after_login{
cursor:initial;
margin-bottom:0.5rem;
}
.comment_btn.after_login:hover{
background-color:inherit;
}

form#commentform{
display:none;
margin:0 auto 2.0rem;
}
form#commentform.active{
display:block;
}
.comment_text{
width:100%;
max-width:600px;
white-space:nowrap;
resize: vertical;
}


.comment_area{
padding-left:2rem;
}
.comment_date{

}

.comment_block{
padding-bottom:1rem;
margin-bottom:2rem;
border-bottom:1px solid #cccccc;
}

.comment_user{
margin-bottom:0.5rem;
}

.comment_txt{
font-size:0.8rem;
line-height:1.5rem;
}
/*--------------------------------------
  POST
-------------------------------------- */
.post_table{
	border-collapse: collapse;
	margin-top:2rem;
	margin-bottom:3rem;
	table-layout: fixed;
	width:100%;
}
.post_table td,.post_table th{
	border-collapse: collapse;
	border:1px dashed #cccccc;
	padding:1rem 0.5rem;
}
.post_table td a.posttitle{
	display: block;
	text-decoration: underline;
	word-break: break-all;
	white-space: normal;
	text-align: justify;
	padding: 0.5rem 0;
}
.post_table tr{
	border-collapse: collapse;
	border:1px solid #cccccc;
}
.post_table_head{
	text-align:center;
	background-color:#eeeeee;
	padding:1rem 0.5rem !important;
}
.post_table .tdmain{
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-all;
	white-space: nowrap;
	max-width: 0;
}
.post_table tbody{
width:100%;
display:table;
}

.post_answer_txt{
	width:60%;
	resize: vertical;
}
.post_answer_select{
	padding:0.5rem 1rem;
}
.answercheckbtn{
	display:inline-block !important;
	padding:0.4rem;
	text-align:center;
	margin-left:0.5rem;
	line-height: 1.2;
	vertical-align: middle;
}
.answercheckbtn i{
	margin:0 !important;
}
.w80calc{
width:calc(100% - 145px);
}


.enqradio{
	display:none;
}
.enqtext{
	border: #333333 solid 1px;
	display: inline-block;
	padding:0.75rem 1.0rem 0.75rem 2.5rem;
	margin:0 1.0rem 0.5rem 0;
	cursor: pointer;
	position:relative;
	transition: all 0.2s linear;
}
.enqradio:checked + .enqtext{
	background: #333333;
	color: #FFF;
}
.enqtext::before{
	position:absolute;
	top:50%;
	left:0.75rem;
	transform:translate(0,-50%);
	color:#333333;
	font-family: "Font Awesome 5 Free";
	content: "\f0c8";
	font-size:1.2rem;
}
.enqradio:checked + .enqtext::before{
	position:absolute;
	top:50%;
	left:0.75rem;
	transform:translate(0,-50%);
	font-weight:bold;
	color:#ffffff;
	font-family: "Font Awesome 5 Free";
	content: "\f14a";
	font-size:1.2rem;
}





/* ----------------------------
  動画メッセージ関連
----------------------------- */
.msg-textarea{
	border: 1px solid #ccc;
	border-radius: 0;
	padding: 0.4rem 1.0rem;
	font-size: 1.0rem;
	line-height: 1.5rem;
	font-family: "Meiryo",sans-serif;
	width:90%;
	text-align:left;
	height:10rem;
	overflow-y:auto;
	margin:0 auto;
}
.carttable-btn{
margin: 0.5rem auto 0.5rem;
display: inline-block;
padding: 1.0rem;
border: 1px solid #ccc;
border-radius: 0;
cursor: pointer;
}

/* ----------------------------
  vimeo
----------------------------- */
#vimeoplayer ,#vimeoplayer2{
	position: relative;
	height: 0;
	padding: 30px 0 56.25%;
	overflow: hidden;
}

#vimeoplayer iframe ,#vimeoplayer2 iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.viewtitlearea{
	position:relative;
	margin:2rem 0 2rem 0 ;
}
.viewtitle{
	margin: 0;
	font-size: 2.0rem;
	padding-left: 3.0rem;
	font-weight: normal;
	border-bottom: 1px solid #eeeeee;
	padding-bottom: 0.5rem;
	position:relative;
}

.viewtitle::before{
	content: "□";
	position: absolute;
	width: 1.4rem;
	height: 1.4rem;
	font-size: 1.5rem;
	left: 0;
	top: 0.2rem;
	color: #333333;
}

.viewtitle::after{
	content: "■";
	position: absolute;
	width: 1.8rem;
	height: 1.8rem;
	font-size: 1.8rem;
	left: 0.4rem;
	top: 0.5rem;
	color: #333333;
}
.view_subtitle{
	margin: 0;
	font-size: 1.6rem;
	font-weight: normal;
	border-bottom: 1px solid #eeeeee;
	padding: 0.5rem;
	position: relative;
}
.rewardtxt{
	padding: 1rem 0 0 1rem;
}
.rewardbtn{
	margin:1rem 0 !important;
}
.producebtn{
	margin-left:1rem !important;
	display:inline-block !important;
	padding: 0.5rem 1rem !important;
}
.produceinput{
	width:40%;
	display:inline-block;
	border-bottom: 1px solid #ccc !important;
	padding: 0.5rem 1rem !important;
	outline: none !important;
	background: none !important;
	-webkit-appearance: none !important;

}
.producest{
	display:inline-block;
	margin-left:1rem;
	font-size:0.9rem;
	border:1px solid #cccccc;
	border-radius:0.25rem;
	padding:0.5rem 1rem;
}
.produceformarea{
	margin-bottom:1.5rem;
}

.linkbtn01 {
    font-size: 1.0rem;
    display: inline-block !important;
    text-align: center;
    padding: 1.0rem 3.0rem !important;
    border: 1px solid #222222;
    transition: 0.2s;
    position: relative;
}
/* ----------------------------
  movieprice
----------------------------- */
.p-pricelistarea{
	width:100%;
	position:relative;
	margin-bottom: 2rem;
}
.p-pricelist{
	width:100%;
	font-size:0;
	border-bottom:1px dotted #cccccc;
	padding-bottom:1rem;
	margin-bottom:1rem;
}

.p-pricelistname{
	width:55%;
	display:inline-block;
	font-size:0.9rem;
	vertical-align:middle;
	padding-left:1rem;
}
.p-pricelistprice{
	width:20%;
	display:inline-block;
	vertical-align:middle;
	text-align:right;
	font-size:0.9rem;

}
.p-pricelistcart{
	text-align:right;
	width:24%;
	display:inline-block;
	font-size:0.9rem;
	vertical-align:middle;
}

.p-pricelistcartbtn{
	display:inline-block !important;
	font-size:0.9rem;
	vertical-align:middle;
	padding:0.5rem 0.5rem !important;
	width:90%;
}
.p-pricelisttext{
	font-size:0.9rem;
	padding-left: 1rem;
}

.movie_select_area{
	width:100%;
	position:relative;
	text-align:center;
}
/* ----------------------------
  movieselect
----------------------------- */
.movie_select_txt{
	padding:1rem 0rem 3rem 0rem;
	text-align:center;
}
.movie_select_block{
	display:inline-block;
	width:45%;
	margin:0 1.5% 0 0.5%;
	text-align:left;
	border: 1px solid #555555;
	background-color: rgba(255,255,255,0.8);
}
.movie_select_block:hover{
	box-shadow: 0px 0px 8px 1px rgba(0,0,0,0.4);
	background-color: rgba(0,0,0,0.8);
	border-color: rgba(0,0,0,0.8);
	transition: all 0.2s linear;
	cursor:pointer;
}
.movie_select_block a{
	display:block;
}

.movie_select_imgarea{
	width:30%;
	display:inline-block;
	vertical-align: top;
}
.movie_select_img{
	width : 100% ;
	padding-top : 100% ;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.movie_select_txtarea{
	width:68%;
	display:inline-block;
	vertical-align: top;
	padding: 0.5rem;
}
.movie_select_title{
	font-size: 1.4rem;
	margin-bottom: 0.5rem;
}

.movie_select_detail{
	font-size: 0.9rem;
}


/*-----------------------------------
 works-quill使用しない場合のレイアウト
------------------------------------*/

.worksarea-left {
	width: 48%;
	float: left;
	margin: 0 2% 0 0;
}
.worksimg img {
	width: 100%;
}
.worksarea-right {
	width: 100%;
	float: left;
	margin: 0;
}

.ql-editor .ql-video{
	width:100%;
}

/*-----------------------------------
 DM配信に関するチェックボックス
------------------------------------*/
fieldset {
	border: none;
	padding: 0;
	margin: 0;
}
.radio-inline__input {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
}

.radio-inline__label {
	display: inline-block;
	padding: 0.5rem 1.0rem 0.5rem 2.5rem;
	margin-right: 1rem;
	border-radius: 0.2rem;
	transition: all .2s;
	border: 1px solid #cccccc;
	position:relative;
	cursor:pointer;
}

.radio-inline__label:before{
	position: absolute;
	top: 50%;;
	left:0.75rem;
	line-height:1.0;
	font-family: "Font Awesome 5 Free";/*忘れずに*/
	content: "\f0c8";
	color:#555555;
	font-size:1.4rem;
	transform:translate(0,-50%);
}

.radio-inline__input:checked + .radio-inline__label {
	background: #990000;
	color: #fff;
	text-shadow: 0 0 1px rgba(0,0,0,.7);
}
.radio-inline__input:checked + .radio-inline__label:before{
	content: "\f14a";
	color:#ffffff;
}


/*-----------------------------------
 物販・Live・letter関連
------------------------------------*/
.p-pricelistarea{
	width:100%;
	position:relative;
	margin-bottom: 2rem;
}
.p-pricelist{
	width:100%;
	font-size:0;
	border-bottom:1px dotted #cccccc;
	padding-bottom:1rem;
	margin-bottom:1rem;
}
.p-pricelistname{
	width:55%;
	display:inline-block;
	font-size:0.9rem;
	vertical-align:middle;
	padding-left:1rem;
}
.p-pricelistprice{
	width:20%;
	display:inline-block;
	vertical-align:middle;
	text-align:right;
}
.p-pricelistcart{
	text-align:right;
	width:24%;
	display:inline-block;
	font-size:0.9rem;
	vertical-align:middle;
}
.p-pricelistcartbtn{
	display:inline-block !important;
	font-size:0.9rem;
	vertical-align:middle;
	padding:0.5rem 1rem !important;
	text-align:center;
}
.letterform{
	width:100%;
}
.orderitem{
	background-color: #eeeeee;
	padding: 1rem;
	text-align: center;
	margin-bottom:2rem;
}
.ordertype{
	margin-bottom:1rem;
}
.orderitemname{
	font-size:1.3rem;
	margin-bottom:1rem;
}
.ordertypedisp{
	display:inline-block;
	padding:0.5rem 1rem;
	margin:0 1rem 0 0;
	border-radius:0.5rem;
	background-color: #cccccc;
	font-size:0.8rem;
	vertical-align:middle;
}
.datetimeinput{
	display:inline-block;
	width:65%;
}
input[type="date"] ,input[type="time"]{
	border:1px solid #cccccc;
	border-radius:0.5rem;
	padding:0.5rem;
}
.orderdatetime{
	text-align:left;
	width:90%;
	margin: 0 auto;
}
.datetimeinputtitle{
	text-align:center;
	width:30%;
	margin:0 3% 0 0 ;
}
.orderdetail{
	max-height:500px;
}
/* ベースのラジオボタン */
.orderdetaillist input[type=radio] {
	display: none;
}
.orderdetaillist label {
	position: relative;
	padding: 15px 20px 15px 60px;
	display: block;
	letter-spacing: 0.1em;
	border-bottom: 1px dotted #cccccc;
}
.orderdetaillist input[type=radio]  + label::before,
.orderdetaillist input[type=radio]  + label::after {
	position: absolute;
	content: '';
	display: block;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
}
/* 下 */
.orderdetaillist input[type=radio]  + label::before {
	width: 2rem;
	height: 1rem;
	border-radius: 2rem;
	display: block;
	background: #aaa;
	box-shadow: inset 1px 1px 0 rgba(0, 0, 0, .3);
}
.orderdetaillist input[type=radio]  + label::after {
	height: 1rem;
	width: 1rem;
	background: #ccc;
	border-radius: 1rem;
	box-shadow: 1px 0 0 rgba(0, 0, 0, .1);
	transition: .1s;
}
.orderdetaillist input[type=radio]:checked + label::after {
	left: 2rem;
	box-shadow: -1px 0 0 rgba(0, 0, 0, .1);
	background: #333333;
}
.orderdetaillist input[type=radio]:checked + label {
	background: #ffffee;
}
.orderdetailtxt{
	font-size:0.8rem;
}
.orderdetailog{
	width:100%;
}
.orderdetaillist{
	height: 200px;
	overflow: hidden;
	overflow-y: scroll;
}
.orderdetailbtnarea{
	width:100%;
	margin:1rem 0 0 0;
}
.orderdetailbtn{
	background-color: #cccccc;
	padding:0.5rem 1rem;
	margin: 0 auto !important;
	vertical-align:middle;
	color: #000000;
}
/*--------------------------------------
  CHAT
-------------------------------------- */

.chatarea{
	width:100%;
	font-size:0;
	border:1px solid #e0e3e7;
	background-color:#ffffff;
}
.chatgrouparea{
	display:inline-block;
	width:30%;
	vertical-align:top;
	font-size:1.0rem;
}
.chattalkarea{
	display:inline-block;
	width:70%;
	vertical-align:top;
	font-size:1.0rem;
	border-left:1px solid #e0e3e7;
	padding:0 0rem 1rem 0rem;
	position:relative;
}
.chattalkproduct{
	padding:1rem 0 1rem 1rem;
	font-size:0;
	background-color:#eef2f5;
	position:relative;
	border-bottom:#e0e3e7;
}
.chatuser{
	width:100%;
	font-size:0;
	position:relative;
	padding:1rem 0rem 1rem 1rem ;
	cursor:pointer;
}
.chatuser:hover{
	background-color:#eef2f5;
}
.chattalentimg{
	width:15%;
	display:inline-block;
	border-radius:50%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	vertical-align: top;
}
.chatsub{
	color:#999999;
	over-floe:hidden;
}
.chatusername{
	width:85%;
	display:inline-block;
	padding-top:0.5rem;
	padding-left:1rem;
	font-size:1.0rem;
}
.chattalentimg:before{
	content: '';
	display: block;
	padding-top: 100%;
}
.chatarrow{
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%); 
}
.chatusername-disp{
	margin-right:1rem;
	font-weight:bold;
	display:inline-block;
	margin-bottom:0.5rem;
}
.chatlimit{
	display:inline-block;
	font-size:0.8rem;
	background-color:#cccccc;
	padding:0.25rem 0.5rem;
	border-radius:0.5rem;
}
.chattalkproductimg{
	display:inline-block;
	width:10%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.chattalkproductimg:before{
	content: '';
	display: block;
	padding-top: 100%;
}
.chattalkproductinfo{
	width:90%;
	display:inline-block;
	font-size:1.0rem;
	vertical-align:top;
	padding:0 0 0 1rem;
	position:relative;
}
.chattalkproductname{
	font-size:1.2rem;
	font-weight:bold;
	width:100%;
	over-flow:hidden;
	margin-bottom:0.5rem;
}
.chattalkproducttag{
	display:inline-block;
	margin-right:0.5rem;
	margin-bottom:0.5rem;
	padding:0.25rem 1rem;
	border-radius:0.5rem;
	background-color:#cccccc;
}
.chattalkproductlimitbtnarea{
	position: absolute;
	bottom: 1rem;
	right: 1rem;
	font-size:1.0rem;
}
.chattalkproductlimitbtn{
	display:inline-block;
	padding:0.25rem 1rem;
	border-radius:0.5rem;
	background-color:#555555;
	color:#ffffff;
	cursor: pointer;
}
.chattalkinput{
	border-top:double #e0e3e7;
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
}
.chattalkinputmenu{
	background-color:#f6f5f6;
	padding:0.25rem 0.5rem;
}
.chattalkinputmenu-icon{
	display:inline-block;
	font-size:0;
}
.chattalkinputmenu-icon a{
	font-size:1.3rem;
	display:block;
	padding:0.5rem 1rem;
	color:#999999;
}
.chattalkinputmenu-icon a:hover{
	background-color:#eef2f5;
}
.chattalkinputtxt{
	border-top:1px solid #e0e3e7;
}
.chattalkinputtxt{
	padding:1rem;
}
.chattalkinputtxtarea{
	width:100%;
	border-radius:0;
	border-color:#e0e3e7;
	resize: none;
	padding:0.5rem;
	margin:0;
	margin-bottom:0.5rem;
}
.talksendbtn{
	display:inline-block;
	background-color:#5685e4;
	color:#ffffff;
	padding:0.5rem 1.5rem;
	border-radius:0.25rem;
	cursor: pointer;
}
.talksendbtn i{
	margin-right:0.5rem;
}
.chattalkdisp{
	padding:2rem 1rem;
	padding-bottom:225px;
/*
	min-height:200px;
	max-height:500px;
	position:relative;
	overflow-y: scroll;
*/
}
.talklist{
	width:100%;
	margin-bottom:1.5rem;
}
.talklistchiled{
}
.talkbaloon{
	position:relative;
	display:inline-block;
	max-width:60%;
	padding:0.5rem 1rem;
	border-radius:0.5rem;
	text-align:left;
}
.baloonme{
	background-color:#c2f5a8;
	margin-right:0.5rem;
}
.baloonyou{
	background-color:#e4e8eb;
	margin-left:0.5rem;
}
.talkme{
	text-align:right;
}
.talkyou{
	text-align:left;
}
.baloonme::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(135deg);
  right: -10px;
  top: -10px;
  border-left: 1rem solid transparent;
  border-top: 1rem solid #c2f5a8;
  border-right: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
}
.baloonme::after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(135deg);
  right: -13px;
  top: -15px;
  border-left: 1rem solid transparent;
  border-top: 1rem solid #ffffff;
  border-right: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
}
.baloonyou::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(-135deg);
  left: -10px;
  top: -10px;
  border-left: 1rem solid transparent;
  border-top: 1rem solid #e4e8eb;
  border-right: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
}
.baloonyou::after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(-135deg);
  left: -13px;
  top: -15px;
  border-left: 1rem solid transparent;
  border-top: 1rem solid #ffffff;
  border-right: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
}
.talkinfo{
	display:inline-block;
	font-size: 0.8rem;
	vertical-align: bottom;
	color:#999999;
	padding:0 0.25rem;
}
.talkreadflg ,.talksendtime{
	font-size: 0.8rem;
	color:#999999;
}
.talkimg{
	display:inline-block;
	max-width: 50%;
}
.talkimg img{
	width: 100%;
	border-radius:0.5rem;
}
.chatreloadbtn{
	position:absolute;
	display:inline-block;
	top:0.5rem;
	right:1rem;
	font-size:1.0rem;
	padding:0.5rem;
	border-radius:0.5rem;
	background-color:#cccccc;
	cursor: pointer;
}
.chatreloadbtn i{
	margin-right:0.5rem;
}
.chatreviewbtn{
	display:inline-block;
	font-size:1.0rem;
	padding:0.5rem;
	border-radius:0.5rem;
	background-color:#cccccc;
	cursor: pointer;
	border:0;
}
.chatreviewbtn:hover{
	opacity:0.8;
}
.chatreviewbtn i{
	margin-right:0.5rem;
}
.talkdelbtn{
	display:inline-block;
	padding:0.5rem;
	border-radius:0.25rem;
	background-color:#eeeeee;
	cursor: pointer;
}


/*--------------------------------------
  テキストコンテンツ kiyaku tokuなど
-------------------------------------- */
ul.textlist{
	width:100%;
	padding:0;
	margin:0;
	list-style:none;
}
ul.textlist li{
	padding:0 0 0 1.0rem;
	position:relative;
	line-height: 1.8;
}
ul.textlist li::before{
	content:'・';
	font-size:inherit;
	top:0;
	left:0;
	position:absolute;
}

/*---------------------------
 IPTC
--------------------------- */
.im_info_title{
	text-align: left;
	padding: 0.25rem 0.5rem;
	height: 3.4rem;
	overflow: hidden;
	font-size: 0.9rem;
	background-color:RGBA(0,0,0,0.75);
	color:#ffffff;
	line-height: 1.3rem;
	display: flex;
	align-items: flex-end;
}
.im_info_point{
	position: absolute;
	top: 0.5rem;
	right: 0.5rem;
	color: #ffffff;
	background-color:RGBA(0,0,0,0.75);
	z-index: 1;
	font-size: 0.8rem;
	border-radius: 50rem;
	padding: 0.25rem 0.75rem;
}
.im_zoom_area{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin:0.5rem 0 0 0;
}
.im_tagname{
	width:15%;
	background-color:#eeeeee;
	color:#555555;
	font-size: 0.9rem;
	padding:0.25rem 0.5rem;
	border-radius:0.5rem;
	margin:0 1rem 0.5rem 0;
	text-align:center;
}

.im_value{
	color:#ffffff;
	width:80%;
	margin:0 0 0.5rem 0;
	text-align:left;
	font-size: 1.0rem;
}
.im_align-item_top{
	align-items:flex-start;
}
.im_tagname_tate{
	width:30%;
	margin:0 0.5rem 0.5rem 0;
}

.im_align_selftop{
	place-self: flex-start;
}

.im_value_tate{
	width:65%;
}

/* サムネblur */
.img_blur{
	filter: blur(5px);
}
