@charset "UTF-8";

/* ------------------------------------------- CSS Information 
 Style Info:     ブラウザスタイルのリセット設定
----------------------------------------------------------- */  
html{overflow-y:scroll;} 
body,div,blockquote,pre,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,table,th,td,form,input,textarea,fieldset{margin: 0;padding:0;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
table{border-collapse:collapse;border-spacing:0;}
caption, th{text-align:left;}   
img,abbr,acronym,fieldset{border:none;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
hr,legend{display:none;}
object,embed{vertical-align:top;} 


/* ------------------------------------------- CSS Information 
 Style Info:     基本設定
----------------------------------------------------------- */
/*A Style*/  
a:link{text-decoration: underline;color: #666666;}
a:visited{text-decoration: none;color: #66666;}
a:hover{text-decoration: underline;color: #999999;}
a:active{text-decoration: none;color: #66666;}
/*basic*/
.b{font-weight:bold;}
.ul{text-decoration:underline;}
.bg{background-color:#fff45c;}
.big{font-size:20px;}
.red{color:#f18324;}

/* ------------------------------------------- CSS Information 
 Style Info:     ホームページ詳細設定
----------------------------------------------------------- */
body{  
font-family:"メイリオ",Osaka,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",Arial,Sans-Serif;
color:#333333;
font-size:16px;
line-height:0;
text-align:center;
background:url(../img/bg.png) no-repeat center fixed;
background-size:cover;
letter-spacing:0em;
overflow:hidden;
width:100%;
min-width:320px;
}

/*----- wrapper -----*/
#wrapper{
display:block;
margin:0;
padding:0;
width:100%;
position:relative;
}

/*----- header -----*/
header{
width:100%;
height:100px;
margin:0;
text-align:left;
position:relative;
background:rgba(255,255,255,0.9);
}
.header_box{
width:100%;
max-width:1200px;
margin:0 auto;
position:relative;
}
.logo_pc{
width:270px;
height:90px;
margin:0;
position:absolute;
left:0;
top:5px;
}
.header_img_pc{
width:270px;
height:60px;
position:absolute;
right:0;
top:20px;
}
.logo_sp{display:none;}
@media only screen and (max-width:640px){
header{
height:120px;
text-align:center;
}
.logo_pc,.header_img_pc{display:none;}
.logo_sp{
display:block;
width:240px;
height:110px;
margin:0 auto;
padding:5px 0;
}
}


/*----- menu -----*/
#m1,#m2,#m3,#m4,#m5,#m6{display:none;}
#gnav{
margin:0;
padding:0;
width:100%;
height:40px;
background:url(../img/gnav_bg.png) repeat-x left top;
background-size:auto 100%;
}
#gnav ul{margin:0 auto;padding:0;width:100%;max-width:1200px;height:40px;}
#gnav li{
box-sizing:border-box;
border-left:1px solid rgba(255,255,255,0.2);
list-style:none;
margin:0;
padding:0;
float:left;
}
#gnav li:last-child{border-right:1px solid rgba(255,255,255,0.2);}
#gnav li.menu01{width:0;display:none;}
#gnav li.menu02{width:25%;}
#gnav li.menu03{width:25%;}
#gnav li.menu04{width:25%;}
#gnav li.menu05{width:25%;}
#gnav li label{display:block;width:100%;height:100%;margin:0;padding:0;}
#gnav li label:hover{background:url(../img/gnav_bg_hover.png) repeat-x left top;background-size:auto 100%;}
#gnav li img{width:120px;height:30px;padding:5px 0;}
@media only screen and (max-width:640px){#gnav li img{width:80px;height:20px;padding:10px 0;}}

/*------ title ------*/
.title{
margin:0 auto;
position:absolute;
top:-35px;
left:0;
right:0;
}
@media only screen and (max-width:640px){
.title{
width:210px;
height:40px;
top:-15px;
}
}

/*------ contents ------*/
#contents{
width:100%;
margin:0;
display:block;
height:780px;
position:relative;
}
@media only screen and (max-width:640px){#contents{height:440px;}}

#top,#introduction,#cast,#about,#story,#voice{
position:absolute;
top:100px;
right:0;
left:0;
width:100%;
max-width:1220px;
margin:0 auto;
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
transition: all 1s ease;
opacity:0;
z-index:0;
}
#m1:checked ~ #top,
#m2:checked ~ #introduction,
#m3:checked ~ #cast,
#m4:checked ~ #about,
#m5:checked ~ #story,
#m6:checked ~ #voice{
opacity:1;
z-index:10;
}
@media only screen and (max-width:640px){#top,#introduction,#cast,#about,#story,#voice{top:60px;}}

.img_pc{display:block;width:900px;height:600px;margin:0 auto;}
.opt_img_pc{display:block;width:640px;margin:0 auto;}
.img_sp,.opt_img_sp{display:none;}
.sp{display:none;}

@media only screen and (max-width:940px){.img_pc{width:600px;height:400px;padding:100px 0;}}
@media only screen and (max-width:640px){
.pc{display:none;}
.img_pc,.opt_img_pc{display:none;}
.sp{display:block;margin:0 auto;}
.img_sp{display:block;width:320px;margin:0 auto;}
.opt_img_sp{display:block;width:320px;margin:0 auto;}
}

/*------ top ------*/
#top{text-align:center;}
.frame_top{
margin:0 10px;
background:
url(../img/frame_top_left.png) no-repeat top left,
url(../img/frame_top_right.png) no-repeat top right,
url(../img/frame_bottom_left.png) no-repeat bottom left,
url(../img/frame_bottom_right.png) no-repeat bottom right,
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/frame_left.png) repeat-y top left,
url(../img/frame_right.png) repeat-y top right,
url(../img/top_bg.png) no-repeat top left;
}
#top .img_pc{width:600px;margin:0 0 0 auto;}
@media only screen and (max-width:940px){#top .img_pc{width:400px;padding:100px 0;margin:0 auto;}}
@media only screen and (max-width:640px){
.frame_top{
margin:0;
background:
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/top_sp_bg.png) no-repeat top center;
background-size:auto 20px,auto 20px,auto 100%;}
}


/*------ introduction ------*/
#introduction{text-align:center;}
.frame_intro{
height:600px;
margin:0 10px;
padding:0 10px;
background:
url(../img/frame_top_left.png) no-repeat top left,
url(../img/frame_top_right.png) no-repeat top right,
url(../img/frame_bottom_left.png) no-repeat bottom left,
url(../img/frame_bottom_right.png) no-repeat bottom right,
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/frame_left.png) repeat-y top left,
url(../img/frame_right.png) repeat-y top right,
rgba(255,255,255,0.8);
}
@media only screen and (max-width:640px){
.frame_intro{
height:360px;
margin:0;
padding:0;
width:100%;
background:
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
rgba(255,255,255,1);
}
}


/*------ cast ------*/
#cast{text-align:center;}
#cast_01{}
#cast_02{}
#cast_03{}
.frame_cast{
height:600px;
margin:0 10px;
padding:0 10px;
background:
url(../img/frame_top_left.png) no-repeat top left,
url(../img/frame_top_right.png) no-repeat top right,
url(../img/frame_bottom_left.png) no-repeat bottom left,
url(../img/frame_bottom_right.png) no-repeat bottom right,
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/frame_left.png) repeat-y top left,
url(../img/frame_right.png) repeat-y top right,
rgba(255,220,230,0.5);
}
@media only screen and (max-width:640px){
.frame_cast{
height:360px;
margin:0;
padding:0;
width:100%;
background:
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
rgba(255,255,255,1);
}
}

/*------ about ------*/
#about{text-align:center;}
.frame_about{
height:600px;
margin:0 10px;
padding:0 10px;
background:
url(../img/frame_top_left.png) no-repeat top left,
url(../img/frame_top_right.png) no-repeat top right,
url(../img/frame_bottom_left.png) no-repeat bottom left,
url(../img/frame_bottom_right.png) no-repeat bottom right,
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/frame_left.png) repeat-y top left,
url(../img/frame_right.png) repeat-y top right,
url(../img/about_bg.png) no-repeat top center;
}
@media only screen and (max-width:640px){
.frame_about{
height:360px;
margin:0;
padding:0;
width:100%;
background:
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
rgba(255,255,255,1);
}
}

/*------ story ------*/
#story{text-align:center;}
#story_01{background:url(../img/story_01_bg.png) center top no-repeat;}
#story_02{background:url(../img/story_02_bg.png) center top no-repeat;}
#story_03{background:url(../img/story_03_bg.png) center top no-repeat;}
#story_04{background:url(../img/story_04_bg.png) center top no-repeat;}
#story_05{background:url(../img/story_05_bg.png) center top no-repeat;}
.frame_story{
height:600px;
margin:0 10px;
padding:0 10px;
background:
url(../img/frame_top_left.png) no-repeat top left,
url(../img/frame_top_right.png) no-repeat top right,
url(../img/frame_bottom_left.png) no-repeat bottom left,
url(../img/frame_bottom_right.png) no-repeat bottom right,
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
url(../img/frame_left.png) repeat-y top left,
url(../img/frame_right.png) repeat-y top right,
rgba(255,220,230,0.5);
}
@media only screen and (max-width:640px){
.frame_story{
height:360px;
margin:0;
padding:0;
width:100%;
background:
url(../img/frame_top.png) repeat-x top left,
url(../img/frame_bottom.png) repeat-x bottom left,
rgba(255,255,255,1);
}
}


/*------ opt ------*/
#opt{
max-width:900px;
width:100%;
margin:30px auto 60px auto;
padding:30px 0 0 0;
text-align:center;
position:relative;
background:rgba(255,255,255,0.8);
}
#opt_box{
margin:20px 0 0 0;
padding:30px;
text-align:center;
background:rgba(222,130,167,0.5);
position:relative;
}
#opt input[type=text]{
font-family: "ヒラギノ角ゴ Pro W3",Osaka,"メイリオ","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",Arial,Sans-Serif;
font-size:16px;
line-height:20px;
width:100%;
margin:0 auto 10px auto;
padding:10px;
text-align:left;
border:1px solid #000000;
box-sizing:border-box;
}
#opt input[type=image] {}
.attention{
margin:20px auto 0 auto;
padding:0;
width:100%;
text-align:center;
color:#666666;
font-weight:bold;
}
.attention ul{
margin:0;
padding:0;
}
.attention li{
list-style:none;
margin:0;
padding:0 0 0 12px;
font-size:14px;
line-height:20px;
}
@media only screen and (max-width:640px){
#opt{
margin:30px auto 60px auto;
padding:20px 0 0 0;
}
#opt_box{
margin:20px 0 0 0;
padding:20px 10px;
}
#opt input[type=text]{
font-family: "ヒラギノ角ゴ Pro W3",Osaka,"メイリオ","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",Arial,Sans-Serif;
font-size:14px;
line-height:20px;
width:100%;
margin:0 auto 10px auto;
padding:10px;
text-align:center;
border:1px solid #000000;
box-sizing:border-box;
}
#opt input[type=image] {width:240px;}
.attention{
margin:10px auto 0 auto;
padding:0;
width:100%;
text-align:justify;
color:#666666;
font-weight:bold;
}
.attention ul{
margin:0;
padding:0;
}
.attention li{
list-style:none;
margin:0;
padding:0;
font-size:12px;
line-height:16px;
}
}

/*------ footer ------*/
footer{
margin:0;
padding:0;
width:100%;
font-size:12px;
line-height:16px;
position:relative;
color:#f5f5f5;
background:rgba(0,0,0,0.8);
}
#fnav a{color:#f5f5f5;text-decoration:none;}
#fnav a:hover{color:#f5f5f5;text-decoration:underline;}
#fnav{padding:30px 0;}
#fnav ul{
text-align:center;
list-style-type:none;
}
#fnav li{
font-size:12px;
line-height:16px;
display:inline-block;
padding:0 5px;
border-right:1px solid #666666;
}
#fnav li:last-child{border-right:none;}
footer p{margin:0;padding:0;}
address{padding:20px 0;}
@media only screen and (max-width:768px){
footer p{text-align:justify;padding:0 10px;}
footer p br{display:none;}
}
@media only screen and (max-width:480px){
#fnav li{
line-height:30px;
display:block;
padding:0 5px;
border-right:0;
}
.sp_no{display:none;}
}

/* ------------------------------------------- CSS Information 
 Style Info:     スライド設定
----------------------------------------------------------- */ 
.slider-pro {position:relative;margin:0;-moz-box-sizing:content-box;box-sizing:content-box;}
.sp-slides-container{position:relative;}
.sp-mask{position:relative;overflow:hidden;}
.sp-slides{position:relative;-webkit-backface-visibility:hidden;-webkit-perspective:1000;}
.sp-slide{position:absolute;}
.sp-selectable{cursor:default;}
.sp-buttons{
position:relative;
width:100%;
text-align: center;
margin:10px 0 0 0;
padding:0;
}
.sp-button{
width:10px;
height:10px;
border-radius:50%;
margin:0 10px;
display:inline-block;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
cursor:pointer;
background:#dddddd;
}
.sp-selected-button {background:#272727;}
.sp-arrows{position:absolute;}
.sp-fade-arrows{}
.sp-slides-container:hover .sp-fade-arrows {opacity:1;}
.sp-horizontal .sp-arrows{
width:100%;
left:0;
top:50%;
margin-top:-15px;
}
.sp-vertical .sp-arrows{
height:100%;
left:50%;
top: 0;
margin-left: -10px;
}
.sp-arrow{
position:absolute;
display:block;
width:20px;
height:30px;
cursor:pointer;
}
.sp-vertical .sp-arrow{-webkit-transform:none;ms-transform:none;transform:none;}
.sp-horizontal .sp-previous-arrow{left:20px;}
.sp-horizontal .sp-next-arrow{right:20px;}
.sp-vertical .sp-previous-arrow{top:20px;}
.sp-vertical .sp-next-arrow{bottom:20px;}
.sp-previous-arrow:before,.sp-previous-arrow:after,.sp-next-arrow:before,.sp-next-arrow:after {content:'';position:absolute;width:50%;height:50%;background-color:#000000;}
.sp-previous-arrow:before{left:30%;top:0;-webkit-transform:skew(145deg, 0deg);-ms-transform:skew(145deg, 0deg);transform:skew(145deg, 0deg);}
.sp-previous-arrow:after {left:30%;top:50%;-webkit-transform: skew(-145deg, 0deg);-ms-transform: skew(-145deg, 0deg);transform: skew(-145deg, 0deg);}
.sp-next-arrow:before {right: 30%;top: 0;-webkit-transform: skew(35deg, 0deg);-ms-transform: skew(35deg, 0deg);transform: skew(35deg, 0deg);}
.sp-next-arrow:after {right: 30%;top: 50%;-webkit-transform: skew(-35deg, 0deg);-ms-transform: skew(-35deg, 0deg);transform: skew(-35deg, 0deg);}
.ie8 .sp-arrow,.ie7 .sp-arrow{width:0;height:0;}
.ie8 .sp-arrow:before,.ie8 .sp-arrow:after,.ie7 .sp-arrow:before,.ie7 .sp-arrow:after {content: none;}

@media only screen and (max-width:640px){
.sp-arrow{
width:10px;
height:15px;
}
.sp-horizontal .sp-previous-arrow{left:5px;}
.sp-horizontal .sp-next-arrow{right:5px;}
}