@charset "utf-8";

body,h1,h2,h3,h4,h5,h6,ul,p,form,input,ul,ol,li,dl,dd,dt,section,header,nav,article,aside,hgroup,header,footer,figure,figcaption,summary {
	margin: 0;
	padding: 0;
}
html {
	overflow-y: scroll;
}
body {
	color: #222;
	line-height: 1.35;
	font-family: 'Noto Sans Japanese', sans-serif;
}
img {
	border: none;
	vertical-align: top;
	width: 100%;
}
li{
	list-style: none;
}
.clearfix:after{
	content: "";
	clear: both;
	display: block;
}
.mb3{
	margin-bottom: 3em
}
.pd1{
	padding: 0 1em;
}
#wrapper,
#wrapper02,
#header .inner,
footer div.inner {
	width: 768px;
	margin: 0 auto;
	background: #fff;
	overflow: hidden;
}
#header .inner {
	display: table;
}
#header {
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
	z-index: 100;
}
#header div.logo {
	display: table-cell;
	padding: .5em 3em .5em 1em;
	vertical-align: middle;
	width: 65%;
}
#header div.logo img,
#header div.header_btn img {
	width: 100%;
	height: auto;	
}
#header div.header_btn {
	display: table-cell;
	padding: .5em 1em;
	width: 35%;
	vertical-align: middle;
}
#header img {
	width: 100%;
	height: auto;	
}
br.xsp {
	display: none;	
}

@media (max-width: 770px) {
#wrapper,
#wrapper02,
#header div.inner,
footer div.inner {
	width: auto;	
}
br.sp {
	display: block;	
	}
}
@media (max-width: 770px){
	#wrapper{
	margin-top: 50px;
	}
}
@media (min-width: 771px){
	#wrapper{
		margin-top: 100px;
	}
}
@media (max-width: 770px){
	#wrapper02{
	margin-top: 80px;
	}
}
@media (min-width: 771px){
	#wrapper02{
		margin-top: 150px;
	}
}
@media (min-width: 768px) {
	#entry01 {
    margin-top:-120px;
    padding-top:120px;
    }
}
@media (max-width: 767px) {
	#entry01 {
    margin-top:-80px;
    padding-top:80px;
    }
}

/* btn area
-------------------------------------- */
.btn_area{
	margin: 2em 3em 3em;
}
.send_btn{
	margin: 0 0 .5em;
}
.send_caution{
	font-size: .7em;
}

/* movie section
-------------------------------------- */
h2{
	border-left:#DC147C 5px solid;
	color: #DC147C;
	font-size: 1.3em;
	font-weight: bold;
	letter-spacing: .2em;
	margin: 0 0 .5em .5em;
	padding: 0 0 0 .5em;
}
.bnr_area{
	margin: 0 .5em 2em;
}
.movie_thum{
	margin: 0 0 2em;
}

/* point section
-------------------------------------- */
.point_section{
	background-color: #DC147C;
	padding: 2em 1em .1em;
}
.point_box{
	background-color: #fff;
	margin: 2em 1em;
	padding: 1em;
}
.point_index{
	margin: 2em;
}
.point_box ul{
	font-size: .8em;
	padding-left: 1em;
}
.point_box li::before{
	content: "※";
}
.point_box li{
	margin-bottom: .5em;
	text-indent: -1em;
}

.comic_section{
	padding: 2em 1em 0;
	text-align: center;
}
.comic_title{
	padding: 0 1em;
}
.comic_device{
	margin: 2em auto;
	width: 80%;
}
.comic_catch01{
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: 3em;
}
.comic_catch02{
	font-size: 1.1em;
	font-weight: bold;
	margin-bottom: 1em;
}
.comic_logo{
	margin: 2em auto;
	width: 80%;
}
.comic_caution{
	font-size: .7em;
	margin: 1em 0;
}

/*メンテナンス*/
.maintenance{
	border: #666 1px solid;
	border-radius: 5px;
	font-size: .9em;
	margin: 1.5em .3em 1em;
	padding: .5em;
}
.maintenance a{
	color: #333;
	text-decoration: none;
}

/*ポイントキャンペーン*/
.point_cp{
	margin-bottom: 2em;
}
.point_cp_p{
	color: #fff;
	font-size: 1.2em;
	margin-top: 2em;
	text-align: center;
}
.camp_detail{
	border: #DC147C 1px solid;
	border-radius: 5px;
	margin: 0 .8em 2em;
}
.camp_detail_title{
	background-color: #DC147C;
	color: #fff;
	font-weight: bold;
	padding: .5em;
	text-align: center;
}
.camp_detail .inner{
	padding: 1em 1em 0;
}
.camp_detail dl{
	margin-bottom: 1em;
}
.camp_detail dt{
	font-size: .9em;
}
.camp_detail dd{
	font-size: .8em;
}


/* modal
-------------------------------------- */
.lock {
	overflow:hidden;
}
.modal-btn{
	cursor: pointer;
	padding: 0;
	text-align: center;
}
.modal-content {
	overflow:auto;
	position:relative;
	display:none;
	margin:30px;
	border:2px solid #aaa;
	background:#fff;
}
.modal-overlay {
	z-index:200;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,0.75);
}
.modal-wrap {
	z-index:300;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:auto;
}
.modal_index{
	background-color: #e0e0e0;
	color: #e05837;
	font-size: 1.3em;
	font-weight: bold;
	padding: .5em 0;
	text-align: center;
}
.modal_lead{
	margin-bottom: 2em;
	text-align: left;
}
.modal-open:hover {
	cursor:pointer;
}
.modal-close-a {
	color: #2151a2;
    cursor: pointer;
	text-align: center;
    text-decoration: underline;
}
.modal-close-a:hover {
	cursor:pointer;
	color:#2151a2;
}
.modal-close{
	font-size: 1.2em;
	margin-bottom: 2em;
	text-align: center;
}
.modal_pd label{
	color: #e05837;
	display: inline-block;
    max-width: 100%;
    margin: 0 0 5px 5px;
    font-weight: 700;
	vertical-align: middle;
}
.modal_pd .checkbox{
	text-align: center;
	padding: .5em 0;
}
.modal_pd .form_caution{
	padding: .5em 0 0;
	text-align: left;
}
.modal_pd li{
	background-color: #f2f2f2;
	border: #e0e0e0 1px solid;
	border-radius: 10px;
	list-style: none;
	margin: 0 0 1em;
	padding: .5em 1em 0;
}

/*pc*/
@media (min-width: 768px) {
	.modal_pd {
	padding: 2em;
	}
	.modal-content{
	width:50%;
	max-height:90%;
	}
}
/*sp*/
@media (max-width: 767px) {
	.modal_pd {
	padding: 1em;
	}
	.modal-content{
	margin: auto;
	max-height:85%;
	max-width: 100%;
	}
}

/* footer
-------------------------------------- */
.footer_bottom{
}
.credit{
	background-color: #eee;
	font-size: .7em;
	padding: 2em 1em;
}
.footer_logo{
	margin: 2em auto;
	width: 80%;
}
.copyright{
	font-size: .8em;
	margin-bottom: 3em;
	text-align: center;
}

#page-top {
	padding-top: 50px;
    margin-top: -50px;
}
#to-top {
  bottom: 1em;
  position: fixed;
  right: 1em;
}
#to-top a {
  background: #DC147C;
  border: #fff 1px solid;
  border-radius: 5px;
  color: #fff;
  display: block;
  opacity: 0.8;
  padding: .5em ;
  text-align: center;
  text-decoration: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
	width: 22px;
	height: 22px;
}

