@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* Table of Content
==================================================
	#Reset & Basics
	#Basic Styles
	#Typography
	#Links
	#Lists
	#Images
	#Buttons
	#Forms
	#Table
	#Misc
	#WordPress Default Class
	#Isotope
	#Base 960 Grid	*/

/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 100%;
		vertical-align: baseline; }
	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block; }
	body {
		line-height: 1; }
	ol, ul {
		list-style: none; }
	blockquote, q {
		quotes: none; }
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none; }
	table {
		border-collapse: collapse;
		border-spacing: 0; }


/* #Basic Styles
================================================== */
	body {
		background: #fff;
		font: 13px/22px 'Noto Sans Japanese', "ＭＳ Ｐゴシック", "MS PGothic", "Open Sans", "Helvetica Neue", Helvetica, Arial;
		color: #666;
		-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
		-webkit-text-size-adjust: 100%;
	}

/* #Typography
================================================== */
	h1, h2, h3, h4, h5, h6 {
		font-family: "Noto Sans Japanese","Open Sans", "Helvetica Neue", Helvetica, Arial;
		}
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1 { font-size: 22px; font-weight: 300; line-height: 45px; margin-bottom: 20px; }
	h2 { font-size: 20px; line-height: normal; margin-bottom: 20px; font-weight: 300; }
	h3 { font-size: 18px; font-weight: 300; line-height: normal; margin-bottom: 20px; }
	h4 { font-size: 16px; line-height: normal; margin-bottom: 20px; font-weight: 300; }
	h5 { font-size: 14px; line-height: normal; margin-bottom: 20px; font-weight: 300; }
	h6 { font-size: 12px; line-height: normal; margin-bottom: 20px; font-weight: 300; }

	.lighter { font-weight: 300; }
	.bold { font-weight: 400; }
	.extrabold { font-weight: 600; }

	p { margin: 0 0 20px 0; }
	p img { margin: 0; }
	p.lead { font-size: 21px; line-height: 27px; color: #777;  }

	em { font-style: italic; }
	strong,b { font-weight: bold; }
	small { font-size: 80%; }

/*	Blockquotes  */
	blockquote, .at-pullquote { font-size: 15px; font-style: italic; line-height: 24px; }

	blockquote cite { display: block; font-size: 12px; color: #999; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #999; }

	hr { border: solid #eee; border-width: 1px 0 0; clear: both; margin: 30px 0 50px; height: 0; }

	.promote .iconbox-content p {
		font-size: 11px;
	    line-height: 20px;
	    margin-bottom: 10px;
	}

	.promote .iconbox-content li {
		font-size: 11px;
	    line-height: 18px;
	    margin-bottom: 5px;
	}


/* #Links
================================================== */
	a, a:visited { text-decoration: none; outline: 0; }
	a:hover, a:focus { text-decoration: none; outline: 0; }
	p a, p a:visited { line-height: inherit; }
	a img{ border:none; }


/* #Lists
================================================== */
	ul, ol { margin-bottom: 20px; }
	ul { list-style: none outside; }
	ol { list-style: decimal; }
	ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
	ul.square { list-style: square outside; }
	ul.circle { list-style: circle outside; }
	ul.disc { list-style: disc outside; }
	ul ul, ul ol,
	ol ol, ol ul { margin-bottom: 20px; }
	ul ul li, ul ol li,
	ol ol li, ol ul li { }
	li { line-height: 22px; /*margin-bottom: 12px;*/ }
	ul.large li { line-height: 24px; }

	.content .post-excerpt ul,
	.content-part .post-excerpt ul,
	.content .post-content ul,
	.content-part .post-content ul,
	.comment-content ul{
		list-style-type:square;
		margin-left:30px;
	}

	.content ul.slides,
	.content-part ul.slides,
	.content ul.flex-direction-nav,
	.content-part ul.flex-direction-nav,
	.content .at-tabs > ul,
	.content-part .at-tabs > ul,
	.content .at-accordion > ul,
	.content-part .at-accordion > ul,
	.content .at-client > ul,
	.content-part .at-client > ul,
	.content .widget > ul,
	.content-part .widget > ul {
		list-style-type:none;
		margin-left:0;
	}

	.content ul.icons,
	.content-part ul.icons {
		list-style-type:none;
	}


/* #Images
================================================== */
	.content p img, .content-part p img, .widget img, img.scale-with-grid {
		max-width: 100%;
		height: auto; }


/* #Buttons
================================================== */
	.button, button, input[type="submit"], input[type="reset"], input[type="button"]{
		font:bold 12px Arial, Helvetica, sans-serif;
		padding:7px 20px;
		cursor:pointer;
		background:#999;
		color:#fff;
		border:none;
		/*-webkit-border-radius:2px;
		   -moz-border-radius:2px;
				border-radius:2px;*/
	}
	.button:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover{
		color:#fff;
	}


/* #Forms
================================================== */
	form {
		margin-bottom: 20px; }
	fieldset {
		margin-bottom: 20px; }
	fieldset p {
		margin-bottom: 10px; }
	input[type="text"],
	input[type="password"],
	input[type="email"],
	textarea,
	select {
		border: 1px solid rgba(0, 0, 0, 0.06);
		padding: 8px 5px;
		outline: none;
		font: 12px "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		color: #777;
		margin: 0;
		width: 200px;
		max-width: 100%;
		display: block;
		background: rgba(0, 0, 0, 0.03);
		/*-webkit-border-radius:2px;
		   -moz-border-radius:2px;
				border-radius:2px;*/
	}
	input[type="text"]:focus,
	input[type="password"]:focus,
	input[type="email"]:focus,
	input[type="tel"]:focus,
	textarea:focus {
 		color: #444;
		background:#fff;
		}
	textarea {
		min-height: 60px; }
	textarea#comment{
		width:98%;
	}
	label,
	legend {}
	select {
		width: 220px; }
	input[type="checkbox"] {
		display: inline; }
	label span,
	legend span {
		font-weight: normal;
		font-size: 13px;
		color: #444; }


/* #Table
================================================== */
	table {
		width:100%;
		margin:0 auto;
		border-collapse:collapse;
		margin-bottom:20px;
	}
	table th {
		background:#f5f5f5;
		border:1px solid #E3E3E3;
		font-weight:bold;
		padding:10px;
		text-align:left;
	}
	table td {
		padding:10px;
		border:1px solid #F3F3F3;
	}


/* #Misc
================================================== */
	.remove-bottom { margin-bottom: 0 !important; }
	.half-bottom { margin-bottom: 10px !important; }
	.add-bottom { margin-bottom: 20px !important; }
	.far-edge { text-align: right; }


/* #WordPress Default Class
================================================== */
	.alignleft {
		float:left;
	}
	.alignright {
		float:right;
	}
	.aligncenter {
		margin:0 auto;
		display: block;
		text-align:center;
	}
	img.alignleft {
		margin:0 20px 20px 0;
	}
	img.alignright {
		margin:0 0 20px 20px;
	}
	img.aligncenter {
		margin:0 auto 20px;
	}
	.wp-caption {
		background: #fff;
		border: 1px solid #f0f0f0;
		max-width: 96%; /* Image does not overflow the content area */
		padding: 5px 5px 10px;
		text-align: center;
	}
	.wp-caption.alignnone {
		margin: 0 0 20px 0;
	}
	.wp-caption.alignleft {
		margin:0 20px 20px 0;
	}
	.wp-caption.alignright {
		margin:0 0 20px 20px;
	}
	.wp-caption img {
		border: 0 none;
		height: auto;
		margin:0;
		max-width: 100%;
		padding:0;
		width: auto;
	}
	.wp-caption p.wp-caption-text {
		margin:0;
		padding:0 5px;
	}
	.gallery p {
		margin-bottom: 0 !important;
		height:1px !important;
		clear:both;
	}
	.gallery-item{
		float:left;
		width:80px !important;
		display:inline-block;
		margin:0 20px 20px 0 !important;
	}
	.gallery-icon{
		display:inline-block;
	}
	.gallery-icon img{
		max-width:70px;
		height:auto;
		display:block;
		border:5px solid #eee !important;
	}
	.sticky,
	.gallery-caption,
	.bypostauthor {
		font-size: 10px;
		line-height: 15px;
	}


/* #Isotope CSS3 transitions
================================================== */
	.isotope,
	.isotope .isotope-item {
	  -webkit-transition-duration: 0.8s;
		 -moz-transition-duration: 0.8s;
		  -ms-transition-duration: 0.8s;
		   -o-transition-duration: 0.8s;
			  transition-duration: 0.8s;
	}

	.isotope {
	  -webkit-transition-property: height, width;
		 -moz-transition-property: height, width;
		  -ms-transition-property: height, width;
		   -o-transition-property: height, width;
			  transition-property: height, width;
	}

	.isotope .isotope-item {
	  -webkit-transition-property: -webkit-transform, opacity;
		 -moz-transition-property:    -moz-transform, opacity;
		  -ms-transition-property:     -ms-transform, opacity;
		   -o-transition-property:         top, left, opacity;
			  transition-property:         transform, opacity;
	}


/* #Base 960 Grid
================================================== */

    .container                                  { position: relative; width: 960px; margin: 0 auto; padding: 0; }
    .container .column,
    .container .columns                         { float: left; display: inline; margin-left: 15px; margin-right: 15px; }
    .row                                        { margin-bottom: 20px; }

    /* Nested Column Classes */
    .column.alpha, .columns.alpha               { margin-left: 0; }
    .column.omega, .columns.omega               { margin-right: 0; }

    /* Base Grid */
    .container .one.column,
    .container .one.columns                     { width: 30px;  }
    .container .two.columns                     { width: 90px; 	}
    .container .three.columns                   { width: 150px; }
    .container .four.columns                    { width: 210px; }
    .container .five.columns                    { width: 270px; }
    .container .six.columns                     { width: 330px; }
    .container .seven.columns                   { width: 390px; }
    .container .eight.columns                   { width: 450px; }
    .container .nine.columns                    { width: 510px; }
    .container .ten.columns                     { width: 570px; }
    .container .eleven.columns                  { width: 630px; }
    .container .twelve.columns                  { width: 690px; }
    .container .thirteen.columns                { width: 750px; }
    .container .fourteen.columns                { width: 810px; }
    .container .fifteen.columns                 { width: 870px; }
    .container .sixteen.columns                 { width: 930px; }

    .container .one-third.column                { width: 290px; }
    .container .two-thirds.column               { width: 610px; }

	/* AzureThemes */
	#azure-wrapper.boxed				{ position: relative; width: 990px; margin: 0 auto 20px; }
	#main.right							{ float: right; }
	#sidebar.left						{ float: left; }

	.content .one_half 					{ width: 450px; }
	.content .one_third 				{ width: 290px; }
	.content .two_third 				{ width: 610px; }
	.content .one_fourth				{ width: 210px; }
	.content .three_fourth 				{ width: 690px; }
	.content-part .one_half 			{ width: 330px; }
	.content-part .one_third 			{ width: 210px; }
	.content-part .two_third 			{ width: 450px; }
	.content-part .one_fourth 			{ width: 150px; }
	.content-part .three_fourth 		{ width: 510px; }

	.content .one_fifth					{ width: 162px; }
	.content-part .one_fifth			{ width: 114px; }

	.one_half, .one_third, .two_third, .one_fourth, .three_fourth, .one_fifth {
		position: relative;
		margin-right: 30px;
		float: left;
	}
	.one_half.last, .one_third.last, .two_third.last, .one_fourth.last, .three_fourth.last, .one_fifth.last {
		margin-right: 0 !important;
	}
	.tt-div {
		padding: 20px 0 0;
	}
	.tt-nav {
		text-align: center;
		margin: 0 0 40px;
	}
	.tt-nav a {
		border: 1px solid #ccc;
    box-sizing: border-box;
    display: inline-block;
    font-size: 16px;
    margin: 0;
    padding: 2% 0;
    width: 32%;
	}
	.tt-nav b {
		display: block;
    font-weight: normal;
    text-indent: -5px;
	}
	.tt-nav b::before{
	left: 4px;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #7a0;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	content: "";
	display: inline-block;
	margin-right: 5px;
	}
	.azabu-tt {
		width: 100%;
	}
	.azabu-tt tr {
		height: 10px;
	}
	.azabu-tt th {
		vertical-align: middle;
	}
	.azabu-tt td {
		font-size: 11px;
		text-align: center;
		padding: 5px;
		vertical-align: top;
	}
	.azabu-tt td.pdfix {
		padding: 0;
	}
	.azabu-tt td.cl_01 {
		background: #fbd75b;
	}
	.azabu-tt td.cl_01 span {
		background: #d8b53e;
	}
	.azabu-tt td.cl_02 {
		background: #70f1f5;
	}
	.azabu-tt td.cl_02 span {
		background: #53d4d9;
	}
	.azabu-tt td.cl_03 {
		background: #a3ef9d;
	}
	.azabu-tt td.cl_03 span {
		background: #8cd886;
	}
	.azabu-tt td.cl_04 {
		background: #eacfff;
	}
	.azabu-tt td.cl_04 span {
		background: #ccaae7;
	}
	.azabu-tt td.cl_05 {
		background: #fcb5ae;
	}
	.azabu-tt td.cl_05 span {
		background: #f19288;
	}
	.azabu-tt th {
		text-align: center;
		font-size: 12px;
		padding: 5px;
	}
	.azabu-tt td span {
		display: block;
		padding: 2.5px 5px;
	}
	.azabu-tt td b {
		display: block;
		font-weight: normal;
		padding: 2.5px 5px;
	}
	.hidehide {
		background: #eee;
	}
	.oyasumi {
		text-align: center;
		background: rgb(250, 112, 117);
    border: 10px solid rgba(0, 0, 0, 0.1);
    padding: 10px;
    position: relative;
		font-size: 14px;
		color: #000;
		line-height: 1.5;
	}
	.oyasumi b {
		font-size: 20px;
		margin: 0 5px;
	}
	.tabs > .tab {
	    background: #f2f2f2 none repeat scroll 0 0;
	    border-color: #dbdbdb;
	    border-image: none;
	    border-style: solid solid none;
	    border-width: 1px 1px medium;
	    float: left;
			box-sizing: border-box;
	    text-align: center;
	    width: calc(100% / 3);
	}
	.tabs > .tab:first-child {
		border-right: none;
	}
	.qanda .tabs {
	    border-bottom: 3px solid #60ae2b;
	    margin: 0 0 20px;
	}
	.qanda .tabs > .tab {
	    list-style: outside none none;
	    margin: 0;
	    width: 49.5%;
	}
	.tabs > .last-tab {
	    margin-right: 0 !important;
	}
	.qanda .tabs > .last-tab {
	    float: right;
	}
	.tabs > .tab a {
	    color: #828282;
	    display: block;
	    font-size: 16px;
	    font-weight: bold;
	    padding: 19px 0 16px;
	}
	.tabs > .tab.active {
	    background: #fff none repeat scroll 0 0;
	}
	.tabs > .tab.active a {
	    color: #000;
	}
	.panels > .panel {
	    display: none;
	}
	.panels > .pan {
	    display: none;
	}
	.panels > .panel.active {
	    display: block;
	}
	.panels > .pan.active {
	    display: block;
	}
	.panels > .panel dl {
	    border-top: 1px solid #dbdbdb;
	    font-size: 14px;
	    padding: 14px 12px 12px;
	}
	.panels > .panel dl dt {
	    float: left;
	}
	.panels > .panel dl dd {
	    margin-left: 230px;
	    padding: 3px 0 0;
	}
	.update-history .panels > .panel dl dd {
	}
	.panels > .panel dl.first-child {
	    border-top: medium none;
	}
	.panels > .panel dl span, .panels > .panel dl a {
	    display: inline-block;
	    vertical-align: middle;
	}
	.panels > .panel dl .label {
	    border-radius: 2px;
	    color: #fff;
	    font-size: 12px;
	    margin: -1px 23px 0 25px;
	    padding: 5px 0 4px;
	    text-align: center;
	    width: 90px;
	}
	.panels > .panel dl .label01 {
	    background: #60ae2b none repeat scroll 0 0;
	}
	.panels > .panel dl .label02 {
	    background: #3498db none repeat scroll 0 0;
	}
	.private_link {
		text-align: right;
		font-size: 120%;
	}
	.private_link a {
		text-decoration: underline;
	}

	.flex-list {
		display: flex;
	}
	.news-list {
		position: relative;
	}
	.news-list:hover {
		background: #f1ffff;
	}
	.important {
		box-shadow: 0px 0px 0 2px red;
		padding: 15px 15px!important;
		font-size: larger!important;
		background: pink;
	}
	.news li.important span {
		font-weight: 400;
    color: dodgerblue;
	}
	.news-list em {
		font-style: normal;
    margin-left: 1em;
    color: red;
	}

@media only screen and (min-width: 768px) {
	.hide-pc {
		display: none;
	}
	.flex-list {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
}
@media only screen and (max-width: 767px) {
	.tt-nav a span {
		display: none;
	}
	.flex-list {
		flex-direction: column;
	}
	.hide-sp {
		display: none;
	}
	.mapicon {
		background: none;
		padding: 0;
	}
	#nakano.tt-div td {
		vertical-align: middle;;
	}
	#nakano.tt-div tr td:nth-child(3) {
		width: 2em;
	}
	#shinagawa.tt-div td {
		vertical-align: middle;;
	}
	#shinagawa {
		margin: 0 0 60px;
	}
	#shinagawa.tt-div tr td:nth-child(3),
	#shinagawa.tt-div tr th:nth-child(3)  {
		text-align: center;
	}
}

/* #Clearing
================================================== */

    /* Self Clearing Goodness */
    .container:after { content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }

    /* Use clearfix class on parent to clear nested columns,
    or wrap each row of columns in a <div class="row"> */
    .clearfix:before,
    .clearfix:after,
    .row:before,
    .row:after {
      content: '\0020';
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0; }
    .row:after,
    .clearfix:after {
      clear: both; }
    .row,
    .clearfix {
      zoom: 1; }

    /* You can also use a <br class="clear" /> to clear columns */
    .clear {
      clear: both;
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0;
    }


	.uppergrade .pre-schooler {
		display: none;
	}
	.lowergrade .pre-schooler {
		display: block;
	}
	.lowergrade .schooler {
		display: none;
	}
	.uppergrade .schooler {
		display: block;
	}


	.sun_only {
		display: none;
	}