@charset "utf-8";

#wrap {
	background: #efefef;
	color:#231815;
}

/* clearfix
==================================== */
.clearfix:after {
	content:".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {  display: inline-block; }
/*\*/
*html .clearfix { height: 1%; }
.clearfix { display: block; }
/* */



/* anchor
----------------------------------- */
a {
	color: #e95384;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	text-decoration: none;
}
a:hover {
	color: #374a9d;
	text-decoration: underline;
}

.right{text-align:right;}
.center { text-align: center; }
.subTxt { 
	font-size: 13px;
	line-height: 1.5;
}
.subTxt.center{
	display:block;
	font-size: 12px;
	color:#898989;
	text-align:center;
}
.bold { font-weight: bold; }
.mb15{margin-bottom:15px;}
.mb30{margin-bottom:30px;}

/* layout
==================================== */
.section {
	padding:45px 4%;
}
.inner{
	margin:40px 0 0;
}
.inner.block1{
	margin: 0;
}
.section .ph{
	text-align:center;
}

.section .ph img{
	width:100%;
	margin-bottom:25px;
}
.section .ph.ip {

}
.section .ph.ip img{
	width:65%;
}
.section .mainLead{
	margin-bottom:15px;
	font-size:26px;
    line-height: 1.5;
}
.section .subTit{
	margin-bottom:25px;
	font-size:16px;
	font-weight:bold;
	text-align:center;
}
.section .link{
	margin:15px 0 35px;
	font-size:13px;
	font-weight:bold;
}
.section  .link img{
	vertical-align:middle;
	margin-right:5px;
}
/* header
----------------------------------- */
.section.header {
	position: relative;
	overflow: hidden;
}
.section.header .ph {
	width: 100%;
	height: 100%;
	background:#fff url(../images/bg_dticket_sp.png) no-repeat 50% 50%;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}
.section.header .inner{
	margin:0;
	color:#fff;
	position: relative;
	z-index: 1;
}


.section.header .tit{
	margin:0 0 25px;
	font-size:12px;
	font-weight:bold;
	text-align:center;
	color:#9f641c;
}
.section.header .ico{
	display:block;
	width: 90px;
    margin: 30px auto 50px;
}

.section.header .mainLead{ text-align:center; }
.section.header .txt{ font-weight:bold; }
.section.header .txt br{ display:none; }
.section.header .txt br.sp{ display:block; }
.section.header .patent { text-align: center; margin-top: 10px; }

/* about
----------------------------------- */
.section.about{
	padding:45px 0;
	background:#f8f6f5;
}
.section.about .inner{
	padding:0 4%;
}
.section.about .stamp{
	width:100%;
	position:relative;
	background-position:65% -60px;
	background-repeat:no-repeat;
	background-size:cover;
}
.section.about .stamp .inner{
	margin:0;
	padding:0;
	z-index:1;
}
.section.about .stamp .receive{
	padding:0 4%;
}
.section.about .stamp .receive .link { margin: 35px 0 0; }
.section.about .tit{
	margin:0 0 10px;
	font-size:19px;
	font-weight:bold;
}
.section.about .title{
	margin:0 0 440px;
	font-size:19px;
	color:#ff7c60;
	text-align:center;
}
.section.about .ph.dticket img{ width:100%; }
.section.about .stamp .patent {
	border: 1px solid #888;
	text-align: center;
	margin: 10px 0 0;
}


/* memocolle
----------------------------------- */
.section.memocolle .block1 {
	margin-top:0;
}

.section.memocolle{
	background:#fff url(../images/bg_memocolle_sp.jpg) no-repeat 0 105%;
	background-size:100%;
}
.section.memocolle .subTxt.center{
	color:#231815;
}
.section.memocolle .contentsList li{
	margin-bottom:10px;
	text-align:center;
}
.section.memocolle .subTit{
	margin-bottom:15px;
	color:#898989;
	font-size:14px;
}
.section.memocolle .block1 .subTit{
	display:none;
}
.section.memocolle .ph.ip img{
	width:100%;
}


/* trade
----------------------------------- */

.section.trade{
	background:#F59985; 
	color:#fff;
}
.section.trade .inner{
	margin-top:0;
}
.section.trade .subTxt{
	color:#fff;
}

/* friendlist
----------------------------------- */

.section.friendlist{
	background:#222 url(../images/bg_friend.jpg) no-repeat center center;
	background-size: cover;
	color: #fff;
}
.section.friendlist .inner{
	margin-top:0;
}
.section.friendlist .subTxt{
}


/* hawto
----------------------------------- */

.section.howto{
	background:#f6f6f6;
}
.section.howto .mainLead{
	text-align:center;
	font-size:22px;
}
.section.howto .step{
	margin:60px 0 0 0;
	text-align:center;
}
.section.howto .step .notes{
	text-align:left;
	font-size:11px;
}
.section.howto .step.first{
	margin:40px 0 0 0;
}
.section.howto .step .titTxt{
	margin:5px 0 20px 0;
	font-size:18px;
}
.section.howto .bxslider li img{
	width:180px;
}
.txtLeft{
	text-align:left;
}
.section.howto .ph img{
	margin:0 0 10px;
}
.section.howto  .icon-user{
	margin: 0 0 10px 0;
	text-align:left;
	font-size:16px;
	font-weight:bold;
}
.section.howto .icon-user:before{
	margin: 0 2px 0 0 ;
	vertical-align:middle;
}
.section.howto .voice li{
	margin: 0 0 15px 0;
	padding:15px;
	background:#fff;
	font-size:13px;
	text-align:left;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	box-shadow:rgb(204, 204, 204) 1px 1px 0px 1px;
	-webkit-box-shadow:rgb(204, 204, 204) 1px 1px 0px 1px;
	-moz-box-shadow:rgb(204, 204, 204) 1px 1px 0px 1px;
}
.section.howto .voice li span{
	font-weight: bold;
}
/* カルーセル */
.bxslider li img{
	margin:0 auto;
}
.bxslider span{
	font-weight:bold;
}

/* PC
==================================== */
@media screen and (min-width: 900px) {
	#container{
		width:100%;
	}
	.section .mainLead {
		font-size:24px;
		margin-bottom:20px;
	}
	.section.about .mainLead br{
		display:none;
	}
	.section br.pc{
		display:block!important;
	}
	.section .txt{
		font-size:16px;
		line-height:1.8;
	}
	.section .ph img{ width:300px; }
	.section .ph.ip img{ width:180px; }
	.section .inner{
		width:890px;
		margin: 80px auto 0 ;
		padding:0;
	}


	/* header
	----------------------------------- */
	.section.header {
		padding:55px 5%;
		position: relative;
		overflow: hidden;
	}
	.section.header .ph {
		width: 100%;
		height: 100%;
		background:#fff url(../images/bg_dticket_pc.jpg) no-repeat 50% 50% fixed;
		background-size:cover;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 0;
	}
	.section.header .inner{
		width:100%;
		margin:0 auto;
	/*	color:#000; */
		position: relative;
		z-index: 1;
	}
	.section.header .tit{
		position:relative;
		font-size:20px;
		font-weight:normal;
		text-align:left;
	    height: 90px;
	    padding-top: 40px;
	}
	.section.header .tit img{
		width:130px;
		position:absolute;
		margin: -65px 0 0 -80px;
		left:50%;
		top:50%;
	}
	.section.header .inner{
		margin:0 auto;
	}
	.section.header .txt{
		text-align:center;
	}
	.section.header .txt br{
		display:block!important;
	}
	.section.header .mainLead{
	    font-size: 40px;
	}
	.section.header .subTxt { text-align: center; }

	/* about pc
	----------------------------------- */
	.section.about{
		background: #fff;
		padding:0 0 55px;
	}
	.section.about .stamp{
		width:100%;
		height:550px;
		background: #f8f6f5;
		padding:50px 0 25px;
		position:relative;
		background-position:-350px -170px;
		background-repeat:no-repeat;
		background-size:1100px;
	}
	.section.about .stamp .inner{
		position:relative;
		width:890px;
		margin:0 auto;
	}
	.section.about .inner{
		padding:0;
	}
	.section.about .stamp .inner .title{
		position:absolute;
		right:0;
		top:80px;
		font-weight: normal;
		text-align: left;
	}
	.section.about .stamp .inner .receive{
		position:absolute;
		right:0;
		top:280px;
		width:480px;
		padding:0;
	}
	.section.about .tit{
		margin-bottom:15px;
		font-size:22px;
		font-weight:normal;
	}
	.section.about .title{
		margin:0 0 40px;
		font-size:32px;
	}
	.section.about .pass{
		position:relative;
		text-align:center;
		margin: 60px auto;
	}
	.section.about .pass .link{ margin: 0; }
	.section.about .pass .txt{ width:100%; }
	.section.about ul{ text-align:center; margin: 20px 0 0; }
	.section.about li{
		display:inline-block;
		vertical-align:top;
		padding: 20px;
		box-sizing: border-box;
		width: 49%;
	}
	.section.about li .subTit{
	    margin-bottom: 30px;
		line-height:1.6;
	}
	.section.about li .ph img{
		width: auto;
		height: 150px;
		margin: 0 auto;
	}
	.section.about .inner.change{
		margin:20px auto 0;
		text-align:center;
	}
	.section.about .change .ph img{
		width:430px;
	}
	.section.about .inner.change .txt{
		margin-bottom:40px;
	}

	/* memorialcollection
	----------------------------------- */
	.section.memocolle{
		background:#fff url(../images/bg_memocolle_pc.jpg) no-repeat fixed 50% 50%;
		background-size:cover;
	}
	.section.memocolle{
		padding:90px 4% 45px;
	}
	.section.memocolle .blockWrap{
	    width: 90%;
		min-width:890px;
		max-width:1057px;
		height:570px;
		margin:0 auto;
	}
	.section.memocolle .block1{
		width:47%;
		float:left;
		padding-top:60px;
	}
	.section.memocolle .block2{
		width:53%;
		float:left;
		margin:0;
	}
	.section.memocolle .block1 .subTit{
		display:block;
		margin-bottom:40px;
		text-align:left;
		font-size:19px;
	}
	.section.memocolle .block1 .subTit br{
		display:none;
	}
	.section.memocolle .block2 .subTit{
		display:none;
	}
	.section.memocolle .ph.ip img{
		width:100%;
		max-width:600px;
		margin:0;
	}
	.section.memocolle .block3{
		margin-top:40px;
	}
	.section.memocolle .mainLead{
		font-size:32px;
	    margin-bottom: 40px;
	}
	.section.memocolle .txt{
		width:410px;
		text-align:justify;
	}
	.section.memocolle .block3{
		padding:25px 0;
		border-top:1px solid #231815;
		border-bottom:1px solid #231815;
	}
	.section.memocolle .block3 .subTit{
		text-align:left;
		margin-bottom:10px;
	}
	.contentsList li{
		display:inline-block;
	}
	.contentsList li:after{
		content:'/';
		padding:0 5px;
		color:#231815;
	}
	.contentsList li:last-child:after{
		display:none;
	}
	.section.memocolle .subTxt.center.black{
		clear:both;
	}
	.section.memocolle .subTxt.center.black br{
		display:none;
	}

	/* trade
	----------------------------------- */
	.section.trade{
		padding:90px 0;
	}
	.section.trade .inner{
		position:relative;
		height:550px;
	}
	.section.trade .mainLead{
		font-size:32px;
	    margin-bottom: 40px;
	}
	.section.trade p {
		padding-left:40%;
	}
	.section.trade .txt{
	/*	width:400px; */
		text-align:justify;
	}
	.section.trade .mainLead{
		padding-top: 30px;
	}
	.section.trade .ph{
		position:absolute;
		top:0;
		left:0;
	}
	.section.trade .ph img{
		width:270px;
	}
	.section.trade .link{
		font-size:16px;
	    margin: 60px 0;
	}
	.section.trade .link a{
	/*	color:#dcdddd; */
		color: #fff;
	}
	.section.trade .subTxt {
		text-align: left;
	}

	/* friendlist pc
	----------------------------------- */
	.section.friendlist {
		background-attachment: fixed;
		padding:90px 0;
	}
	.section.friendlist .inner{
		position:relative;
		height:550px;
	}
	.section.friendlist .mainLead{
		font-size:32px;
	    margin-bottom: 40px;
	}
	.section.friendlist .txt{
		width:400px;
		text-align:justify;
	}
	.section.friendlist .ph{
		position:absolute;
		top:-10px;
		right: 100px;
	}
	.section.friendlist .ph img{
		width:270px;
	}
	.section.friendlist .link{
		font-size:16px;
	    margin: 60px 0;
	}
	.section.friendlist .link a{
		color:#dcdddd;
	}

	/* howto
	----------------------------------- */
	.section.howto{
		display:none;
	}

}

/* SP
==================================== */
@media screen and (max-width: 900px) {
	html,body { font-size: 15px; }
	.section.trade .link a,
	.section.friendlist .link a{ color: #fff; }
	
	.section .mainLead { font-size: 7vw; }
	.section .link { margin: 15px 0 20px; }

	.section.header { padding: 30px 4%; }
	.section.header .ico { margin: 20px auto; padding: 0 0 0 30px; }

	.section.about .title { font-size: 5.8vw; }
	.section.about .mainLead { font-size: 19px; font-weight: bold; }
	.section.about .stamp .patent { margin-bottom: 15px; }
	.section.about .stamp .link { margin-top: 5px; }
	.section.about .link { margin: 0; }
	.section.about .pass ul { margin: 15px 0; }
	.section.about .pass li { background: #fff; padding: 10px; margin: 0 0 10px; }
	.section.about .change .ph { background: #fff; padding: 20px 10px; }
	.section.about .pass .subTit { font-size: 13px; line-height: 1.5; margin: 0 0 10px; }
	.section.about .pass .ph,
	.section.about .change .ph { line-height: 0; }
	.section.about li .ph img,
	.section.about .change .ph img { width: auto; height: 100px; margin: 0; }
	
	.section.memocolle { padding-bottom: 0; }
	.section.memocolle .inner.block2 { margin-top: 20px; }
	.section.memocolle .ph.ip { line-height: 0; }
	.section.memocolle .ph.ip img { width: 80%; margin: 0; }
	
	.section.trade .ph.ip img { width: 60%; margin: 0; }
	
	.section.howto .step .titTxt { font-size: 4.5vw; }
	.section.howto .voice { margin: 0 0 30px; }
	.section.howto .device .tit { margin: 0 0 20px; }
	.section.howto .device .ph { width: 70%; margin: 0 auto; }
	.section.howto .device .txt { margin: 0; }
	.section.howto .device .linkList { }
	
	.anchor { position: relative; top: -90px; }
}

