@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
img,abbr,acronym,fieldset{border:0;}

body{
	text-align: center;
	margin: 0;
	padding: 0;
	color: #333333;
	background: #ffffff ;
	list-style: none ;
	font: 16px/1.7 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	font-weight: 300;
}

h2 {
	max-width: 100% ;
	padding: 10px 0px ;
	margin:0 auto 1.5em;
	color: #00008b ;
	background: #eaf3ff ; 
	border-bottom: solid 3px #516ab6 ;
	text-align: center ;
}

h3 {
	max-width: 100% ;
	padding: 10px 0px ;
	margin:0 auto 1.5em;
	color: #32cd32 ;
	text-align: center ;
}

h4 {
	max-width: 100% ;
	padding: 10px 0px ;
	margin:0 auto 1.5em;
	color: #333333 ;
	font-size: 20px ;
	font-weight: bold;
	text-align: center ;
}

#container{
	max-width: 100% ;
	text-align:left;
	margin:0 auto;
	background: #ffffff ;
}

.contents-img {
	padding-bottom: 20px ;
	max-width: 100% ;
	text-align:center;
	margin:0 auto;
	content: "";
	display: block;
	clear: both;
}

.contents-img img {
	max-width: 100% ;
	text-align:center;
	margin:0 auto;
}

.inst-img {
	padding-bottom: 100px ;
	max-width: 100% ;
	text-align:center;
	margin:0 auto;
	content: "";
	display: block;
	clear: both;
}

.inst-img img {
	max-width: 90% ;
	text-align:center;
	margin:0 auto;
}

.contents {
	padding-bottom: 20px ;
	max-width: 100% ;
	text-align:center;
	margin:0 auto;
	background: #f5f5dc ;
	border-bottom: solid 1px #516ab6 ;
	text-decoration:none ;
}

.contents li {
	list-style-type: none ;
	font-size: 20px ;
	padding-bottom: 20px ;
}

.contents li a {
	color: #c71585 ;
	text-decoration: none ;
}
.contents a:hover,
.contents a:active {
	background: #f8f8ff ;
}

.maps{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0;
	height: 0;
	overflow: hidden;
}

.maps iframe,
.maps object,
.maps embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

#instructor {
	max-width: 1200px ;
	text-align:left ;
	margin:0 auto ;
}

.introduction {
	max-width: 700px ;
	text-align:left ;
	margin:0 auto ;
}

.inst-detail {
	max-width: 400px ;
	float: left ;
}

.portrait {
	max-width: 200px ;
	float: right ;
	text-align: right ;
}

.portrait img {
	max-width: 200px ;
}
ul.lesson{
	list-style: none;
	padding: 0;
}

.lesson li {
	margin:0 auto ;	
	text-align: center ;
	padding-bottom: 10px ;
}

.lesson li a {
	color: #c71585 ;
}
#lesson a:hover,
#lesson a:active {
	background: #f8f8ff ;
}

#footer {
	background: linear-gradient(10deg, #ffffff, #f5f5dc) ;
	content: "";
	display: block;
	clear: both;
}

#footer-inner {
	width: 100% ;
	margin:0 auto ;
	padding-top: 30px ;
	text-align: center;
	color: #333333 ;
	font-size: 12px ;
}

#header {
	max-height:550px ;
	max-width: 1200px ;
	text-align:left ;	
	margin:0 auto 20px;
	overflow: auto ;
}

#header h1 {
	font-size: 20px ;
	font-weight: bold ;
	color: #00ff00 ;
	padding: 5px 0px 0px 20px ;
	float: left ;
}

#header-menu {
	max-width: 800px ;
	float: right ;
	padding-top: 10px ;
	padding-right: 10px ;
	text-align: center ;
}

ul#header-menu {
	width: 100% ;
	margin-top:0px;
	padding-left: 0px ;
}

ul#header-menu a {
	width: 100% ;
	color: #1e90ff;
	text-decoration: none;
}
ul#header-menu a:link,
ul#header-menu a:visited {
	background: #ffffff ;
}
ul#header-menu a:hover,
ul#header-menu a:active {
	background: #f8f8ff ;
}

ul#header-menu li {
	float: left;
	position: relative;
	width: 150px;
	font-size:15px;
	list-style:none;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999;
	padding-bottom: 5px ;
}
ul#header-menu li a {
	display: block;
	width: 150px;
	text-align: center;
	padding-top:6px;
	margin-top:-3px;
}

#navimenu {
	width: 100% ;
	height: 32px ;
}

ul#navimenu {
	width: 100% ;
	height: 32px ;
	margin-top:0px;
	padding-left: 0px ;
	padding-bottom: 20px ;
}

ul#navimenu a {
	width: 100% ;
	color: #ffffff;
	text-decoration: none;
}
ul#navimenu a:link,
ul#navimenu a:visited {
	background-image: url(https://nankaibuhin.net/webimg/header_bg_bk.png);
	background-repeat: repeat-x;
}
ul#navimenu a:hover,
ul#navimenu a:active {
	background-image: url(https://nankaibuhin.net/webimg/header_bg_gy.png);
	background-repeat: repeat-x;
}

ul#navimenu li {
	float: left;
	position: relative;
	width: 228px;
	height: 32px;
	font-size:15px;
	list-style:none;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999;
}
ul#navimenu li a {
	display: block;
	width: 228px;
	height: 32px;
	text-align: center;
	padding-top:6px;
	margin-top:-3px;
}

.box {
	margin-bottom: 40px;
}
.box dl {
	text-align: center;
	margin-bottom: 20px;
}
.box dt {
	font-size: 18px;
	margin-bottom:10px;
}
.box dt:before {
	content: '◆';
}
.box dd {
	margin-bottom: 30px;
}
span.sub {
	font-size: 14px;
	font-weight: normal;
	display: block;
}
.center {
	text-align: center;	
}
.bnr {
	margin-bottom: 1em;
}
.bnr h3 {
	margin: 0 auto;
	padding: 0 0 10px;
}
.bnr a:hover img {
	opacity: 0.8;
}
.in_bl {
    display: inline-block;
}