/*
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.8.0r4
*/
body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea,button{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}
* {
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}
/* --　記事内の装飾 --*/
body{
	margin: 0px;
	background-color: #000;
	position:relative; 
}
body a img{
	border-style: none;
}
body img{
	vertical-align: bottom;
}
a{
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	cursor: pointer;
	cursor: hand;
}

#main-visual{
	position: relative;
	margin: 0 auto;
	min-width: 1000px;
	min-height: 750px;
	padding: 1px 0px;
	text-align: center;
	clear:both;
}
#title-area{
	background-repeat: repeat-x;
	background-position: center bottom;
	text-align: center;
	position:relative;
	background-color: rgba(255,255,255,0.8) ;
	width: 100%;
}

#title-area h1{
	width: 450px;
	display: block;
  bottom: 32px;
  left: 0;
  right: 0;
  margin: auto;
	padding: 32px 0px;
}
#title-area h1 img{
width: 90%;
	height: auto;
}


header p{
	text-align: center;
	vertical-align: middle;
	margin: 0px 0px 30px;
	padding: 0px
}
header p img{
	width: 100%;	
}
header h2{
	text-align: center;
	vertical-align: middle;
	padding: 0px
}
header h2 img{
	width: 100%;	
}

header nav{
	background-color: #039;
	height: 50px;
	width: 100%;
	min-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	z-index: 200;
	padding-top: 1px;
}

header nav ul{
	width: 100%;
	margin: 14px auto 0px auto;
	padding: 0px;
}
header nav ul li{
	width: 100%;
	font-size: 116%;
	padding: 0px;
	margin: 0px 30px 15px 30px;
	font-weight: bold;
	display: inline;
}
header nav ul li a{
	color: #fff;
	padding-bottom: 0px;
	font-weight: bold;
	letter-spacing: 0.1em;
}
header nav ul li a:hover{
	color:  rgba(255,255,255,0.5);
	text-decoration: none;
}
header nav ul li a,
header nav ul li a::after {	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
/**/
#sp-nav{
	display: none;
}
#scroll-nav{
	position: fixed;
	height: 70px;
	width: 100%;
	min-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	z-index: 880;
	top: -95px;
	background-color: rgba(0,0,0,1.0);
	border-bottom: ;
	border-bottom: 1px solid #FFFFFF;
}
#global-nav{
	width: 950px;
	margin: 0px auto 0px auto !important;
}
#global-nav h1{
	display: block;
	float: left;
	width: 230px;
	height: 22px;
	margin: 12px 50px 0px 0px;
}
#global-nav h1 img{
	width: 100%;
	height: 100%;
	}
nav#global-nav ul.main-nav{
	margin:25px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	height: 20px;
	float:right;
}
nav#global-nav ul.main-nav li{
	font-size: 116%;
	float: left;
	margin: 0px 25px 0px 0px;
	height: 20px;
	padding: 0px;
}
nav#global-nav ul.main-nav li a{
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.1em;
}
nav#global-nav ul.main-nav li a:hover{
	color: #03c;
	text-decoration: none;
}
nav#global-nav ul.nav-icon{
	padding: 0px;
	margin: 10px 25px 0px 0px;
	float:left;
}
nav#global-nav ul.nav-icon li{
	text-indent: -9999px;
	float:left;
}

nav#global-nav ul li a,
nav#global-nav li a::after {	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

#scroller{
	margin-bottom: 0px;
}

#button {
	width: 70px;
	height: 70px;
	position: absolute;
	display: block;
	background: url(../images/Hamburger_menu.png) no-repeat center;
	-webkit-background-size: 70px auto;
	-moz-background-size: 70px auto;
	background-size: 70px auto;
	margin: 0px;
	padding: 0px;
	right: -1px;
}
.menu-button-left {
    left: 0px;
    border-right: 1px solid #ddd;
}



/*-- Maincontainer Comon Seting--*/
#maincontainer{
	z-index: 20;
}
.contents-block{
	width: 100%;
	padding-top: 100px;
	padding-bottom: 100px;
}
#maincontainer section{

}
.contents-wrapper{
	width:950px;
	padding:0px 0px;
	margin: 0 auto 100px auto;
}


#maincontainer h2{
	background: url(../images/h2_back.jpg) repeat-x center;
	-webkit-background-size: auto 250px;
	-moz-background-size: auto 250px;
	background-size: auto 250px;
	width: 100%;
	margin: 0px 0px 70px 0px;
	clear: both;
	font-size: 40px;
	color: #fff;
	font-weight: bold;
	border-bottom: 1px solid #fff;
	border-top: 1px solid #fff;
	padding: 0px;
	height: 120px;
	text-align: center;
	line-height: 120px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}






#maincontainer h3{
	width: 100%;
	margin: 0px 0px 35px 0px;
	clear: both;
	font-size: 20px;
	color: #fff;
	font-weight: normal;
	padding: 0px;
	text-align: center;
	border-bottom: 1px solid #05c;
	line-height: 1.8em;
}
#maincontainer p.leadcopy{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 30px;
	color: #fff;
	margin: 0px 0px 35px 0px;
	line-height: 1.5em;
}

#maincontainer  h4 {
	font-size: 123.1%;
	line-height: 1.5em;
	color: #fa0;
	font-weight: normal;
	margin: 0px 0px 0.3em 0px;
}


#maincontainer p {
	font-size: 116%;
	line-height: 1.8em;
	margin-top: 0px;
	margin-bottom: 1.5em;
	color: #fff;
}
#maincontainer p em {
	font-style: normal;
	font-weight: bold;
	color: #F60;
}


#maincontainer p .caption,
#maincontainer ul li .caption {
	font-size:12px;
	color: #666;
}
#maincontainer p.caption{
	font-size: 93%;
	color: #999999;
	margin: 0px 0px 5px 0px;
}

#maincontainer ul {
	list-style-type: none;
	padding: 0px;
	margin-bottom: 1em;
	margin-left: 3px;
	margin-top: 0px;
}
#maincontainer ul li {
	color: #fff;
	margin-bottom: 30px;
	padding-left: 10px;
	line-height: 1.8em;
}
#maincontainer ul li p {
	margin-bottom: 0px;
}
#maincontainer ul li em{
	font-style: normal;
	color: #F60;
}
#maincontainer ol {
	padding: 0px;
	margin: 0px 0px 0px 2em;
}
#maincontainer ol li {
	color: #fff;
	margin-bottom: 0.5em;
	line-height: 1.8em;
	padding-bottom: 5px;
	font-size: 116%;
}
#maincontainer ol li em{
	font-style: normal;
	color: #F60;
}

.link-button {
	width:100%;
}
.link-button a {
	display: block;
	width:100% !important;
	position: relative;
	height: 40px;
	line-height:40px;
	padding: 0em;
	background-color: #888;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}
.red a {
	background-color: #c33 !important;
}
.link-button a::after {	
	content: '';
	position: absolute;
	top: 40%;
	left: 1em;
	width: 8px;
	height: 8px;
	border-right: 1px solid #888;
	border-bottom: 1px solid #888;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.red a::after  {
	border-right: 1px solid #c33;
	border-bottom: 1px solid #c33;
}
.link-button a,
.link-button a::after {	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
.link-button a:hover {
	color: #fff;
	text-decoration: none;
	background-color: #666;
}
.red a:hover {
	background-color: #a11 !important;
}
.link-button a:hover::after {
	left: 2em;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#about .link-button a:hover {
	background-color: #ddded9;
}
#works .link-button a:hover {
	background-color: #e2ece2;
}
#flow .link-button a:hover {
	background-color: #d6e8fb;
}

#maincontainer .head-copy{
	float: left;
	border-top-width: 0px;
	width:230px;
}


/*About*/
#maincontainer #about{
	background-repeat: no-repeat;
	background-position: center 120px;
	background-image: url(../images/about_back.jpg);
	-webkit-background-size: auto 500px;
	-moz-background-size: auto 500px;
	background-size: auto 500px;
}
#maincontainer #about .head-block{
	margin:0px 0px 60px 45%;
}
#maincontainer #about h3 img{
	width: 390px;
}
#maincontainer #about h3.logo{
	text-align: left;
	border-bottom-color: #fff;
	margin-bottom: 20px;
}
ul.merit-list {
    margin:0 0 30px -5% !important;
	padding:0px;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    width:105%;
}
ul.merit-list li {
	margin: 0 0 0 5%;
	padding: 0px !important;
	width: 45%;
	list-style: none;
	display: block;
	background-image: none !important;
}
ul.merit-list li img{
	height: 80px;
	float: left;
	margin: 0px 25px 0px 0px;
}

/*Intro*/
#maincontainer #intro .intro-img{
	text-align: center;
}
#maincontainer #intro .intro-img img{
	width: 850px;
}
#maincontainer #intro .use-img img{
	width: 100%;
}

.block-left{
	float: left;
	width: 47%;
}
.block-right{
	float: right;
	width: 47%;
}

/*Contact*/
.contact-back{
	background-image: url(../images/contact_01.jpg);
  background-position: center center;
  background-repeat: no-repeat; 
  background-size: cover;
  background-color: #044;
}
#maincontainer #contact{
	background-image: url(../images/overlay.png);
	background-position: center center;
	background-repeat: repeat;
}
#maincontainer #contact .head-copy{
	float: left;
	border-top-width: 0px;
}
#maincontainer #contact .body-block{
	float: right;
}
#maincontainer #contact .iframe-box{
	clear: both;
	width: 100%;
}
#maincontainer #contact #iframe-01{
	width: 100%;
	min-height: 450px;
	clear: both;
}




#maincontainer #contact p.tel-number{
	line-height: 30px;
	float: left;
	font-size: 30px;
	font-weight: bold;
	white-space: nowrap;
	margin-right: 40px;
}
#maincontainer #contact p.tel-number span{
	display: block;
	width: 27px;
	height: 31px;
	text-indent: -9999px;
	float: left;
	line-height: 30px;
	margin-right: 5px;
}

#maincontainer #contact p.tel-number span{
	background: url(../images/tel_heada.png) no-repeat center;
	-webkit-background-size: 27px auto;
	-moz-background-size: 27px auto;
	background-size: 27px auto;
}

#maincontainer #contact p.tel-number a{
	color: #fff;
	font-weight: bold;
}



/* transition */
header nav,
header nav section,
header nav ul,
header nav ul li,
header nav ul li a {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
ul.merit-list li span.hobby-img img{
   position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}


/*Footer*/
footer {
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
}


footer p.tel-number2 span{
	background: url(../images/tel_heada.png) no-repeat center;
	-webkit-background-size: 27px auto;
	-moz-background-size: 27px auto;
	background-size: 27px auto;
}
footer p.tel-number a,
footer p.tel-number2 a{
	font-family: 'Roboto', sans-serif;
	font-weight: bold;
	color: #fff;
}

footer ul{
	width: 100%;
	padding: 30px 0px;
	background-color: rgba(255,255,255,1.0);
	text-align: center;
	margin: 0px;
}
footer ul li{
	width: 100%;
	padding:  0px 20px;
	margin: 0px;
	display: inline;
	border-right: 1px solid #000;
}
footer ul li:last-child{
	border-right: none;
}
footer ul li a{
color: #000;
	text-decoration: none;
}
 
footer ul li a:hover{
	color: #000;
	text-decoration: underline;
}
footer p{
	width: 950px;
	display: block;
	margin: 0px auto;
	padding: 25px 0px 25px 0px;
	text-align: center;
}


small{
	clear:left;
	font-size:10px;
	line-height: 1em;
	color: #fff;
	font-style: normal;
	margin: 0px;
}



/*Other Style*/
a{
color: #666;
	text-decoration: none;
}
 
a:hover{
	color: #CCC;
	text-decoration: underline;
}


a img.linkimg{
background:none!important;
}
 
a:hover img.linkimg{
opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
background:none!important;
}

.ticket-jump a:hover{
	opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
}


 
.ios a:hover img.linkimg{
opacity:1;
}

.ios .ticket-jump a:hover{
	opacity:1;
}





.clearfix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;}
.clearfix{display:inline-block;}
/* hides from IE-mac¥*/
*html .clearfix{height:1%;}
.clearfix{display:block;}
/*End hide from IE-mac*/

.clearboth{
	clear:both;
}
.wrapper{
	margin-bottom: 20px;
}
.left-block{
	float: left;
	width: 47%;
}
.right-block{
	float: right;
	width: 47%;
}
.left-block img,
.right-block img{
	width: 100%;
}
.single-block{
	width: 700px;
	margin:0px auto;
}
.single-block table.timetable tbody td{
	padding: 15px 5px;
}

#about-left h3,
#maincontainer .left-block h3,
#maincontainer .right-block h3{
	margin-top: 0px;
}


#topBtn{
	position: fixed;
	bottom: 0px;
	right: 0px;
	font-size: 11px;
	line-height:12px;
	z-index: 100;
	text-align: center;
	display: block;
	padding: 0px;
	width: 60px;
	height: 60px;
	color: #000;
	overflow: hidden;
	background: url(../images/../images/top_btn.png) no-repeat center;
	-webkit-background-size: auto 70px;
	-moz-background-size: auto 70px;
	background-size: auto 70px;
}

#topBtn:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	text-decoration: none;
	
}
	

.ios #topBtn:hover {
	opacity: 1;
}
  
.clearfix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;}
.clearfix{display:inline-block;}
/* hides from IE-mac¥*/
*html .clearfix{height:1%;}
.clearfix{display:block;}
/*End hide from IE-mac*/


.section {
background-image: url(img/bg.jpg);
background-size: cover;
}

#fade{
	position: absolute;
	width: 100%;
	height: 100%;
	background: #000 ;
	z-index: 999;
	display: none;
		background: #000 url(../images/loading.gif) no-repeat center center;
	-webkit-background-size: 50px auto;
	-moz-background-size: 50px auto;
	background-size: 50px auto;
}

.nav-mr{
	margin-right: 0px !important;
}
.mb0{
	margin-bottom: 0px !important;
}
.mb5{
	margin-bottom: 5px !important;
}
.mb15{
	margin-bottom: 15px !important;
}
.mb30{
	margin-bottom: 30px !important;
}
.mb60{
	margin-bottom: 60px !important;
}
#scroll-nav ul li.nav-mr{
	padding-right: 0px !important;
	background: url(none);
}
.clear-both{
	clear:both;
}

#hamburger-menu{
	display: none;
}

/* Tablet */
@media screen and (max-width: 1000px) {
	

#scroll-nav ul{
	display: none;
}
#sp-nav{
	position: fixed;
	height: 70px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	z-index: 880;
	top: 0px;
	display: block;
	padding: 0px;
	}
#sp-nav nav{
	width: 95%;
	margin: 0px auto 0px auto !important;
}
#sp-nav nav h1{
	display: block;
	float: left;
	width: 224px;
	height: 37px;
	margin: 16px 0px 0px 10px;
}
#sp-nav nav h1 img{
	width: 100%;
	}

#main-visual nav{
	display:none;
}
.contents-wrapper{
	width:90%;
	padding:0px 0px;
	margin: 0 auto 100px auto;
}

.body-block{
	width:100%;
}

#main-visual{
	margin: 0 auto;
	min-width: 100%;
	width:  100%;
	min-height: 500px;
	padding: 1px 0px;
	text-align: center;
	clear:both;
}
#title-area{
}

#title-area h1{
	margin: 0px auto;
	padding: 50px 0px;
	text-align: center;
}
#title-area h1 img{
width: 80%;
}
#maincontainer h2{
	width: 100%;
	margin: 0px 0px 60px 0px;
	font-size: 35px;
	color: #fff;
	font-weight: bold;
	padding: 0px;
	height: 100px;
	text-align: center;
	line-height: 100px;
}
#maincontainer #about h3 img{
	width: 90%;
}
/*About*/
#maincontainer #about{
	background-position: center 100px;
	background-image: url(../images/about_back.jpg);
	-webkit-background-size: auto 400px;
	-moz-background-size: auto 400px;
	background-size: auto 400px;
}
#maincontainer #about .body-block{
	margin-left: 0%;
}
#maincontainer p.leadcopy{
	font-size: 25px;
	color: #fff;
	margin: 0px 0px 30px 0px;
	line-height: 1.5em;
}
/*Intro*/

#maincontainer #intro .intro-img img{
	width: 90%;
}	
/*Footer*/

footer p{
	width: 90%;
}


}

/* 調整スタイル */
@media screen and (max-width: 600px) {
	.br::before {
	content: "\A" ;
	white-space: pre ;
}
}
/* Smart Phone */
@media screen and (max-width: 480px) {
.contents-wrapper{
	width: 85%;
	margin: 0px auto 80px auto;
}
	#title-area h1{
	margin: 0px auto;
	padding: 35px 0px 35px 0px;
	text-align: center;
		width: 85%;
}
#title-area h1 img{
width: 80%;
}
#maincontainer h2{
	-webkit-background-size: auto 140px;
	-moz-background-size: auto 140px;
	background-size: auto 140px;
	width: 100%;
	margin: 0px 0px 50px 0px;
	font-size: 30px;
	color: #fff;
	font-weight: bold;
	padding: 0px;
	height: 90px;
	text-align: center;
	line-height: 90px;
}
	#maincontainer h3{
		font-size: 18px;
	line-height: 1.5em;
		padding: 0px 0px 10px 0px;
}
	#maincontainer ol li {
	font-size: 108%;
}
#main-visual{
	min-height: 290px;
}
.left-block{
	float: none;
	width: 100%;
}
.right-block{
	float: none;
	width: 100%;
}
#maincontainer #about{
	background-position: center 90px;
	background-image: url(../images/about_back.jpg);
	-webkit-background-size: auto 300px;
	-moz-background-size: auto 300px;
	background-size: auto 300px;
}
	
	
#maincontainer p {
	font-size: 108%;
}
	ul.link-list li p{
	font-size: 100% !important;
}
#maincontainer p.leadcopy{
	font-size: 20px;
	margin: 0px 0px 20px 0px;
	line-height: 1.5em;
}

	
/*About*/
#maincontainer #about{
	background-position: center 90px;
	background-image: url(../images/about_back_sp.jpg);
	-webkit-background-size: auto 200px;
	-moz-background-size: auto 200px;
	background-size: auto 200px;
}
	
ul.merit-list {
    margin: 0px 0px 30px 0px !important;
	padding:0px;
    width:100%;
}
ul.merit-list li {
	margin: 0px ;
	padding:0px !important;
	width: 100%;
}

	ul.link-list {
    margin:0 !important;
    width:100%;
}
	ul.link-list li {
	margin: 0;
	padding: 0px !important;
	width: 100%;
	list-style: none;
	display: block;
	background-image: none !important;
}

#maincontainer #access .address-img{
	float:none;
	margin: 15px 0px 0px 15%;
	width:70%;
}
	.block-left{
	float: none;
	width: 100%;
}
.block-right{
	float: none;
	width: 100%;
}
	#maincontainer #about .head-block{
	margin:0px 0px 60px 0px;
}
	ul.merit-list li img{
	height: 75px;
	margin: 0px 20px 0px 0px;
}
	/*Intro*/

#maincontainer #intro .intro-img img{
	width: 100%;
}	
	/*Footer*/
#footer-area{
	width: 85%;
	display: block;
	margin: 0px auto;
	padding: 45px 0px 90px 0px;
}
footer ul{
	width: 100%;
	padding: 0px !important;
	background-color: rgba(255,255,255,1.0);
	text-align: center;
	margin: 0px;
}
footer ul li{
	width: 100%;
	padding: 10px 0px !important;
	margin: 0px;
	display: list-item;
	border-right: none;
	border-bottom: 1px solid #999;
}
footer ul li:last-child{
	border-bottom: none;
}
footer ul li a{
	color: #000;
	text-decoration: none;
}
 
footer ul li a:hover{
	color: #999;
	text-decoration: none;
}
.mb-sp{
	margin-bottom: 60px !important;
}
}
