@charset "UTF-8";




@media screen and (max-width: 800px){

}




/******************************************************

 main
 
******************************************************/


.main{
    position: relative;
	overflow:hidden;
    width: 100%;
}
.main:before {
    content:"";
    display: block;
    padding-top: 680px;
	background-image: url(../images/top/main_bg@2x.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
}
.main_inner {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
	z-index:0;
}
.main_inner h3{
	position:absolute;
	margin-left:-245px;
	margin-top:-138px;
	top:50%;
	left:50%;
}
.main_inner .main_txt{
	position:absolute;
	margin-left:-60px;
	top:0%;
	right:7.5%;
}

.main_copy{
	background:#231815;
	padding:15px 0px;
}
.main_copy p{
	text-align:center;
	font-size:26px;
	line-height:40px;
	color:#fff;
	width:90%;
	margin:auto;
}
.main_copy p span{
	vertical-align:middle;
	display:inline-block;
}
.main_copy p span img{
	margin:4px 6px;
}

@media screen and (max-width: 800px){

.main:before {
    padding-top: 400px;
}
.main_inner .main_txt{
	margin-left:-35px;
	right:4%;
}
.main_inner .main_txt img{
	width:70px;
	height:auto;
}
.main_inner h3{
	margin-left:-190px;
	margin-top:-100px;
}
.main_inner h3 img{
	width:380px;
	height:auto;
}

}

@media screen and (max-width: 600px){
	
.main:before {
    padding-top: 340px;
}
.main_inner .main_txt{
	margin-left:-25px;
}
.main_inner .main_txt img{
	width:50px;
}
.main_inner h3{
	margin-left:-140px;
	margin-top:-70px;
}
.main_inner h3 img{
	width:280px;
}

}

@media screen and (max-width: 450px){
.main_copy p{
	font-size:20px;
	line-height:30px;
}
.main:before {
    padding-top: 220px;
}
.main_inner .main_txt{
	margin-left:-20px;
}
.main_inner .main_txt img{
	width:40px;
}
.main_inner h3{
	margin-left:-100px;
	margin-top:-50px;
}
.main_inner h3 img{
	width:200px;
}
}




/******************************************************

 riso_title
 
******************************************************/

.riso_title{
	background:#ab301b;
	padding:20px 0px 25px 0px;
}
.riso_title p,
.riso_title h3{
	color:#fff;
	text-align:center;
	margin:auto;
	width:90%;
	font-weight:bold;
}
.riso_title h3{
	font-size:50px;
	line-height:65px;
}
.riso_title p{
	font-size:14px;
	line-height:18px;
}
.riso_title h3 span{
	vertical-align:middle;
	display:inline-block;
}
.riso_title h3 span img{
	margin:5px 5px;
}
.riso_title_under{
	text-align:center;
}


@media screen and (max-width: 600px){
.riso_title h3{
	font-size:35px;
	line-height:45px;
}
.riso_title p{
	font-size:12px;
	line-height:16px;
	margin-top:10px;
}
}
@media screen and (max-width: 400px){

}




/******************************************************

 container01
 
******************************************************/


#container01{
	background:url(../images/top/container01_bg.jpg) top center;
}

.contents_btn{
	margin-bottom:30px;
}
.contents_btn li{
	display:inline-block;
	*display: inline;
	*zoom: 1;
	text-align:center;
	vertical-align:top;
	width:31.25%;
	margin-left:3.125%;
}
.contents_btn li:first-child{
	margin-left:0%;
}
.contents_btn li img{
	width:100%;
	height:auto;
}

@media screen and (max-width: 800px){

}
@media screen and (max-width: 400px){

}



.con01_title{
	background:#fff;
	padding:15px 20px;
	position:relative;
	overflow:hidden;
	margin-top:30px;
}
.con01_title th{
	padding-right:10px;
}
.con01_title td{
	font-size:36px;
	font-weight:bold;
}


@media screen and (max-width: 600px){
.con01_title table{
	width:100%;
}
.con01_title th,
.con01_title td{
	padding-right:0px;
	text-align:center;
	display:block;
}
.con01_title td{
	font-size:26px;
	margin-top:10px;
}
}

@media screen and (max-width: 450px){
.con01_title th img{
	height:20px;
	width:auto;
}
.con01_title td{
	font-size:22px;
}
}


.con01_copy{
	background:url(../images/top/dot_bg_110.png) top left;
	padding-bottom:5px;
	margin-top:30px;
}
.con01_copy p{
	line-height:110px;
}
.txt_red p{
	color:#ab301b;
}
.copy_ll{
	font-size:70px;
	font-weight:bold;
}
.copy_l{
	font-size:60px;
	font-weight:bold;
}
.copy_m{
	font-size:38px;
	font-weight:bold;
}



@media screen and (max-width: 760px){
.copy_ll{
	font-size:50px;
}
.copy_l{
	font-size:40px;
}
.copy_m{
	font-size:28px;
}
}
@media screen and (max-width: 600px){
.con01_copy{
	background:url(../images/top/dot_bg_70.png) top left;
}
.con01_copy p{
	line-height:70px;
}
.copy_ll{
	font-size:40px;
}
.copy_l{
	font-size:30px;
}
.copy_m{
	font-size:18px;
}
}
@media screen and (max-width: 450px){
.con01_copy{
	background:url(../images/top/dot_bg_55.png) top left;
}
.con01_copy p{
	line-height:55px;
}
.copy_ll{
	font-size:32px;
}
.copy_l{
	font-size:22px;
}
.copy_m{
	font-size:14px;
}
}



.manga{
	position:relative;
}
.manga img{
	width:100%;
	height:auto;
}
.manga .base,
.manga .base_sp{
	position:relative;
	z-index:0;
}
.manga .base_sp{
	display:none;
}
.ilusto01,
.ilusto02,
.ilusto03{
	position:absolute;
	z-index:1;
	width:41.666666666%;
}
.fukidashi01,
.fukidashi02,
.fukidashi0201,
.fukidashi0202,
.fukidashi03{
	position:absolute;
	z-index:2;
}
.ilusto01{
	left:54.166666666%;
	top:5.752212389%;
}
.ilusto02{
	left:4.166666666%;
	top:31.415929203%;
}
.ilusto03{
	left:54.166666666%;
	top:58.849557522%;
}
.mag_btn{
	width:45.833333333%;
	position:absolute;
	left:27.083333333%;
	bottom:2.654867256%;
}
.mag_btn2{
	width:45.833333333%;
	position:absolute;
	left:27.083333333%;
	top:98%;
}
.ep01 .fukidashi01{
	width:50%;
	right:0%;
	top:0%;
}
.ep01 .fukidashi02{
	width:46.875%;
	left:0%;
	top:28.761061946%;
}

.ep02 .fukidashi01{
	width:42.708333333%;
	right:0%;
	top:0%;
}
.ep02 .fukidashi0202{
	width:20.833333333%;
	left:26.041666666%;
	top:29.203539823%;
}
.ep02 .fukidashi0201{
	width:20.833333333%;
	left:0%;
	top:46.017699115%;
}
.ep02 .fukidashi03{
	width:46.875%;
	right:0%;
	top:61.061946902%;
}

.ep03 .fukidashi01{
	width:52.083333333%;
	right:0%;
	top:-1.769911504%;
}
.ep03 .fukidashi02{
	width:33.333333333%;
	left:0%;
	top:29.203539823%;
}
.ep03 .fukidashi03{
	width:47.916666666%;
	right:0%;
	top:55.752212389%;
}
.ep03{
	margin-bottom:100px;
}





@media screen and (max-width: 600px){
.manga{
	width:108%;
	margin-left:-4%;
	margin-right:-4%;
}
.manga .base{
	display: none;
}
.manga .base_sp{
	display: block;
}
.ilusto01,
.ilusto02,
.ilusto03{
	width:80%;
}
.ilusto01{
	left:11.5%;
	top:11.25%;
}
.ilusto02{
	left:11.5%;
	top:40.294117647%;
}
.ilusto03{
	left:11.5%;
	top:70.882352941%;
}
.mag_btn{
	width:80%;
	left:10%;
}
.mag_btn2{
	position:absolute;
	width:80%;
	left:10%;
	top:98%;
}






.ep01 .fukidashi01{
	width:90%;
	right:5%;
	top:7%;
}
.ep01 .fukidashi02{
	width:85%;
	left:4%;
	top:38%;
}

.ep02 .fukidashi01{
	width:78.333333333%;
	right:2%;
	top:8%;
}
.ep02 .fukidashi0202{
	width:43.333333333%;
	left:49%;
	top:38%;
}
.ep02 .fukidashi0201{
	width:43.333333333%;
	left:10%;
	top:50%;
}
.ep02 .fukidashi03{
	width:90%;
	right:0%;
	top:72%;
}

.ep03 .fukidashi01{
	width:93.333333333%;
	right:2%;
	top:6.5%;
}
.ep03 .fukidashi02{
	width:63.333333333%;
	left:5%;
	top:39%;
}
.ep03 .fukidashi03{
	width:86.666666666%;
	right:5%;
	top:69%;
}
.ep03{
	margin-bottom:50px;
}


}





/******************************************************

 container02
 
******************************************************/



#container02{
	padding:50px 0px;
}
#container02 .contents{
	padding-top:20px;
	padding-bottom:20px;
}
.con2_bar{
	border:3px solid #3e3431;
	margin-top:40px;
	padding:2px;
}
.con2_bar p{
	border:1px solid #3e3431;
	text-align:center;
	background:#fff8ed;
	color:#ab301b;
	font-weight:bold;
	font-size:30px;
	line-height:140%;
	padding:9px;
}
.con2_bar_txt{
	margin-top:15px;
	text-align:center;
}
.con2_img01{
	margin-top:-40px;
}
#container02 .caption{
	margin-top:50px;
}
.ietan_bana{
	margin-top:50px;
}
.ietan_bana img{
	width:100%;
	height:auto;
	max-width:960px;
}


@media screen and (max-width: 600px){
.con2_bar p{
	font-size:20px;
	padding:9px;
}
.con2_bar_txt{
	font-size:12px;
}
.ietan_bana{
	margin-top:30px;
}
#container02 .caption{
	margin-top:30px;
}
}

@media screen and (max-width: 500px){

#container02 .contents{
	padding-top:0px;
}
#container02{
	padding:30px 0px;
}
}


/******************************************************

 container03
 
******************************************************/

#container03{
	padding:50px 0px;
}
#container03 .contents{
	padding-top:20px;
	padding-bottom:20px;
}


.con_title03{
	text-align:center;
	background-image:url(../images/top/dot_bg_bottom.png);
	background-repeat:repeat-x;
	background-position: left bottom;
	padding:20px 0px;
	margin-bottom:40px;
}
.con_title03 h4{
	font-size:30px;
	line-height:150%;
	font-weight:bold;
	color:#ab301b;
	padding-bottom:10px;
}
.con_title03 p{
	font-size:14px;
}
.con3_img_list {
	margin:auto;
	max-width:900px;
}
.con3_img_list li{
	text-align:center;
	width:46.666666666%;
	margin-left:6.666666666%;
	display:inline-block;
	*display: inline;
	*zoom: 1;
	margin-bottom:50px;
}
.con3_img_list li:nth-child(odd){
	margin-left:0px;
}
.con3_img_list li img{
	width:100%;
	height:auto;
}
.works_bana{
	text-align:center;
	padding-top:30px;
}
.works_bana img{
	max-width:500px;
	width:100%;
	height:auto;
}

@media screen and (max-width: 600px){
.con_title03 h4{
	font-size:25px;
}
.con_title03 p{
	font-size:12px;
}
}

@media screen and (max-width: 500px){

.con3_img_list li{
	width:100%;
	margin-left:0%;
	margin-bottom:30px;
	padding-bottom:30px;
	border-bottom:1px solid #ddd;
}
#container03 .contents{
	padding-top:0px;
}
#container03{
	padding:30px 0px;
}
}



/******************************************************

 slider
 
******************************************************/

ul.slider{
	padding:0px !important;
	margin:0px auto !important;
}
ul.slider li{
	list-style:none;
	padding:0px !important;
	margin:0px !important;
}
ul.slider li img{
	width:100%;
	height:auto;
}
.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -20px;
	width:40px !important;
	height:40px !important;
	text-indent: -9999px;
	z-index: 500;
	background-size:40px 40px !important;
}
.bx-wrapper .bx-controls-direction a.bx-prev{
	left:0px;
	background-image:url(images/back_btn@2x.png);
}
.bx-wrapper .bx-controls-direction a.bx-next{
	right:0px;
	background-image:url(images/next_btn@2x.png);
}

ul.slider,
ul.slider li,
.bx-pager{
	max-width:900px;
	width:90%;
	margin:auto;
}

.bx-pager{
	padding-top:10px !important;
	margin-top:10px !important;
	text-align:center;
}
.bx-pager a {
	width:80px;
	background:#000;
	margin-left:5px;
	margin-right:5px;
	margin-bottom:10px;
	display:inline-block;
	*display: inline;
	*zoom: 1;
}
.bx-pager a img {
	opacity: 0.5;
	filter: alpha(opacity=50);
	width:80px;
	height:auto;
}
.bx-pager a.active img {
	opacity: 1;
	filter: alpha(opacity=100);
}
.bx-pager a:hover img{
	opacity: 1;
	filter: alpha(opacity=100);
}

@media screen and (max-width: 600px){
.bx-pager a {
	width:45px;
	margin-left:2px;
	margin-right:2px;
}
.bx-pager a img {
	width:45px;
}
}






/******************************************************

 clear fix
 
******************************************************/


.main_body ul:after {
  display : block;
  clear : both;
  content : '';
}


.main_body ul { zoom : 1; }
