
* {
	border: none;
	margin: 0px;
	padding: 0px;
}

html {
	min-width: 1150px;
	overflow-y: scroll;
}

body {
	color: black;
	font-family: YuGothic, "Yu Gothic", sans-serif;
	font-weight: 500;
}

.sp {
	display: none;
}

h1,
h2,
h3,
h4 {
	text-align: center;
}

h2.title {
	padding: 55px 0px 15px 0px;
}

div.body h2 {
	background-color: #d7a600;
	border-radius: 20px;
	color: white;
	margin: 0px -20px;
	padding: 5px 10px;
	text-align: center;
}

p {
	line-height: 1.9em;
	margin: 15px 0px;
	text-align: justify;
	text-justify: distribute;
}

p.mn {
	margin: 0px;
}

p.right {
	text-align: right;
}

p.mn-right {
	margin: 0px;
	text-align: right;
}

p.center {
	text-align: center;
}

p.mn-center {
	margin: 0px;
	text-align: center;
}

sup,
sub {
	font-size: 80%;
	line-height: 4px;
	vertical-align: top;
}

a {
	color: black;
	font-weight: normal;
	overflow: hidden;
}

a:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.50;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	opacity: 0.50;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

span.link-btn a,
a.link-btn {
	background: url(images/link_btn_y.png) right center no-repeat white;
	border-radius: 0px 30px;
	font-size: 120%;
	font-weight: bold;
	padding: 22px 150px;
	text-align: center;
	text-decoration: none;
}

span.link-btn-prev a,
a.link-btn-prev {
	background: url(images/link_btn_prev.png) left center no-repeat #ffc900;
	border-radius: 10px;
	color: black;
	font-weight: bold;
	padding: 10px 45px 10px 55px;
	text-align: center;
	text-decoration: none;
}

span.link-btn-next a,
a.link-btn-next {
	background: url(images/link_btn.png) right center no-repeat #ffc900;
	border-radius: 10px;
	color: black;
	font-weight: bold;
	padding: 10px 45px 10px 55px;
	text-align: center;
	text-decoration: none;
}

div.body a.link-btn,
a.link-btn-y {
	background: url(images/link_btn.png) right center no-repeat #ffd900;
	border-radius: 0px 30px;
	display: inline-block;
	font-size: 110%;
	font-weight: bold;
	padding: 10px 0px;
	text-align: center;
	text-decoration: none;
	width: 280px;
}

a.link-btn-s {
	background: url(images/link_btn_y.png) right center no-repeat white;
	border-radius: 0px 30px;
	display: inline-block;
	font-size: 110%;
	font-weight: bold;
	padding: 10px 0px;
	text-align: center;
	text-decoration: none;
	width: 300px;
}

ul {
	list-style-type: none;
}

ol {
	line-height: 1.5em;
	margin-left: 2em;
}

ol li {
	margin-top: 5px;
}

sup {
	line-height: 1em;
}

table {
	border-collapse: collapse;
	line-height: 1.8em;
	width: 100%;
}

span.gray {
	color: gray;
}

span.red {
	color: red;
}

span.xx-large {
	font-size: 200%;
	line-height: 1.5em;
}

span.x-large {
	font-size: 150%;
	line-height: 1.5em;
}

span.large {
	font-size: 125%;
	line-height: 1.5em;
}

span.small {
	font-size: 85%;
	line-height: 1.4em;
}

ul.list {
	line-height: 1.3em;
	text-align: justify;
	text-justify: distribute;
}

ul.list li {
	background: url(images/ul_list_li.png) no-repeat 5px 13px;
	display: block;
	padding: 6px 0px 6px 20px;
}

ul.notelist {
	line-height: 1.5em;
	list-style-type: none;
	margin: 5px 0px 0px 1.8em;
}

ul.notelist li {
	line-height: 1.5em;
	padding: 3px 0px;
	text-indent: -1.2em;
}

ul.notelist li span.maker {
	margin-right: 0.2em;
}

div.space10px {
	clear: both;
	font-size: 5px;
	height: 10px;
}

div.space15px {
	clear: both;
	font-size: 5px;
	height: 15px;
}

div.space20px {
	clear: both;
	font-size: 5px;
	height: 20px;
}

div.space50px {
	clear: both;
	font-size: 5px;
	height: 50px;
}

/***********************************************************************/


table.lesson-table th {
	background-color: #656565;
	border-bottom: 1px solid white;
	border-top: 1px solid white;
	color: white;
	line-height: 1.2em;
	padding: 15px 20px;
	text-align: center;
	width: auto;
}

table.lesson-table th a {
	color: white;
	font-weight: bold;
}

table.lesson-table td a {
	display: block;
	font-weight: bold;
}

table.lesson-table td {
	background-color: #cecece;
	border: 1px solid white;
	border-right: none;
	line-height: 1.2em;
	padding: 15px 10px;
	text-align: left;
}

table.lesson-table td.detail {
	border: none;
	border-bottom: 1px solid white;
	padding: 0px;
}

table.lesson-table td.detail table tr:first-child td {
	border-top: none;
}

table.lesson-table td.detail table tr:last-child td {
	border-bottom: none;
}

table.lesson-table td.w {
	background-color: #656565;
	color: white;
	text-align: center;
	width: 10%;
}

table.lesson-table td.p {
	text-align: center;
	width: 10%;
}

table.lesson-table td.n {
	text-align: center;
	width: 12%;
}

table.lesson-table td.t {
	text-align: center;
	white-space: nowrap;
	width: 8%;
}

table.lesson-table td.l {
	width: 30%;
}

table.lesson-table td.detail table td.c {
	width: 20%;
}

table.lesson-table td.detail table td.nego {
	border-top: none;
	padding: 15px 20px;
}


table.list-table th {
	background-color: #656565;
	border: 1px solid white;
	color: #fff;
	padding: 10px 20px;
	text-align: center;
	width: auto;
}

table.list-table td {
	background-color: #cecece;
	border: 1px solid white;
	padding: 5px 10px;
	text-align: left;
}

table.list-table tr th a {
	color: white;
	font-weight: bold;
}

div.teacher {
	display: inline-block;
	margin: auto;
	padding: 10px 30px;
	width: 280px;
}

div.teacher div.img {
	padding-bottom: 30px;
}

div.teacher table.teacher th {
	background-color: #ffd900;
	border-radius: 8px;
	padding: 3px 10px;
}

div.teacher table.teacher td {
	padding: 5px 10px;
}

/***********************************************************************/
ul.blog-list li {
	display: inline-block;
	padding: 0px 15px 40px 15px;
	vertical-align: top;
	width: 230px;
}

ul.blog-list li p {
	text-align: center;
}

ul.blog-list li a {
	text-decoration: none;
}

ul.blog-list li p.category span {
	font-size: 80%;
	padding: 4px 8px;
}

ul.blog-list li p.category span.class {
	background-color: #bff5ff;
}

ul.blog-list li p.category span.voice {
	background-color: #ffcaca;
}

ul.blog-list li p.category span.news {
	background-color: #ccf9b6;
}

ul.blog-list li p.date {
	font-size: 90%;
	line-height: 0.8em;
}

body#single div.body ul {
	border-top: 3px dotted #ffc900;
	line-height: 1.3em;
	text-align: justify;
	text-justify: distribute;
}

body#single div.body ul li {
	background: url(images/ul_list_li.png) no-repeat 20px 25px;
	border-bottom: 3px dotted #ffc900;
	display: block;
	padding: 20px 10px 20px 30px;
}

span.class a.link-btn {
	background-color: #d9f9ff;
	display: block;
	margin: auto;
	width: 350px;
}

span.voice a.link-btn {
	background-color: #fff0f0;
	display: block;
	margin: auto;
	width: 350px;
}

span.news a.link-btn {
	background-color: #dcfbce;
	display: block;
	margin: auto;
	width: 350px;
}

div.page a.next {
	background: url(images/link_btn.png) right center no-repeat #ffc900;
	border-radius: 10px;
	font-weight: bold;
	padding: 10px 55px 10px 45px;
	text-align: center;
	text-decoration: none;
}

div.page a.prev {
	background: url(images/link_btn_prev.png) left center no-repeat #ffc900;
	border-radius: 10px;
	font-weight: bold;
	padding: 10px 45px 10px 55px;
	text-align: center;
	text-decoration: none;
}

div.page p.page {
	display: inline;
	padding: 0px 20px;
}

div.page p.page span.current,
div.page p.page a {
	padding: 0px 5px;
}

/***********************************************************************/
#header-bg {
	background-color: black;
}

#header {
	height: 75px;
	margin: 0px auto;
	position: relative;
	width: 1080px;
}

#header #header-logo {
	margin: auto;
	padding-top: 21px;
	width: 518px;
}

#maintitle {
	background-position: center center;
	background-repeat: no-repeat;
	height: 300px;
}

#maintitle #title {
	display: block;
	padding-top: 100px;
	text-align: center;
}

#maintitle-s {
	background-position: center center;
	background-repeat: no-repeat;
	height: 200px;
}

#maintitle-s #title {
	display: block;
	padding-top: 55px;
	text-align: center;
}

div.main {
	margin: 0px auto;
	text-align: center;
	width: 1080px;
}

div.main-s {
	margin: 0px auto;
	text-align: center;
	width: 980px;
}

div.bg-yellow {
	background: url(images/bg_yellow.gif)repeat;
	clear: both;
}

div.bg-paleyellow {
	background: #fff9d7;
	clear: both;
}

div.bg-pink {
	background-color: #fff0f0;
	clear: both;
	padding: 35px 20px 20px 20px;
}

div.bg-blue {
	background-color: #d9f9ff;
	clear: both;
	padding: 35px 20px 20px 20px;
}

div.bg-green {
	background-color: #dcfbce;
	clear: both;
	padding: 35px 20px 20px 20px;
}

div.news {
	background-color: #fff9d5;
	border-radius: 20px;
	margin: auto;
	padding: 10px 30px 30px 30px;
	width: 700px;
}

div.news div.title {
	border-bottom: 3px dotted #ffc900;
	padding-bottom: 10px;
}

div.news div.single {
	border-bottom: 3px dotted #ffc900;
}

div.news div.single a {
	display: block;
	padding: 20px;
	text-decoration: none;
}

div.news div.single a span.img {
	display: table-cell;
	padding-right: 30px;
	vertical-align: middle;
	width: auto;
}

div.news div.single a span.text {
	display: table-cell;
	vertical-align: middle;
	width: 470px;
}

div.news div.single a span.text strong {
	display: block;
	font-size: 120%;
	padding: 5px 0px 30px 0px;
	text-decoration: underline;
}

div.news div.single a span.text span.detail {
	background: url(../images/link_btn.png) right center no-repeat #ffd900;
	border-radius: 10px;
	font-size: 100%;
	font-weight: bold;
	padding: 10px 50px;
	text-align: center;
	text-decoration: none;
}

div.sup {
	border: 3px dotted #ffc900;
	border-radius: 20px;
	color: black;
	margin: auto;
	padding: 22px 0px 10px 0px;
	width: 650px;
}

div.sup h3 {
	border-bottom: 2px solid #ffc900;
	display: inline;
	font-size: 110%;
}

ul.studio-img {
	text-align: center;
}

ul.studio-img li {
	display: inline-block;
    padding-bottom: 20px;
}

ul.studio-img li.c {
	padding: 0px 20px;
}

div.map {
	border-bottom: 3px dotted #ffc900;
	border-top: 3px dotted #ffc900;
	padding: 30px;
}

div.map div.left {
	display: table-cell;
	padding-right: 50px;
	vertical-align: middle;
	width: auto;
}

div.map div.right {
	display: table-cell;
	vertical-align: middle;
	width: 480px;
}

div.map div.right h3 {
	text-align: left;
}

div.map div.right p {
	text-align: left;
}

div.map div.right p.tel span.tel {
	font-weight: bold;
}

div.map div.right p.tel a {
	font-weight: bold;
	text-decoration: none;
}

#contact {
	background: url(images/footer_contact_bg.jpg)no-repeat center top;
	color: white;
	text-align: center;
}

#contact #caption {
	padding-bottom: 30px;
}

#contact h3 {
	font-size: 150%;
	font-weight: bold;
}

#contact p {
	text-align: center;
}

#contact p.tel {
	font-size: 300%;
	font-weight: bold;
	line-height: normal;
}

#contact p.tel a {
	color: white;
	font-weight: bold;
	text-decoration: none;
}

#contact p.time {
	font-size: 150%;
	font-weight: bold;
	line-height: 0.6em;
}

#footer {
	background: url(images/bg_yellow.gif)repeat;
	text-align: center;
}

#footer-nav li {
	border-left: 1px solid black;
	display: inline;
	padding: 0px 25px;
}

#footer-nav li.l {
	border-right: 1px solid black;
	display: inline;
	padding: 0px 25px;
}

#footer-nav li a {
	font-weight: bold;
	text-decoration: none;
}

#footer-logo {
	display: block;
	margin: 0 auto;
	padding: 80px 0px 0px 0px;
	width: 217px;
}

#sns {
	padding: 35px 0px 20px 0px;
}

#sns a img {
	height: auto;
	width: 54px;
}

#footer h3 {
	font-size: 130%;
	line-height: 1em;
}

p#address {
	text-align: center;
}

#copyright {
	background-color: black;
	padding: 2px 0px;
}

p#copy {
	color: white;
	display: block;
	font-size: 90%;
	font-weight: normal;
	line-height: 1em;
	text-align: center;
}

#pagetop {
	bottom: 50px;
	position: fixed;
	right: 50px;
}

 
#pagetop a {
	display: block;
	height: 120px;
	width: 120px;
}

