@charset "utf-8";

/* CSS Document */

/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/

body{	
color:#343434;
font-size:14px;
margin:0;
height:100%;
min-height:1468px;
position:relative;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
line-height:1.6;
overflow-x:hidden;
background-image:url(../image/back_sp.jpg);
background-position:center top;
background-repeat:no-repeat;
background-attachment:fixed;
}

body > #primary {
height: auto;
}

@media screen and (min-width:1000px) {
	body::before {
	  background:url(../image/back_sp.jpg) no-repeat left top;
	  background-size: 100% auto;
	  display: block;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  content: "";
	  z-index: -1;
	}
}


a:link {color:#cf3434; text-decoration:underline;}
a:visited {color:#cf3434; text-decoration:underline;}
a:hover {color:#e59c0e; text-decoration:underline;}

img{
border:0;
vertical-align: bottom;
}

/*------------------------------------------------------------------------------------------------------------------
　Expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }
.under { margin-bottom:30px !important; }
.under-harf { margin-bottom:15px !important; }
.right { float:right; margin-left:20px; margin-bottom:15px; margin-top:5px;}
.left { float:left; margin-right:20px; margin-bottom:15px; margin-top:5px;}

.text-center { text-align:center; }
.text-right { text-align:right; }

.last { margin-bottom:0 !important; }

#lineup-font-size-sampler {
	display:none;
}

.ro img:hover,.ro:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.dropshadow {
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
}

div:after,
section:after,
article:after,
ul:after {
    content: "";
    display: block;
    clear: both;
}

.pc {
	display:none;
}

.sp {
	display:block;
}

.tab {
	display:none;
}

/*------------------------------------------------------------------------------------------------------------------
　Float Image
-------------------------------------------------------------------------------------------------------------------*/

.photo-l {
	float:left;
	margin-right:20px;
	margin-bottom:20px;
}

.photo-r {
	float:right;
	margin-left:20px;
	margin-bottom:20px;
}

.photo-l img {
	width:100%;
	height:auto;
}

.photo-r img {
	width:100%;
	height:auto;
}

.photo-c {
	text-align:center;
}

.photo-c img {
}

/*------------------------------------------------------------------------------------------------------------------
　Primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
	width:1000px;
	height:100%;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	overflow-x:hidden;
}

/*------------------------------------------------------------------------------------------------------------------
　Header
-------------------------------------------------------------------------------------------------------------------*/

header {
	width:100%;
	height:89px;
	background-image:url(../image/header/line.png);
	background-position:bottom;
	background-repeat:no-repeat;
	margin-bottom:10px;
}

header #header-primary {
	max-width:1280px;
	width:100%;
	height:95px;
	box-sizing:border-box;
	margin-left:auto;
	margin-right:auto;
	padding-top:15px;
}

header .logo {
	background-image:url(../image/header/logo.png);
	width:289px;
	height:67px;
	float:left;
	display:block;
	position:relative;
	margin-top:-4px;
	margin-left:30px;
}

header .logo a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	text-indent:100%;
	white-space:nowrap;
}

header #option {
	width:500px;
	float:right;
	position:relative;
	z-index:99;
}

header #option .button01 {
	background-image:url(../image/header/button01.png);
	width:242px;
	height:53px;
	display:block;
	float:left;
	position:relative;
	margin-right:10px;
}

header #option .button02 {
	background-image:url(../image/header/button02.png);
	width:242px;
	height:53px;
	display:block;
	float:left;
	position:relative;
}

header #option .button03 {
	background-image:url(../image/header/button03_sp.png);
	width:332px;
	height:53px;
	display:block;
	float:right;
	position:relative;
	margin-right:30px;
}

header #option .button01 a, header #option .button02 a, header #option .button03 a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	overflow:hidden;
	text-indent:100%;
	white-space:nowrap;
}

/*------------------------------------------------------------------------------------------------------------------
　Navi
-------------------------------------------------------------------------------------------------------------------*/

nav ul.absolute {
	width:100%;
	box-sizing:border-box;
	list-style:none;
	margin:0;
	padding:0;
	padding-left:25px;
	display:block !important;
	opacity:1 !important;
	margin-top:-760px;
}

nav ul.fixed {
	display:none !important;
}

nav ul li {
	float:left;
	width:467px;
	height:237px;
	margin-right:15px;
	margin-bottom:15px;
	transition:0.3s;
	background-position:center top;
	background-repeat:no-repeat;
	position:relative;
}

nav ul li a {
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	overflow:hidden;
	text-indent:100%;
	white-space:nowrap;
	outline:none;
	z-index:9999;
}

nav ul li:nth-child(1){ background-image:url(../image/navi/navi01_sp.png); }
nav ul li:nth-child(2){ background-image:url(../image/navi/navi02_sp.png); }
nav ul li:nth-child(3){ background-image:url(../image/navi/navi03_sp.png); }
nav ul li:nth-child(4){ background-image:url(../image/navi/navi04_sp.png); }

.rec-button {
	background-image:url(../image/navi/rec-button.png);
	width:940px;
	height:220px;
	display:block;
	margin-left:auto;
	margin-right:auto;
	text-indent:300%;
	overflow:hidden;
	white-space:nowrap;
	position:relative;
}

/*------------------------------------------------------------------------------------------------------------------
　Footer
-------------------------------------------------------------------------------------------------------------------*/

#footer {
	width:100%;
	height:284px;
	background-repeat:repeat-x;
	margin-top:45px;
	box-sizing:border-box;
	padding-top:1px;
	position:relative;
}

#footer .logo {
	background-image:url(../image/footer/logo_sp.png);
	width:433px;
	height:141px;
	margin-left:auto;
	margin-right:auto;
	display:block;
	margin-top:58px;
	position:relative;
	margin-bottom:30px;
}

#footer .logo a {
	overflow:hidden;
	text-indent:100%;
	white-space:nowrap;
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

#footer .cc {
	text-align:center;
	font-size:30px;
}

/*------------------------------------------------------------------------------------------------------------------
　Additional
-------------------------------------------------------------------------------------------------------------------*/

#contents {
	width:100%;
	clear:both;
}

#tab-content01, #tab-content02, #tab-content03, #tab-content04, #tab-content05 {
	width:100%;
	background-color:rgba(255,255,255,0.6);
	padding-bottom:50px;
}

#tab-contents-primary {
	width:100%;
	margin-left:auto;
	margin-right:auto;
}

.bx-viewport {
}

.bx-prev, .bx-next {
	display:none;
}

#tab-contents-primary article {
	width:1000px;
	min-height:860px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	overflow:hidden;
}

.main-label {
	width:796px;
	height:357px;
	position:absolute;
	top:0;
	left:-20px;
	z-index:99;
}

#tab-content01 .main-label { background-image:url(../image/contents/scene01/main-label.png); height:423px; }
#tab-content02 .main-label { background-image:url(../image/contents/scene02/main-label.png); }
#tab-content03 .main-label { background-image:url(../image/contents/scene03/main-label.png); }
#tab-content04 .main-label { background-image:url(../image/contents/scene04/main-label.png); }

#tab-contents-primary article .content {
	width:100%;
}

/* scene01 */

#tab-content01 #tab-content01-primary {
}

#tab-content01 .content-sparate01 {
	background-image:url(../image/contents/scene01/content01_sp.png);
	width:1000px;
	height:737px;
	margin-top:217px;
	position:relative;
}

#tab-content01 .content-sparate01 a {
	position:absolute;
	top:585px;
	left:533px;
	display:block;
	width:397px;
	height:90px;
	overflow:hidden;
	white-space:nowrap;
	text-indent:100%;
}

#tab-content01 .stand {
	display:none;
}

#tab-content01 .content-sparate02 {
	background-image:url(../image/contents/scene01/content02_sp.png);
	width:1000px;
	height:901px;
	margin-top:-30px;
	margin-bottom:30px;
}

#tab-content01 .content-sparate03 {
	background-image:url(../image/contents/scene01/content03_sp.png);
	width:1000px;
	height:649px;
}


/* scene02 */

#tab-content02 #tab-content02-primary {
}

#tab-content02 #tab-content02-primary .content {
	background-image:url(../image/contents/scene02/content01_sp.png);
	background-repeat:no-repeat;
	background-position:center top;
	width:1000px;
	position:relative;
	padding-top:1099px;
}

#tab-content02 #tab-content02-primary .content .comment {
	padding-left:30px;
	padding-right:30px;
}

#tab-content02 #tab-content02-primary .content .comment .comment01 {
	border:5px solid #29c5ff;
	padding:30px;
	border-radius:10px;
	background-color:#ffffff;
	font-size:30px;
	padding-left:206px;
	position:relative;
}

#tab-content02 #tab-content02-primary .content .comment .comment01:before {
	background-image:url(../image/contents/scene02/staff01.png);
	width:160px;
	height:184px;
	content:"";
	display:block;
	position:absolute;
	top:30px;
	left:30px;
}

#tab-content02 #tab-content02-primary .content .comment .comment02 {
	border:5px solid #29c5ff;
	padding:30px;
	border-radius:10px;
	background-color:#ffffff;
	font-size:30px;
	padding-left:206px;
	position:relative;
}

#tab-content02 #tab-content02-primary .content .comment .comment02:before {
	background-image:url(../image/contents/scene02/staff02.png);
	width:160px;
	height:184px;
	content:"";
	display:block;
	position:absolute;
	top:30px;
	left:30px;
}

/* scene03 */

#tab-content03 #tab-content03-primary {
}

#tab-content03 #tab-content03-primary .content {
}

#tab-content03 #tab-content03-primary .content .content-sparate01 {
	background-image:url(../image/contents/scene03/content01_sp.png);
	width:1000px;
	height:986px;
	position:relative;
	margin-bottom:30px;
}

#tab-content03 #tab-content03-primary .content .content-sparate02 {
	background-image:url(../image/contents/scene03/content02_sp.png);
	width:1000px;
	height:1084px;
	position:relative;
}

#tab-content03 #tab-content03-primary .content .content-sparate01 .stand {
	display:none;
}


/* scene04 */

#tab-content04 #tab-content04-primary {
}

#tab-content04 #tab-content04-primary .content {
	background-image:url(../image/contents/scene04/content_sp.png);
	width:1000px;
	height:1166px;
	position:relative;
}

#tab-content04 #tab-content04-primary .content .tel {
	width:460px;
	height:110px;
	position:absolute;
	top:1025px;
	left:490px;
}

#tab-content04 #tab-content04-primary .content .tel a {
	overflow:hidden;
	text-indent:100%;
	white-space:nowrap;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
}


/* scene05 */

#tab-content05 #tab-content05-primary {
}

#tab-content05 #tab-content05-primary .content {
	background-image:url(../image/contents/scene05/content01_sp.png);
	width:1000px;
	height:1267px;
	position:relative;
	margin-left:0px;
	margin-top:-30px;
}

#tab-content05 #tab-content05-primary .content .stand {
	display:none;
}

#tab-content05 #tab-content05-primary .content .yumekibou {
	display:none;;
}

#tab-content05 #tab-content05-primary .dream-open {
	background-image:url(../image/contents/scene05/dream_sp.png);
	width:941px;
	height:320px;
	margin-top:30px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
}

#tab-content05 #tab-content05-primary .dream-open a {
	width:404px;
	height:91px;
	display:block;
	position:absolute;
	top:201px;
	left:510px;
}