* {
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ ゴシック","Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}
/* --　記事内の装飾 --*/
body{
	margin: 0px;
}
body a img{
	border-style: none;
}
body img{
	vertical-align: bottom;
}
a{
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	cursor: pointer;
	cursor: hand;
}
body ul li{
    list-style: none;
}
header{
}

#maincontainer{
    margin-top: 60px;
     background-repeat: repeat-y;
	background-position: center;
    min-height: calc(100vh - 175px);
     background: url("../images/bg_color.png") repeat-y center;
	-webkit-background-size: calc(100vw - 30px) auto;
	-moz-background-size: calc(100vw - 30px) auto;
	background-size: calc(100vw - 30px) auto;
}
/*Global Navigaton*/

#global-nav {
	width: 100%;
	min-width: 1000px;
	height: 70px;
	position: relative;
	top: 0px;
    background-color: #fff;
    position: fixed;
	z-index:150;
}

#global-nav section{
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
	margin-top: 0px;
    width: 90%;
}
#global-nav h1{
		width: 250px;
    height: 27px;
	float: left;
	 margin: 23px 0px 0px 0px;
    display: block;
     background: url(../images/main_logo2.png) no-repeat center;
	-webkit-background-size: auto 27px;
	-moz-background-size: auto 27px;
	background-size: auto 27px;
    text-indent: -9999px;
    overflow: hidden;
}
#global-nav h1 a{
    display: block;
}
#global-nav h1 img{
	width: 100%;
}
#global-nav ul{
    padding: 0;
}

#global-nav ul.inside-link{
	float: left;
	margin: 25px 0px 0 50px;
    height: 15px;
}
#global-nav ul.outside-link{
	float: left;
	margin: 25px 0px 0 25px;
    height: 15px;
}
#global-nav ul.inside-link li{
	float: left;
	margin: 0 0 0 30px;
    padding: 0;
	font-size: 15px;
    text-align: center;
    line-height: 14px;
    height: 21px;
}
#global-nav ul.outside-link li{
	float: left;
	margin: 0px 10px 0px 10px;
    padding: 0;
	font-size: 15px;
    text-align: center;
    line-height: 15px;
    height: 15px;
}

#global-nav ul li a{
	color: #444;
	display: block;
    font-weight: normal;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#global-nav ul li a:hover{
	color: #999;
	text-decoration:none;
}
#global-nav ul li img{
	width: 15px;
    height: 15px;
}
/* transition */
#global-nav,
#global-nav::after,
#global-nav section,
#global-nav h1,
#global-nav h1 img,
#global-nav ul,
#global-nav ul li,
#global-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;
}

#sp-nav{
	display: none;
}

#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{
	-js-display: flex;
	display: flex;
  justify-content: center;
  align-items: center;
}
.contents-wrapper{
	width:90%;
	padding:100px 0px;
	margin: 0px auto;
    max-width: 1440px;
}

#page-nav{
    margin: -50px 0 90px !important;
}
#page-nav ul{
    margin: 0 !important;
    padding: 0;
   text-align: center;
}
#page-nav ul li{
    display: inline;
    margin: 0px -2px !important;
    font-weight: normal;
    white-space: nowrap;
    padding: 0px!important;
    background-image: none !important;
    line-height: 14px;
}

#page-nav ul li:nth-child(1){
    margin: 0px 0px 0px 0px;
}

#page-nav ul li a{
	color: #000;
	padding: 7px 20px;
	letter-spacing: 0.1em;
    border-right: solid 1px #aaa;
    line-height: 14px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#page-nav ul li:nth-child(1)  a{
    border-left: solid 1px #aaa;
}
#page-nav ul li a:hover{
	color: #999;
	text-decoration: none;
}

#maincontainer h1{
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 35px;
	color: #000;
	text-align: center;
	margin: 0px 0px 80px 0px;
    padding: 0 0 5px 0;
	line-height: 1.5em;
    letter-spacing: 0.1em;
}

#maincontainer h2{
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 32px;
	color: #000;
	margin: 0px 0px 50px 0px;
	line-height: 1.5em;
    text-align: center;
}
#maincontainer.privacy h2{
	font-size: 20px;
	color: #000;
	margin: 0px 0px 10px 0px;
	line-height: 1.5em;
    border-bottom: solid 1px #999;
    padding-bottom: 5px;
}

#maincontainer h3{
	 font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin: 0px 0px 10px 0px;
	color: #000;
	font-weight: normal;
	padding: 0px;
	text-align: center;
    line-height: 2em;
    font-size: 16px;
}
#maincontainer p.leadcopy{
    line-height: 2em;
    font-size: 15px;
    text-align: center;
}

#maincontainer  h4 {
	font-size: 15px;
	line-height: 1.5em;
	color: #000;
	font-weight: normal;
	margin-bottom: 0.7em;
}


#maincontainer p {
	font-size: 14px;
	line-height: 1.8em;
	margin-top: 0px;
	margin-bottom: 1.5em;
	color: #000;
}
#maincontainer.privacy p{
	margin-bottom: 30px;
}
#maincontainer p em {
	font-style: normal;
	font-weight: bold;
	color: #F60;
}

#maincontainer p.caption,
#maincontainer p .caption,
#maincontainer ul li .caption {
	font-size: 13px;
	color: #666;
}


#maincontainer ul {
	list-style-type: none;
	padding: 0px;
	margin-bottom: 30px;
	margin-left: 3px;
	margin-top: 0px;
}
#maincontainer ul li {
	color: #000;
	margin-bottom: 0.5em;
	padding-left: 10px;
	line-height: 1.8em;
	padding-bottom: 5px;
	font-size: 14px;
}
#maincontainer ol {
	padding: 0px;
	margin-bottom: 30px;
	margin-top: 0px;
}
#maincontainer ol li {
	color: #000;
    margin-left: 14px;
	margin-bottom: 0.5em;
	padding-left: 10px;
	line-height: 1.8em;
	padding-bottom: 5px;
	font-size: 14px;
}
#maincontainer ul li em{
	font-style: normal;
	color: #F60;
}
#maincontainer ul li{
    background-repeat: no-repeat;
	background-position: 0px 0.7em !important;
    background: url(../images/li_head.png) no-repeat center left;
}
.center{
    text-align: center!important;
}
.link-button {
	width:100%;
    text-align: center;
}
.link-button a {
	display: block;
	display: inline-block;
    position: relative;
	width: 50%;
	margin: 0px auto 40px auto;
	clear: both;
	color: #fff !important;
    box-sizing: border-box;
	padding: 0px;
	height: 40px;
	text-align: center;
	line-height: 40px;
	letter-spacing: 0.1em;
	font-family: 'sans-serif';
    background-color: #ccc;
}

.link-button a:hover {
	color: #ccc;
	text-decoration: none;
    background-color: #666;
    color: #fff !important;
}

.link-button a {	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

/*works*/
/*works gallery*/
ul.photo-list {
    margin:0 0 50px -1% !important;
	padding:0px;
    width:101%;
}
ul.photo-list li {
	margin: 0 0 1% 1% !important;;
	padding: 0 0 0 0 !important;
	width: 24%;
	list-style: none;
	display: block;
	background-image: none !important;
}
ul.photo-list li a{
    display: block;
	overflow: hidden;
}
ul.photo-list li a img{
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
    vertical-align: bottom;
}
ul.photo-list li img{
	background-image: none;
  max-height:initial;
}
ul.photo-list li a:hover img{
	-moz-opacity: 0.5;
	opacity: 0.5;
    transform: scale(1.1, 1.1);
}
ul.photo-list,
ul.photo-list li,
ul.photo-list li img {
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}



.right-block{
    float: right;
    width: 48%;
}
.left-block{
    float: left;
    width: 48%;
}
/*plan*/
#plan .right-block{
    width: 48%;
    border: 6px solid white;
  box-sizing:border-box;
}
#plan .left-block{
    width: 48%;
}

#plan .right-block h3{
	margin: 0px 0px 10px 0px;
	color: #000;
	font-weight: normal;
	padding: 26px 0px 20px 0px;
	text-align: center;
    line-height: 20px;
    font-size: 20px;
}
#plan ol {
	margin: 0px 30px 30px 30px;
}
#plan .course-box{
    background-color: #fff;
	margin-bottom: 30px;
}
#plan .left-block h3{
	font-size: 18px;
    border-bottom: solid 1px #ccc;
    margin: 0px 30px 0px 30px;
    padding: 15px 0px;
    line-height: 18px;
}
#plan .left-block h3 span{
	font-size: 14px;
}
#maincontainer p.price{
	font-size: 22px;
    margin: 0px 30px 10px 30px;
    padding: 15px 0px;
    line-height: 22px;
    text-align: center;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#maincontainer p.price span{
	font-size: 14px;
}
/*Contact*/
.frame-box{
    margin: 0 auto;
    background-color: #fff;
    border: 30px solid White;
  box-sizing: border-box;
}
#maincontainer #contact .frame-box .right-block p,
#maincontainer #contact .frame-box .right-block p a,
#maincontainer #contact .frame-box .left-block p{
    margin-bottom: 0 !important;
}
#maincontainer #contact .frame-box .link-button a {
	width:  100%;
}
#contact .contents-wrapper{
	padding:0px 0px 200px 0px!important;
}







/*Footer*/
footer {
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
}
footer section{
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
    text-align: center;
}


#footer-area{
	margin: 0px auto;
	padding: 45px 0;
    margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
	margin-top: 0px;
    width: 90%;
    max-width: 1440px;
}
#footer-area h2{
	width: 125px;
    height: 27px;
	float: left;
    margin: -3px 0px 0px 0px;
    display: block;
    background: url(../images/main_logo3.png) no-repeat center;
	-webkit-background-size: auto 27px;
	-moz-background-size: auto 27px;
	background-size: auto 27px;
    text-indent: -9999px;
    overflow: hidden;
}
#footer-area h2 img{
	width: 100%;
}
#footer-area ul{
    padding: 0;
}
#footer-area ul.inside-link{
	float: left;
	margin: 0px 0px 0 50px;
    height: 15px;
}
#footer-area ul.outside-link{
	float: left;
	margin: 0px 0px 0 25px;
    height: 15px;
}
#footer-area ul.inside-link li{
	float: left;
	margin: 0 0 0 30px;
    padding: 0;
	font-size: 15px;
    text-align: center;
    line-height: 14px;
    height: 21px;
}
#footer-area ul.outside-link li{
	float: left;
	margin: 0px 10px 0px 10px !important;
    padding: 0;
	font-size: 15px;
    text-align: center;
    line-height: 15px;
    height: 15px;
}

#footer-area ul li a{
	color: #000;
	display: block;
    font-weight: normal;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

#footer-area ul li a:hover{
	color: #999;
	text-decoration:none;
}
#footer-area ul li img{
	width: 15px;
    height: 15px;
}
/*Footer transition */
#footer-area,
#footer-area::after,
#footer-area section,
#footer-area h1,
#footer-area h1 img,
#footer-area ul,
#footer-area ul li,
#footer-area 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;
}


#footer-area ul li a,
#footer-area 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;
}

small{
	font-size: 12px;
	line-height: 1em;
	color: #000;
	font-style: normal;
    float: right;
    margin-top: -12px;
}


/*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;
}


 
.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;
}

.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;
}

.ios #page-top 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*/

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

/*pagetop button*/
#page-top {
	position: fixed;
	bottom: 10px;
	right: 20px;
    text-indent: -9999px;
	line-height:0px;
	z-index: 100;
}
#page-top  {	
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
#page-top a {
	display: block;
	padding: 0px;
	width: 30px;
    height: 30px;
	color: #000;
    position: relative;
    border-radius: 50%;
	white-space: nowrap;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
    background-color: #999;
}

#page-top a::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 50%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateX(50%)  translateY(75%) translateY(15%) rotate(-45deg);
}
#page-top a img {
	width:100%;
}
#page-top a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	text-decoration: none;
	
}
#fade{
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff url(../images/loading.gif) no-repeat center center;
	-webkit-background-size: 50px auto;
	-moz-background-size: 50px auto;
	background-size: 50px auto;
	z-index: 999;
	display: none;
}

.nav-mr{
	margin-right: 0px !important;
}
.mb0{
	margin-bottom: 0px !important;
}
.mb5{
	margin-bottom: 5px !important;
}
.mb15{
	margin-bottom: 15px !important;
}

.clear-both{
	clear:both;
}

#hamburger-menu{
	display: none;
}
/* ====================================================================================================================================== */
/* Gallery */
@media screen and (max-width: 1300px) {
ul.photo-list {
    margin:0 0 50px -1% !important;
	padding:0px;
    width:101%;
}
ul.photo-list li {
	margin: 0 0 1% 1% !important;;
	padding: 0 0 0 0 !important;
	width: 32.33%;
	list-style: none;
	display: block;
	background-image: none !important;
}
}
/* ====================================================================================================================================== */
/* Tablet */
@media screen and (max-width: 1000px) {

#sp-nav{
	position: fixed;
	height: 60px;
	width: 100%;
	background-color: #fff;
	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{
	width: 95%;
	margin: 0px auto 0px auto !important;
}
    #sp-nav h1{
   width: 222px;
    height: 24px;
	float: left;
	margin: 18px 0px 0px 4%;
    display: block;
     background: url(../images/main_logo2.png) no-repeat center;
	-webkit-background-size: auto 24px;
	-moz-background-size: auto 24px;
	background-size: auto 24px;
    text-indent: -9999px;
    overflow: hidden
    }
    #sp-nav h1 a{
    display: block;
    }

#main-visual nav{
	display:none;
}
  
/*Global Navigaton*/

#global-nav {
	width: 100%;
	min-width: 100%;
	height: 30px;
}

#global-nav section{
	display: none;
}
#global-nav.fixed{
}

/* Fixed */
#maincontainer.fixed{
    margin-top: 30px;
}
#global-nav.fixed{
	height: 30px;
	position: fixed;
}   
.contents-wrapper{
	width: 90%;
	margin: 0px auto;
	padding:30px 0px 70px;
}
.body-block{
	width:100%;
}
#main-visual{
	margin: 0 auto;
	min-width: 100%;
	min-height: 750px;
	padding: 1px 0px;
	text-align: center;
	clear:both;
}
#maincontainer h1{
	margin: 0px 0px 50px 0px;
}
#plan .left-block h3 span:before{
      content: "\A";
    white-space: pre;
}
/*Footer*/
footer {
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
}
#footer-area{
	width: 90%;
	display: block;
	margin: 0px auto;
	padding: 45px 0px;
}
#footer-area ul{
	display: none;
}
.br::before {
	content: "\A" ;
	white-space: pre ;
}
}
/* 調整スタイル */
@media screen and (max-width: 600px) {

	#footer-area .footer-info{
	float:none;
	width: 100%;
}
}
/* ====================================================================================================================================== */
/* Gallery */
@media screen and (max-width: 500px) {
ul.photo-list {
    margin:0 0 50px -1% !important;
	padding:0px;
    width:101%;
}
ul.photo-list li {
	margin: 0 0 1% 1% !important;;
	padding: 0 0 0 0 !important;
	width: 49%;
	list-style: none;
	display: block;
	background-image: none !important;
}
}
/* ====================================================================================================================================== */
/* Smart Phone */
@media screen and (max-width: 480px) {
.contents-wrapper{
	width: 80%;
	margin: 0px auto;
}
#head-set{
	height: auto;
	width: 70%;
	margin-right: 0;
	margin-bottom: 0;
}
#maincontainer{
	-webkit-background-size: calc(100vw - 20px) auto;
	-moz-background-size: calc(100vw - 20px) auto;
	background-size: calc(100vw - 20px) auto;
}
#maincontainer h1{
    font-size: 30px;
}
#maincontainer h2{
    font-size: 20px;
}
#main-visual{
	min-height: 290px;
}
#maincontainer p {
	font-size: 14px;
}
#maincontainer ul li {
	padding-bottom: 3px;
	font-size: 14px !important;
}
ul.link-list li p{
	font-size: 14px !important;
}
#maincontainer p.leadcopy{
    line-height: 1.8em;
}
#maincontainer p.caption,
#maincontainer p .caption,
#maincontainer ul li .caption {
	font-size: 12px;
}

#page-nav{
    margin: -40px 0 70px !important;
}
#page-nav ul{
    margin: 0 !important;
    padding: 0;
   text-align: center;
}
#page-nav ul li{
    display: inline;
    line-height: 12px;
}

#page-nav ul li a{
	color: #000;
	padding: 5px 10px;
	letter-spacing: 0.1em;
    border-right: solid 1px #aaa;
    line-height: 12px;
}
#page-nav ul li:nth-child(1)  a{
    border-left: solid 1px #aaa;
}
    
.right-block{
    float: none;
    width: 100%;
}
.left-block{
    float: none;
    width: 100%;
}
/*plan*/
#plan .right-block{
    width: 100%;
    border: 6px solid white;
  box-sizing:border-box;
}
#plan .left-block{
    width: 100%;
}


#plan ol {
	margin: 0px 20px 20px 20px;
}
#plan .course-box{
    background-color: #fff;
	margin-bottom: 20px;
}
#plan .left-block h3{
	font-size: 18px;
    border-bottom: solid 1px #ccc;
    margin: 0px 20px 0px 20px;
    padding: 15px 0px;
    line-height: 18px;
}
#plan .left-block h3 span{
	font-size: 14px;
}

/*Contact*/
.frame-box{
    border: 20px solid White;
}
    .frame-box p{
   padding-bottom: 20px;
}
    .frame-box p.link-button,
    .frame-box p.link-button a{
   margin-bottom: 0px !important;
    padding-bottom: 0px;
}

#contact .contents-wrapper{
	padding:0px 0px 40px 0px!important;
}


/*Footer*/
footer {
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
}
footer section{
	clear: both;
	padding: 0px;
	width: 100%;
	display: block;
	margin: 0px;
    text-align: center;
}

#footer-area{
	width: 85%;
	display: block;
	margin: 0px auto;
	padding: 15px 0px 15px 0px;
    border: none;
}
#footer-area h2 {	
	float: none;
    margin: 10px auto 0 auto;
}

small{
	float: none;
}


}
