.mobile{
	display: none !important;
}

div.headerWrapper{
    width:100%;
    min-width:var(--min-width);
    position:fixed;
    top:0;
    right:0;
    height:80px;
    /*border-bottom:1px solid var(--purple-color);*/
    background:#fff;
    z-index: 1;
}
div.headerWrapper.shadow{
    box-shadow: 0 3px 9px rgba(0,0,0,0.35);
}
#header {
    width:100%;
    max-width:var(--max-width);
    display:flex;
    justify-content: space-between;
    margin:auto;

}
#header h1{
    width:250px;
}
#header h1 a{
    color:var(--purple-color);
    font-size:32px;
    line-height:80px;
    margin-left:50px;
}
ul#nav{
    width:700px;
    display:flex;
    justify-content: space-around;
    margin-right: 100px;
}
ul#nav li{
    line-height: 80px;
    position: relative;
}
ul#nav span.small{
    font-size:14px;
}
ul#nav li.active a,
ul#nav li a:hover{
    line-height: 80px;
    color:var(--purple-color);
}
ul#nav li::after{
    content: "";
    width:0%;
    height: 2px;
    background:var(--purple-color);
    position: absolute;
    left:0;
    right:0;
    bottom:25px;
    margin:auto;
    transition: all 0.2s;
}
ul#nav li.active:after,
ul#nav li:hover::after{
    content: "";
    width:100%;
    height: 2px;
    background:var(--purple-color);
    position: absolute;
    left:0;
    right:0;
    bottom:25px;
    margin:auto;
    transition: all 0.2s;
}
div.contents{
    width:calc(100% - 40px);
    max-width:var(--max-width);
    min-width:var(--min-width);
    margin:auto auto 30px;
	overflow: hidden;
}
div.contents.blog{
	max-width: var(--min-width);
	margin-top:30px;
}
h2.main{
    background:var(--purple-color);
    background-image: linear-gradient(90deg, rgb(158,45,246),rgb(54,86,191),rgb(255,107,187));
    height: 80px;
    margin:80px auto 0;
}
footer{
    overflow: hidden;
    width:100%;
    min-width: var(--min-width);
    background:#333;
}
footer h2{
    text-align: center;
    color:#fff;
    font-size:24px;
    margin:20px auto;
}
ul.footer{
    width:100%;
    max-width:var(--min-width);
    display: flex;
    justify-content: space-around;
    margin:20px auto;
    font-size:14px;
}
ul.footer a{
    color:#fff;
}
p.copy{
    text-align: center;
    color:#fff;
    font-size:14px;
    margin:20px auto;
}
h2 span{
    display: block;
    line-height: 80px;
    font-size:32px;
    color:#fff;
    width:calc(100% - 40px);
    text-indent: 20px;
    max-width: calc(var(--max-width) - 40px);
    margin:auto;
}

ul.genre {
    width:calc(100% - 40px);
    max-width:var(--max-width);
    margin:25px auto;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
	color:#fff;
}
ul.genre li{
    padding:3px 10px;
    margin-right: 15px;
    background:#ccc;
    margin-bottom:10px;
    border-radius: 4px;
}
ul.genre li.active{
    background:var(--purple-color);
}
ul.genre li a{
    color:#fff;
}
ul.genre li:hover{
    background-color:var(--purple-color);
}

div.entryWrapper {
    width:calc(100% - 40px);
    min-width:var(--min-width);
    max-width: var(--max-width);
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
div.entryWrapper a {
    display: block;
    /*flex-basis: calc(33% - 20px);*/
	width:calc(33% - 20px);
    box-shadow: 3px 3px 9px rgba(0,0,0,0.35);
	box-sizing: border-box;
	margin:10px;
    padding:10px;
}
div.entry{
    box-sizing: border-box;
    /*border:1px solid var(--purple-color);*/
    margin:0;
    display: block;
    float: left;
    
}
div.entry img{
    width:100%;
    height:auto;
    transform: scale(1);
    transition: transform 0.2s;
}
div.imgWrapper{
    overflow: hidden;
}
div.entry img:hover{
    width:100%;
    height:auto;
    transform: scale(1.05);
    transition: transform 0.2s;
}
div.entry h3{
    margin:10px 0;
    font-weight: bold;
    color:var(--purple-color);

    padding:5px 0;
}
div.entry h4{
    margin:10px;
    font-weight: bold;
}
div.entry h5{
    font-size:16px;
    font-weight:bold;
}
div.entry p{
    font-size:14px;
}
    
p.status {
    display: inline-block;
    padding:2px 10px;
    background:var(--pink-color);
    color:#fff;
    border-radius: 4px;
    margin-bottom: 10px;
}
p.status.off{
    background:var(--purple-color);
}
div.page {
	width: calc(100% - 10px);
	padding: 5px;
	text-align: center;
	margin: 10px auto 20px;
	display: flex;
	overflow: hidden;
	-webkit-justify-content: center; /* Safari */
	justify-content: center;
    font-family: proxima-nova,proxima nova,open sans,Arial,Helvetica,sans-serif;
}
div.page span.current_page {
	background: var(--purple-color);
	padding: 1px;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
    color:#fff;
}
div.page a,
a.link_next,
a.link_before{
	display: block;
	background: #CCC;
	padding: 1px;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
    color:#fff;
}
a.link_next {
    padding-left:10px !important;
    padding-right: 10px !important;
    margin-left:4px;
}
a.link_before {
    padding-left:10px !important;
    padding-right: 10px !important;
    margin-right:4px;
}
div.page span:last-child{
}
div.page a:hover {
	background: var(--purple-color);
	color: #fff;
}
p#totop{
	width:50px;
	height: 50px;
	background:url("../images/totop.png") no-repeat center bottom;
	background-size:50px;
	position: fixed;
	bottom:100px;
	right: 70px;
	display: none;
	text-indent:100%;
	white-space: nowrap;
	overflow: hidden;
    z-index: 100;
}
p#totop a{
	display: block;
	width:100%;
	height: 100%;
}
p#totop:hover{
	background:url("../images/totop.png") no-repeat center top;
	background-size:50px;

}
ul.info {
    width:700px;
    margin:50px auto;
}
ul.info li{
    display: flex;
    justify-content: flex-start;
    padding-bottom: 5px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 5px;
}
ul.info span.date{
    font-size:14px;
    width:140px;
}

p.pankuzu {
    margin-top:20px;
    margin-bottom:20px;
}
p.pankuzu a{
    color:var(--purple-color);

}
p.pankuzu span.arrow{
    display: inline-block;
    background:url("../images/arrow_menu.svg") no-repeat;
    width:10px;
    height: 17px;
    background-size:10px;
    margin:0 20px;
}
div.slides {
	width:480px;
	margin: auto;
	position: relative;
	height: 270px;
    margin-bottom:50px;
}
div.slides img{
	width:480px;
	height: 270px;
	object-fit: cover !important;
}
button.slick-prev {
	background: url("../images/arrow_menu2.svg") no-repeat;
	background-size: 20px;
	left: -50px;
}
button.slick-next {
	background: url("../images/arrow_menu.svg") no-repeat;
	background-size: 20px;
	right: -50px;
}
button.slick-next:hover {
	background-image: url(../images/arrow_menu.svg) !important;
}
button.slick-arrow {
	text-indent: -9999px;
	position: absolute;
	width: 20px;
	height: 34px;
	top: 125px;
	z-index: 1;
	border: none;
	cursor: pointer;
}
ul.slick-dots {
	width: 100%;
	height: 20px;
	text-align: center;
	overflow: hidden;
	position: absolute;
	bottom: 1px;
}
div.presenWrapper ul.slick-dots{
    bottom:-20px;
}
ul.slick-dots li {
	text-indent: -9999px;
	display: inline-block;
	width: 10px;
	height: 10px;
	background-color: #00cddc;
	border-radius: 10px;
	margin: 5px;
}
li.slick-active {
	background-color: #b2f0f4 !important;
}
h3.eventTitle {
    margin:50px auto;
    width:var(--min-width);
    font-size:32px;
    color:var(--purple-color);
    border-bottom:3px solid var(--purple-color);
}
div.entryBody{
    width:var(--min-width);
    margin:50px auto;
}
div.entryBody p{
    margin-bottom:1em;
}
div.entryBody h4{
    font-weight: bold;
    margin-bottom: 1em;
    font-size:20px;
}
a.buy{
    display: block;
    width:360px;
    height: 50px;
    border-radius: 4px;
    background:var(--purple-color);
    line-height: 50px;
    text-align: center;
    color:#fff;
    margin:20px auto;
}
a.buy:hover{
    background:var(--pink-color);
}
#wpmem_reg {
    margin-top:50px;
}
fieldset legend{
    font-size:20px;
	color:var(--purple-color);
	font-weight: bold;
	border-bottom:2px solid var(--purple-color);
}
fieldset{
    display: block;
    padding:25px 50px;
    width:720px;
    margin:auto;
    border:none;
}
form#wpmem_register_form{
    padding:30px;
}
input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
input[type="password"]{
    border:1px solid #ccc;
    width:calc(100% - 30px);
    margin-left:30px;
    line-height: 2em;
    border-radius: 4px;
    box-sizing: border-box;
    padding:5px 10px;
    margin-bottom:20px;
}
select{
    border:1px solid #ccc;
    width:calc(100% - 30px);
    margin-left:30px;
    line-height: 2em;
    border-radius: 4px;
    box-sizing: border-box;
    padding:5px 10px;
    margin-bottom:20px;
}
input[type="submit"],

span.link-text-forgot a{
    width:300px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background:var(--purple-color);
    margin:25px auto;
    border-radius: 4px;
    cursor: pointer;
    color:#fff;
	display: block;
}
input[type="submit"]:hover{
	background:var(--pink-color);
}
.req {
	color:red;
}

p.register_status {
	margin:50px auto;
	text-align: center;
	font-size:20px;
}
div.profile ul{
	text-align: center;
}
div.profile a{
	display: block;
	width:360px;
	height: 50px;
	margin:10px auto;
	line-height: 50px;
	background:var(--purple-color);
	color:#fff;
	border-radius: 4px;
	text-align: center;
}
div.profile a:hover{
	background:var(--pink-color);
}
input[type=checkbox]{
	width:16px;
	height: 16px;
	border:2px solid var(--purple-color);
	cursor: pointer;
}
input[type=checkbox]:checked{
	background:var(--purple-color);
}
div.general{
	width:var(--min-width);
	margin:25px auto;
}
div.general h3{
	font-weight: bold;
	font-size:24px;
	margin:20px 0;;
	border-bottom:2px solid #000;
}
div.general > ol,
div.general > ul,
div.general p{
	margin-left:40px;
	margin-bottom: 10px;
	text-align: justify;
}
div.general > ul li > ol,
div.general > ol li > ol,
div.general > ol li > ul{
	margin:10px 0;
	margin-left:60px;
}
div.general > ol li > ul li{
	list-style: disc;
}
div.general ol ul ol li{
	list-style: decimal;
}
div.general strong{
	font-weight: bold;
}
dl.company {
	overflow: hidden;
	border-bottom: 1px solid #ccc;
}
dl.company dt,
dl.company dd{
	padding:10px;
	box-sizing: border-box;
	border-top:1px solid #ccc;
}
dl.company dt{
	width:30%;
	float: left;
	clear: both;
}
dl.company dd{
	width:70%;
	float: right;
}
div.general a{
	color:var(--purple-color);
}
table.dealings {
	width:100%;
}
table.dealings td{
	padding:5px 10px;
	border-bottom:1px solid #ccc;
}
table.dealings thead{
	font-weight: bold;
	border-bottom:1px solid #ccc;
}
table.dealings thead td{
	font-weight: bold;
	text-align: center;
}
table.dealings thead td:nth-child(1),
table.dealings thead td:nth-child(3){
	width:20%;
}
table.dealings tr td:nth-child(3){
	text-align: right;
}

p.notice {
	padding-left:1em;
	text-indent: -1em;
	font-size: 16px;
}
p.notice::before{
	content: "※";
}

dl.inquiry {
	width:640px;
	margin:25px auto;
}
dl.inquiry dt.must::after{
	content: "必須";
	font-size: 12px;
	padding:2px 10px;
	color:#fff;
	background:var(--pink-color);
	margin-bottom: 5px;
	display: inline-block;
	margin-left:20px;
	border-radius: 4px;
}

div.submit {
	width: 100%;
	display: flex;
	justify-content: space-around;
	margin:25px auto;
}
dl.faq{
    margin:20px 100px;
}
dl.faq dt{
    cursor: pointer;
}
dl.faq dt:hover{
    color:#00cddc;
}
dl.faq dt:before{
	content:"Q ";
	font-family: "policy";
	color:pink;
	font-size:30px;
}
dl.faq dd{
    margin-left:50px;
    margin-bottom:20px;
    display: none;
}
dl.faq dd:before{
	content:"A ";
	font-family: "policy";
	color:skyblue;
	font-size:30px;
}
dl.faq dd img{
    max-width:100%;
    margin:10px;
}
dl.faq dd a{
    text-decoration: underline;
}
dl.faq p{
    display: inline-block;
}
dl.faq ul,
dl.faq ol{
	margin:10px 0 20px 40px;
}
dl.faq ul li{
	list-style: disc;
}
dl.faq strong{
	font-weight: bold;
}
div.guide {
	width:100%;
	min-width:var(--min-width);
	padding:100px 0;
}
div.guide.c1{
	background:#f8f8f8;
}
div.guide.c2{
	background:#fff;
}
h3.guide{
	text-align: center;
	font-size:22px;
	padding-top:65px;
	background-repeat: no-repeat;
	background-position: center top;
	background-size:50px;
	color:var(--purple-color);
}
h3.guide.n1{
	background-image:url("../images/n01.svg");
}
h3.guide.n2{
	background-image:url("../images/n02.svg");
}
h3.guide.n3{
	background-image:url("../images/n03.svg");
}
h3.guide.n4{
	background-image:url("../images/n04.svg");
}
h3.guide.n5{
	background-image:url("../images/n05.svg");
}
h3.guide.n6{
	background-image:url("../images/n06.svg");
}
h3.guide.n7{
	background-image:url("../images/n07.svg");
}
h3.guide.n8{
	background-image:url("../images/n08.svg");
}
h3.guide.n9{
	background-image:url("../images/n09.svg");
}
h3.guide.n10{
	background-image:url("../images/n010.svg");
}



h4.general {
	font-size:20px;
	text-align: center;
}
ol.lottery{
	width:640px;
	margin:50px auto !important;
	display: flex;
	justify-content: space-between;
}
ol.lottery li{
	list-style: none;
	width:180px;
	height: 180px;
	border-radius: 180px;
	background:var(--pink-color);
	display: flex;
	justify-content: space-around;
	align-items: center;
	text-align: center !important;
	font-weight: bold;
	color:#fff;
	position: relative;
}
ol.lottery li:nth-child(1)::after,
ol.lottery li:nth-child(2)::after{
	content: "";
	background:url("../images/flow_arrow.svg") no-repeat;
	width:33px;
	height: 22px;
	position: absolute;
	top:0;
	bottom:0;
	right:-42px;
	margin:auto;
}
h5.general{
	border:2px solid var(--purple-color);
	line-height: 2.5em;
	border-radius: 2em;
	text-align: center;
	color:var(--purple-color);
	margin:30px 10px 20px;
}
div.lottery{
	overflow: hidden;
	margin:auto 100px;
}
div.lottery div.left{
}
div.lottery div.right{
	text-align: center;
}
div.lottery div.right img.w25{
	width:25%;
	margin-bottom:20px;
}
div.lottery div.right img.w50{
	width:50%;
	margin-bottom:20px;
}
div.lottery div.right img.w100{
	width:100%;
	margin-bottom:20px;
}


a.login{
	display: block;
	width:240px;
	height: 45px;
	line-height: 45px;
	background:var(--pink-color);
	text-align: center;
	border-radius: 45px;
	color:#fff !important;
	margin:30px auto;
}
a.login:hover{
	background:var(--purple-color);
}

ul.rule {
	width:calc(100% - 50px);
	margin:50px auto;
	display: flex;
	justify-content: space-between;
}
ul.rule li a{
	display: block;
	line-height: 2em;
	width:240px;
	height: 2em;
	text-align: center;
	background:var(--purple-color);
	border-radius: 30px;
	color:#fff;
}
ul.rule li a:hover{
	background:var(--pink-color);
}

p.login_status {
	text-align: center;
}
p.login_status a{
	display: inline-block;
	background:var(--purple-color);
	color:#fff;
	padding:5px 30px;
	border-radius: 30px;
	margin-top:50px;
}
p.login_status a:hover{
	background:var(--pink-color);
}

div.wpmem_msg {
	text-align: center;
	margin:50px auto;
	padding:20px;
	border:2px solid red;
	color:red;
	border-radius: 8px;
}

div#wpmem_login {
	margin:50px auto;

	
}

div.profile a{
	
}

div.link-text{
	margin-bottom:10px;
}
div.link-text a {
	color:var(--purple-color);
	border-bottom:1px solid var(--purple-color);

}
span.link-text-username a,
span.link-text-forgot a{
	color:#fff;
}
a#pwdreset,
a#getusername,
a#login,
a#register,
a#pwdchange{
	display: none;
}
div.blog_side {
	width:200px;
	float: left;
	margin-top:50px;
}
div.blog_side h3{
	font-weight: bold;
	border-bottom:2px solid var(--purple-color);
	margin-bottom:10px;
	color:var(--purple-color);
}
div.blog_side ul{
	margin:10px 10px 30px;
}
div.blog_side ul li{
	list-style: disc;
	margin-left:10px;
}

div.main {
	width:calc(100% - 240px);
	float: right;
}

div.squareWrapper {
	width:100%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap:20px;
}

