@charset "utf-8";

/*=============================================
 * body
 *=============================================*/

body {
	color: #000;
	font-family: "Yu Mincho", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ明朝体 Pro", "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 15px;
	line-height: 28px;
	letter-spacing: 1.5px;
	background: #F0EDE8 url(../img/shared/bg.jpg) center;
	max-height: 100%;
}

h1, h2, h3, h4, h5, h6 {
	margin: auto;
}

/*=============================================
 * #wrapper
 *=============================================*/

#wrapper {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}
.wrap {
	width: 1000px;
}

/*=============================================
 * header
 *=============================================*/

#header {
	min-height: 950px;
	position: relative;
}
#header .main {
	pointer-events: none;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
}
#header .main.fixed {
	background: rgba(0, 0, 0, .9);
	min-height: 70px;
	position: fixed;
	bottom: auto;
	z-index: 999999999;
}
#header .main > * {
	pointer-events: visible;
}
h1 {
	font-size: 15px;
	text-align:center;
	padding:0 0 1% 0;
}
#header .logo {
	margin: auto;
	width: 330px;
	height: 220px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
}
#header .tel {
}
#header .language {
	position: absolute;
	top: 40px;
	left: 50px;
}
/*一時アップ中止
#header .language_ttl{
	cursor:pointer;
}
*/
#header .main.fixed .language {
	top: 15px;
	left: auto;
}
#header .language_list{
	padding-top: 3px;	
}
#header .language li {
	margin: 0 10px;
	text-align: center;
	background-color:rgba(0,0,0,0.8);
	padding: 5px 10px;
	border-bottom:1px solid #555555;
}

#header .language a {
	display: inline-block;
	padding: 0 0 8px;
	border-bottom: 1px solid transparent;
}
#header .language a:hover,
#header .language li.active a {
	border-color: #FFF;
}
#header .online {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: 0;
}
#header .main.fixed .online {
	opacity: 1;
	visibility: visible;
	width: 20%;
}
#header .main.fixed .online img{
}
#header .online a {
	padding: 0;
	background:url(../img/shared/bnr_bg.jpg) no-repeat center top;
	background-size:cover;
	text-align: center;
	display: block;
	width: 100%;
	border: none;
	padding: 12px 0;
}
#header .nav {
	margin: auto;
	padding: 22px 0 10px;
	text-align: center;
	background: rgba(0, 0, 0, .9);
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	transition: none;
	-moz-transition: none;
	-webkit-transition: none;
}
#header .main.fixed .nav {
	opacity: 0;
	padding: 0;
	background: rgba(0, 0, 0, .8);
	top: 70px;
	left: auto;
	right: -100%;
	bottom: auto;
	visibility: hidden;
	transition:
		opacity .3s ease,
		background .3s ease,
		visibility .3s ease;
	-moz-transition:
		opacity .3s ease,
		background .3s ease,
		visibility .3s ease;
	-webkit-transition:
		opacity .3s ease,
		background .3s ease,
		visibility .3s ease;
}
#header .main.fixed .toggle.active ~ .nav {
	opacity: 1;
	right: 0;
	visibility: visible;
	transition:
		opacity .3s ease,
		background .3s ease,
		right .3s ease,
		visibility .3s ease;
	-moz-transition:
		opacity .3s ease,
		background .3s ease,
		right .3s ease,
		visibility .3s ease;
	-webkit-transition:
		opacity .3s ease,
		background .3s ease,
		right .3s ease,
		visibility .3s ease;
}
#header .main.fixed .nav li {
	display: block;
	margin: 0;
}
#header .main.fixed .nav a {
	display: block;
	padding: 10px 20px;
}
#header .main.fixed .nav a:hover {
	background: rgba(0, 0, 0, .3);
}
#header .nav li {
	display: inline-block;
	margin: 0 20px;
}
#header .nav .ttl,#header .fixed_nav .ttl {
	display: block;
}
#header .nav .sub,#header  .fixed_nav .sub {
	display: inline-block;
	padding-bottom: 4px;
	border-bottom: 1px solid transparent;
}
#header .nav a:hover .sub,
#header .nav li.active .sub {
	border-color: #858585;
}
.hover{
	display: block !important;
	visibility:visible !important;
	opacity: 1 !important;
}

#header .nav-target {
	pointer-events: none;
	opacity: 0;
	height: 87px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	visibility: hidden;
	z-index: -1;
}

#header .toggle {
	cursor: pointer;
	opacity: 0;
	position: absolute;
	top: 14px;
	right: 20px;
	z-index: 1;
	visibility: hidden;
}
#header .main.fixed .toggle {
	opacity: 1;
	visibility: visible;
}
#header .online-click {
	margin: auto;
	position: absolute;
	left: 37px;
	bottom: 125px;
}

/*=============================================
 * key
 *=============================================*/

#key {
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: inherit;
	position: relative;
	z-index: 1;
}
#key ul {
	min-height: inherit;
	z-index: 1;
}
#key li {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	min-height: inherit;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#key > * {
	position: relative;
	z-index: 2;
}

.sp_bnrlist1{
	display: none;
	overflow: hidden;
	padding-top: 2%;
    margin-bottom: 5%;
}
.sp_bnrlist1 li{
	width:50%;
	float: left;
	background-color:#fff;
	text-align: center;	
}
.sp_bnrlist1 li img{
	width: 100%;
	max-width:200px;
}
.sp_bnrlist1 li.bnr_w100{
	width: 100%;
}
.sp_bnrlist1 li a{
	border: 1px solid #E9E9E9;
	display: block;
}
.sp_bnrlist1 li.bnr_w100 a{
	padding: 0 25%;
}

/*=============================================
 * container
 *=============================================*/

#container {
	min-height: 100px;
}

/*=============================================
 * #socialbuttons
 *=============================================*/

#socialbuttons {
	margin: auto;
	padding: 35px 0 0;
	max-width: 350px;
}

/*=============================================
 * footer
 *=============================================*/

#footer {
	color: #FFF;
	text-align: center;
	background: url(../img/shared/bg0.jpg) center;
}
#footer .logo {
}
#footer .nav {
	padding: 20px 0;
	text-align: center;
	font-size: 15px;
	line-height: 30px;
	border-bottom: 1px solid #423f3D;
}
#footer .nav li {
	margin: 0 10px;
}
#footer .nav li + li {
}
#footer .nav li + li:before {
	display: none;
}
#footer .nav a:before {
	content: "＞";
	display: inline-block;
	padding-right: 5px;
}
#footer .lnk {
	padding: 20px 0 15px;
}
#footer .logo {
	padding: 0 0 15px;
	border-bottom: 1px solid #423f3D;
}
#footer .logo li {
	display: inline-block;
	margin: 5px;
}
#footer .bnr {
	padding: 20px 0 20px;
}
#footer .social {
	padding: 0 0 30px;
}
#footer .social li {
	display: inline-block;
	margin: 0 15px;
}
address {
	padding: 10px 0;
	background: #000;
}

#pagetop {
	right: 0;
	bottom: 60px;
}

.line-break {
	display: block;
}


span.mail_link{
    background-color: #000;
    padding: 4px 14px;
    color: white;
}
span.mail_link:hover{
    background-color: #333;
}

.menu_course_txt{
	font-size:15px;
}
.br-sp{
	display: none;	
}