@charset "utf-8";
@import url(//use.fontawesome.com/releases/v5.8.2/css/all.css);
/*
 Theme Name:   ottavaEMB1-P5
 Description: ピアノ教室専門 簡単ホームページ作成サービス Ottava!（オッターヴァ）。テンプレート「刺繍　-　ブルーグレー」
 Author:       Design Studio OCTO
 Author URI:   https://www.ottava-hp.com/
 Template:     twentysixteen
*/

/*reset-------------------------------------------------------------- */

/*要素のフォントサイズやマージン・パディングをリセットしています*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/*行の高さをフォントサイズと同じにしています*/
body {
    line-height:1;
}

*{box-sizing: border-box;}


/*新規追加要素のデフォルトはすべてインライン要素になっているので、section要素などをブロック要素へ変更しています*/
article,aside,details,figcaption,figure{
    display:block;
}


figure {
    display: block;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
}

/*nav要素内ulのマーカー（行頭記号）を表示しないようにしています*/
nav ul {
    list-style:none;
}

/*引用符の表示が出ないようにしています*/
blockquote, q {
    quotes:none;
}

/*blockquote要素、q要素の前後にコンテンツを追加しないように指定しています*/
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

/*a要素のフォントサイズなどをリセットしフォントの縦方向の揃え位置を親要素のベースラインに揃えるようにしています*/
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* ins要素のデフォルトをセットし、色を変える場合はここで変更できるようにしています */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* mark要素のデフォルトをセットし、色やフォントスタイルを変える場合はここで変更できるようにしています
また、mark要素とは、文書内の検索結果で該当するフレーズをハイライトして、目立たせる際に使用するようです。*/
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

/*テキストに打ち消し線が付くようにしています*/
del {
    text-decoration: line-through;
}

/*IEではデフォルトで点線を下線表示する設定ではないので、下線がつくようにしています
また、マウスオーバー時にヘルプカーソルの表示が出るようにしています*/
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

/*隣接するセルのボーダーを重ねて表示し、間隔を0に指定しています*/
table {
    border-collapse:collapse;
    border-spacing:0;
}

/*水平罫線のデフォルトである立体的な罫線を見えなくしています*/
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

/*縦方向の揃え位置を中央揃えに指定しています*/
input, select {
    vertical-align:middle;
}

/*画像を縦に並べたときに余白が出てしまわないように*/
img {
	vertical-align: top;
	font-size:0;
	line-height: 0;
	max-width: 100%;
}
.entry-content a img {
    display: inherit;
}





/* =グローバル設定
----------------------------------------------- */

body, input, textarea {
	color: #373737;
	font: 14px "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	font-weight: 300;
	line-height: 1.625em;
}



/* Headings 
h1,h2,h3,h4,h5,h6 {
	clear: both;
}*/
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.625em;
}

/* Text elements */
p {
	margin-bottom: 1.625em;
}
ul, ol {
	margin: 0 0 1.625em 2.5em;
}
ul {
	list-style: square;
}
ol {
	list-style-type: decimal;
}
ol ol {
	list-style: upper-alpha;
}
ol ol ol {
	list-style: lower-roman;
}
ol ol ol ol {
	list-style: lower-alpha;
}
ul ul, ol ol, ul ol, ol ul {
	margin-bottom: 0;
}
dl {
	margin: 0 1.625em;
}
dt {
	font-weight: bold;
}
dd {
	margin-bottom: 1.625em;
}
strong {
	font-weight: bold;
}
cite, em, i {
	font-style: italic;
}
blockquote {
	font: 14px "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	font-style: italic;
	font-weight: normal;
	margin: 0 3em 2em;
	color: #333;
}
blockquote em, blockquote i, blockquote cite {
	font-style: normal;
}
blockquote cite {
	color: #666;
	font: 12px "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 300;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
pre {
	background: #f4f4f4;
	font: 13px "Courier 10 Pitch", Courier, monospace;
	line-height: 1.5;
	margin-bottom: 1.625em;
	overflow: auto;
	padding: 0.75em 1.625em;
}
code, kbd {
	font: 13px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr, acronym, dfn {
	border-bottom: 1px dotted #666;
	cursor: help;
}
address {
	display: block;
	margin: 0 0 1.625em;
}
ins {
	background: #fff9c0;
	text-decoration: none;
}
sup,
sub {
	font-size: 10px;
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}
sup {
	bottom: 1ex;
}
sub {
	top: .5ex;
}


input[type="button" i], input[type="submit" i], input[type="reset" i], input[type="file" i]::-webkit-file-upload-button, button {
        border-width: 0;
}






/*fonts-------------------------------------------------------------- */
body{
    font:14px/1.231 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',osaka,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	color: #373737; /* 文字色 */
	font-weight: 300;
}
 
select,input,button,textarea,button{
    font:99% arial,helvetica,clean,sans-serif;
}
 
table{
    font-size:inherit;
    font-size:100%;
}
 
pre,code,kbd,samp,tt{
    font-family:monospace;
    *font-size:108%;
    line-height:99%;
}
 
/* IE6 and IE7 Hack */
* html body {font-family: 'ＭＳ Ｐゴシック',sans-serif;}
*:first-child+html body {font-family: 'メイリオ','ＭＳ Ｐゴシック',sans-serif;}
 
/* 日本語が読みやすいline-height例 */
body * {
    line-height:1.38em;
}

/* リンク色設定 */
a:link{
	color: #0A85BB;
}
a:hover{
	color: #73bb15;
	text-decoration: none;
}
a:visited{
	color: #277395;
}
a:active{
	color: #fde43a;
	text-decoration: none;
}





/*style-------------------------------------------------------------- */

/* ▽　+++++++++++++　　親テーマ調整css 　+++++++++++++　▽　*/
/**
 * 6.0 - Navigation
 */

/**
 * 6.1 - Links
 */
.main-navigation a {

	display: inline;
	outline-offset: 0;
	padding: 0;
}

/**
 * 6.2 - Menus
 */
.main-navigation li {
	border-top: 0;
}
.main-navigation .primary-menu {
	border-bottom: 0;
}


/*wp-pagenavi 17*/
.wp-pagenavi {
	clear: both;
	text-align:center;
 
}
.wp-pagenavi a, .wp-pagenavi span {
	color: #666;
	background-color: #FFFFFF;
	padding: 8px 15px;
	margin: 0 2px;
	white-space: nowrap;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration: none;
	border: thin dotted #666;
}
.wp-pagenavi a:hover{
	color: #fff;
	background-color: #666;
    }
.wp-pagenavi span.current{
	color: #fff;
	background-color: #666;
    }





/**
 * 10.0 - Widgets
 */

.widget {
	border-top: 0;
	margin-bottom: 5em;
	padding-top: 0;
}

.blog #primary h2,
.archive #primary h2,
.single #primary h2{
	background: url(images/h2_bg.png) no-repeat 0px 100%;
	padding:0 0 4px 40px;
	margin:0.5em 0 0.4em;
	min-height:22px;
	font-size: 22px;
	line-height: 1.2em;
	font-weight: bold;
	}
.blog #primary h2 a,
.archive #primary h2 a,
.single #primary h2 a{
	color: #555555;
	}
.archive #primary .page-header h2{
	padding:10px;
	margin:1em 0 20px;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	border: none;
	background-image: none;
	background-color: #F1F0E7;
	color: #555555;
}
.blog #secondary h2,
.single #secondary h2{
	font-size: 18px !important;
	font-weight: bold;
	margin: 0 0 0.8em;
	padding: 0;
	line-height: 1.2em;
	background-image: none !important;
	border-bottom: dashed 1px #D4D4D4;
	}
.blog #secondary h2:before,
.single #secondary h2:before{
	font-family: FontAwesome;
	content: '\f001'; /* アイコンのunicode */
	margin-right: 0.4em;
	color: #ED5880;
}

.widget li {
    margin: 0 0 1em 0.7em;
    padding: 0 0 1em 0;
	border-bottom: solid 1px #e6e6e6;
}
/**
 * 11.2 - Posts and pages
 */
.page-header {
	border-top: 0;
	margin: 0;
	padding-top: 0;
}

.post-navigation {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    clear: both;
    font-family: Montserrat, "Helvetica Neue", sans-serif;
    margin: 3em 0 3.5em;
}
.post-navigation div + div {
    border-top:0;
}
.post-navigation .post-title {
    font-size: 14px;
    font-size: 0.9rem;
}
/**
 * 14.1 - >= 710px
 */

@media screen and (min-width: 44.375em) {
	body:not(.custom-background-image):before,
	body:not(.custom-background-image):after {
		background: #555;
		content: "";
		display: block;
		height: 0;
		left: 0;
		position: fixed;
		width: 100%;
		z-index: 99;
	}
	.entry-header,
	.post-thumbnail,
	.entry-content,
	.entry-summary,
	.entry-footer,
	.comments-area,
	.image-navigation,
	.post-navigation,
	.page-header,
	.page-content,
	.content-bottom-widgets {
	margin-left: 0;
	margin-right: 0;
	}
	.entry-content{
	margin-left: 49px;
	margin-right: 49px;
	}
	.home .entry-content{
	margin-left: 0;
	margin-right: 0;
	}
	.entry-content_home{
	margin-left: 49px;
	margin-right: 49px;
	margin-top: 49px;
	}
	
	.entry-content blockquote:not(.alignleft):not(.alignright),
	.entry-summary blockquote,
	.comment-content blockquote {
		margin-left: 2em;
	}
}
/**
 * 14.2 - >= 783px	
 */

@media screen and (min-width: 48.9375em) {
	body:not(.custom-background-image).admin-bar:before {
		top: 0;
	}
}
/**
 * 14.3 - >= 910px
 */

@media screen and (min-width: 56.875em) {
	.main-navigation {
		margin: 0 0;
	}
	.site-content {
		padding: 0;
	}
	.content-area {
		float: none;
		margin-right: 0;
		width: 100%;
	}
	.blog .content-area,
	.single .content-area{
		float: left;
		margin-right: -100%;
		width: 580px;
	}
	.sidebar {
		float: left;
		margin-left: 620px;
        margin-top: 20px;
		padding: 0;
		width: 180px;
	}
	.main-navigation .primary-menu > li {
		float: none;
	}
	.main-navigation a {
		outline-offset: 0;
		padding: 0;
		white-space: nowrap;
	}
	
	.navigation{
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		justify-content:space-between;
		border-top: solid 1px #ccc;
		border-bottom: solid 1px #ccc;
		
	}
	.navigation div{
		padding: 1em 0;
	}
}


/**
 * 14.4 - >= 985px
 */

@media screen and (min-width: 61.5625em) {

body:not(.search-results) article:not(.type-page) .entry-content {
		float: none;
		width: 100%;
		margin: 0;
	}
body:not(.search-results) article:not(.type-page) .entry-footer {
		float: none;
		margin-top: 0;
		width: 100%;
	}


}



html{
	-webkit-text-size-adjust: 100%;
}
			

/*PC*/
html , body {height:100%;}
body > #wrap {height:auto;}

body,#wrap {
	padding: 0;
}
p{
	padding: 0;
	margin: 0 0 1em 1em;
	}
ul {
 	list-style: none;
 	margin: 1.6em 0 1em;
	padding: 0;	
}
li{
	margin: 0 0 0.5em 1em;
	padding: 0;
	}
li:before {
  font-family: FontAwesome;
  content: '\f0da';
  margin-right: 0.3em;
  color:#d7df57;
}
ol{
	margin: 0 0 10px 1.5em;
	padding: 0px;	
	}
ol li:before{
	content:none;
	}
ol li{
	margin: 0 0 5px;
	padding: 0px;
	}

.clr {clear: both;}

/*全体を囲む枠--------------------------------------*/
body {
	margin: 0;
	padding: 0;
	background: #eaeaea; /* 背景色 */
}
#wrap{
	width:900px;
	margin: 0 auto;
	padding: 0;
	background: #FFF; /* 背景色 */
	}
#access,
#main_waku,
#access_footer{
	padding:0 50px;
	}
	

/*ヘッダー-----------------------------------------*/
#header{
	padding: 0;
	margin: 0;
	font-size: 14px;
	}
#header div.siteDiscription{
	color: #FFF;
	background: #999;
	padding: 5px 50px;
	font-weight: normal;
	font-size: 16px;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */

}

#header #tit {
    margin: 0;
    padding: 0;
    font-size: 48px;
    line-height: 1em;
    font-weight: bold;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-feature-settings: "palt";
}
#tit a{
	color: #3d3d3d;
	text-decoration: none;
}
#tit a:hover,
#tit a:focus,
#tit a:active {
	
}

#header_container{
	max-width: 800px;
	width: 100%;
	margin: 0 24px;
	padding-top:20px;
	display: -webkit-box; /*Android4.3*/
  	display: -moz-box;    /*Firefox21*/
  	display: -ms-flexbox; /*IE10*/
 	display: -webkit-flex; /*PC-Safari,iOS8.4*/
 	display: flex;
	justify-content:space-between;
}
#header #left_box{
	margin: 0;
	padding: 0;

	}
#header #right_box{
	margin: 0px;
	padding: 0;
	width: 280px;
	text-align: left;
	}

#header p.addressTxt{
	margin:0;
	padding:0;
	font-size: 14px;
	}
#header .howToAccess {
    display: block;
	max-width: 800px;
	width: 100%;
    margin: 0 auto;
}
#header p.addressTxt_sp {
   visibility: hidden;
}
#header p.howToAccess{
	margin:0 0 0.1em 0;
	padding:0;
	font-size: 14px;
	
	}
#header p.howToAccess_sp{
	display: none;
	}
#header p.tel{
	font-size:28px;
	margin:0 0 0.5em;
	padding:0;
	}
#header a.mapTxt_sp {
   	visibility: hidden;
	font-size: 0;
}
#header p.tel .telNo:before{
	content: url(images/header_tel.png);
    margin: 10px 10px 10px 0;
    position: relative;
    top: 8px;
	}
#header p.telTxt{
	font-size:11px;
	margin:5px 0 0 0;
	padding:0;
	line-height: 15px;
	}
#topImg{
	background: url(images/headImg.png) no-repeat;
	height: 80px;
	max-width: 800px;
	width: 100%;
  	display: block;
	margin:0 50px 5px;
}

/*メニュー------------------------------------------*/
#access {
	margin: 0;
	}
#home #access {
	margin-top: 0;
	}

#access ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: -webkit-box; /*Android4.3*/
  	display: -moz-box;    /*Firefox21*/
  	display: -ms-flexbox; /*IE10*/
 	display: -webkit-flex; /*PC-Safari,iOS8.4*/
 	display: flex;
	flex-wrap: wrap;
}
#access li:before {
  	content: none;
 	margin-right: 0;
}
#access li {
	margin: 10px 12px 1em 0;
	padding: 0;
	font-size:16px;
	line-height: 1.2em;
	font-weight: normal;	
	display: block;
	background: #f27690;/*ピンク*/
	border-radius: 5px;
	/*box-shadow: 3px 3px #ddd;*/
	
}
#access li:last-child{
	margin-right: 0;
}

#access a {
	color: #FFF;
	text-decoration: none;
    font-weight: 600;
	display: block;
	margin: 0;
	padding: 8px 20px 8px 0;
    height: 39px;
}
#access a::before {
	content: '';
    display: inline-block;
    width: 34px;
    height: 28px;
    vertical-align: middle;
    background: url(images/onpu1.svg) no-repeat;
    background-size: 30px;
    position:relative;
	top:-15px;
	left:2px;
}

#access li:nth-child(2) a::before{
	background: url(images/onpu2.svg) no-repeat;
	background-size: 27px;
	top:-10px;
	width: 27px;

}
#access li:nth-child(3)  a::before{
	background: url(images/onpu3.svg) no-repeat;
	background-size: 16px;
	width: 27px;
	top:-12px;
	left:7px;
}
#access li:nth-child(4)  a::before{
	background: url(images/onpu4.svg) no-repeat;
	background-size: 26px;
}
#access li:nth-child(5)  a::before{
	background: url(images/onpu5.svg) no-repeat;
	background-size: 14px;
	top:-12px;
	left:7px;
}
#access li:nth-child(6)  a::before{
	background: url(images/onpu6.svg) no-repeat;
	background-size: 22px;
	top:-12px;
	left:4px;
}

#access li:hover,
#access li:focus {
	color: #ED5880;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;

}

#menu_header_sp{
	display: none;
	}

/*メインコンテンツ・下層ページ----------------------*/	
#main_waku {
	clear: both;
	margin:0;
	
}

#contents{
	padding: 0;
	
	}

.catchcopy{
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0 0 10px;
	padding: 0;
}



#contents h1 {
	background: url(images/h1_bg.png) no-repeat 0 100%;
	font-size: 28px;
	line-height: 1.2em;
	font-weight: bold;
	padding: 20px 30px 28px 42px;
	margin:0 0 20px;
	vertical-align: bottom;
	min-height:76px;
}
#contents h1 a {
	color: #222;
}
#contents h2{
	background: url(images/h2_bg.png) no-repeat 0px 100%;
	padding:0 0 4px 40px;
	margin:2em 0 20px;
	min-height:22px;
	font-size: 22px;
	line-height: 1.2em;
	font-weight: bold;
	}

#contents h1 + #contents h2{
	margin-top:1em;
	}
#contents .entry-content h2:first-of-type{
	margin-top:0;
}
#contents h3{
	padding:0 0 0 0.5em;
	margin:2em 0 0.8em;
	font-size: 20px;
	line-height: 1.2em;
	font-weight: bold;
	border-left: 5px solid #e6e4e1;
	color: #e6657e;
	}
	#contents h3.h3_bg{
	border-left: none;
    padding: 8px;
    background: #FCEAF4;
    margin: 30px 0 20px;
	}
#contents h4{
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0 0.8em;
	line-height: 1.2em;
    color:#333;/*文字色*/
	border-bottom: 1px dotted #ccc;
	}
#contents h4:before {
	font-family: FontAwesome;
    content: '\f001';
    margin-right: 0.4em;
    color: #ed7891;
}

#contents h5{
	font-size: 16px;
	font-weight: bold;
	margin: 1em 0 0.8em;
	padding:0 0 0 6px;
	line-height: 1.2em;
	color:#e6657e;/*文字色*/
	border-left: 5px solid #FCD3D9;
	}



#contents h6{
	font-size: 15px;
	font-weight: bold;
	margin: 1.5em 0 0.5em;
	padding: 0;
	line-height: 1.2em;
	/*color: #92AF00;黄緑*/
    color:#e6657e;/*文字色*/
	font-style: normal;
	}

#contents .tel{
	font-size: 18px;
	margin: 0 0 0 24px;
	padding: 0;
	}
	
	
#contents .tel .tel_time{
	font-size: 12px;
	margin: 0;
	padding: 0;
	}
#contents .tel_caution{
	font-size: 12px;
	margin: 3px 0 0 0;
	padding: 0 0 0 24px;
	}



/*テーブル -----------------------------*/
#contents table{
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin: 0 0 1em 1em;
    width: auto;
	}
#contents table th,
#contents table td{
	padding: 0.8em 1em;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	}
#contents table th{
	font-weight: bold;
	text-align: left;
	white-space: nowrap;
	background: #cddd83;
	}
#contents table.lesson th{
	text-align: center;
	}
#contents table td{
	background: #FFF;
	}
#contents table th{
	width: auto;
	}
#contents table th.width_40,
#contents table td.width_40{
	width: 40%;
	}
#contents table th.color1{
	background: #e6ef82;
	text-align: center;
}
#contents table th.color2{
	background: #ddd;
	text-align: center;
}
/*テーブル（レッスン料金表）-----------------------------*/	
#contents table.lesson,
#contents table.lesson th,
#contents table.lesson td{
	border-color: #ccc;
}

#contents table.lesson th{
	background: #efefef;
}
#contents table.lesson th.color2{
	background: #f7d6dd;
}
/*テーブル　料金表 -----------------------------*/	
#contents table.hyou,
#contents table.hyou th,
#contents table.hyou td{
	border-color: #ccc;
	}
#contents table.hyou td{
	background: #FFF;
	}
#contents table.hyou th{
	color: #555;/*文字色*/
	background: #FCE1EB;
	}
#contents table.hyou th.color2{
	border-left: 1px dotted #FFF;
	color: #FFF;/*文字色*/
	background: #ED7891;
	}
/*テーブル（線なし）-----------------------------*/	
#contents table.table-no-boder,
#contents table.table-no-boder th,
#contents table.table-no-boder td{
	border: 0;
}

#contents table.table-no-boder th{
	background: none;
}

#contents table th h2,
#contents table th h3,
#contents table th h4,
#contents table th h5,
#contents table th h6,
#contents table td h2,
#contents table td h3,
#contents table td h4,
#contents table td h5,
#contents table td h6{
	margin-top:0;
	}
	
#contents table th p,
#contents table td p{
	margin-bottom:0.5em;
    margin-left:0;
	}

#contents table th p:last-child,
#contents table td p:last-child{
	margin-bottom:0;
	}

/*トップページのみ---------------------*/
#top_img_container{
}

.top_img {
    width: 100%;
  	height: 300px;
 	object-fit: cover;
	margin: 0;
	
}

/*お知らせコーナー*/
#top_news{
	display: -webkit-box; /*Android4.3*/
  	display: -moz-box;    /*Firefox21*/
  	display: -ms-flexbox; /*IE10*/
 	display: -webkit-flex; /*PC-Safari,iOS8.4*/
 	display: flex;
}
#top_news_left{
	width: 12%;
	background: #ed7891;/*ピンク*/
	/*#9381bd;紫*/
	border-radius: 5px 0 0 5px;
	padding: 15px;
}
#top_news_right{
	background: #fbebef;/*ピンク*/
	/*#e9e6f1;紫*/
	border-radius: 0 5px 5px 0;
	width: 88%;
	padding: 15px;
}
#main_waku #top_news h2{
	color: #FFF;
	padding: 0;
	margin: 0;
	font-size: 12px;
	line-height: 1em;
	font-weight: bold;
	background: url(none);
	border-style: none;
}
#main_waku #top_news h2:after {
	font-family: FontAwesome;
	content: '\f101'; /* アイコンのunicode */
	margin-left: 0.2em;
}

#top_news ul{
	margin: 0px;
	padding: 0 0 0 0;
	list-style: none;
}
#top_news ul li{
	margin: 0 0 0.6em;
	padding: 0;
}
#top_news ul li:last-child{
	margin-bottom:0;
}


#top_news .news_date{
	font-size: 12px;
	color:#999;/*文字色*/
}

.news-more {
  text-align: right;
  margin-top: 10px;
}

.news-more a {
  text-decoration: none;
}


.box_top_img{
	margin: 0 20px 20px 0;
	padding: 0px;
	height: auto;
	width: 290px;
	text-align: left;
	display: block;
}
.top-cta {
  margin: 18px 0 30px;
  padding: 18px 20px;
  text-align: center;
  background: #f9f7f1;
  border-radius: 6px;
}

.top-cta p {
  margin: 0 0 10px;
  color: #555;
}

.top-cta-btn,
.top-cta-btn:link,
.top-cta-btn:visited {
  display: inline-block;
  padding: 12px 36px;
  background: #609bb6;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  border-radius: 8px;
  font-size: 16px;
}

.top-cta-btn:hover,
.top-cta-btn:focus {
  background: #4a7f98;
  color: #fff;
  text-decoration: none;
}
.top-cta-first {
  margin: 0 0 24px;
}

@media only screen and (max-width: 600px) {
  .top-cta {
    margin: 18px 24px 24px;
    padding: 16px 14px;
    text-align: center;
  }

  .top-cta p {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.6;
  }

  .top-cta-btn,
  .top-cta-btn:link,
  .top-cta-btn:visited {
    display: block;
    width: 100%;
    padding: 13px 12px;
    font-size: 16px;
    color: #fff;
    background: #609bb6;
    text-align: center;
  }
}
#top_news a,
#top_news a:link,
#top_news a:visited {
  color: #0A85BB;
  text-decoration: none;
}

#top_news a:hover,
#top_news a:focus {
  color: #146c94;
  text-decoration: underline;
}

#top_news ul li:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 6px solid #609bb6;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  margin-right: 8px;
  font-family: inherit;
}

/*お知らせページ---------------------*/
#contents .news_contents{
	margin: 0 0 60px 0;
	padding: 30px;
	border: 1px solid #ccc;
	}
#contents .news_contents .entry-header{
	margin: 0 0 30px 0;
	}
#contents .news_contents p.news_date{
	margin: 0 0 1em 0;
	padding: 0;
	text-align: right;
	}
#contents .news_contents p.news_date span{ /*お知らせ　日付*/
	color:#999;/*文字色*/
	font-size: 12px;
	background: #eee;/*背景色*/
	margin: 0px;
	padding: 6px 10px;
	}
#contents .news_contents h3{
	margin: 0.5em 0 20px;
	}

	





/*問い合わせフォーム---------------------*/
table#form,
table#form_kakunin{
	margin:10px auto 40px;
	}
.necessary,
#contact .mw_wp_form .error{
	font-size: 12px;
	color: #F55067;/*文字色*/
	font-weight: bold;
	}
form p.necessary,
form table span.necessary{
	font-weight: normal;
	}
form div.necessary{
	text-align: right;
	}
#contact-tel{
	margin: 0 0 1.6em;
}

#confirm_submit{
	text-align: center;
	}
form #error_message{
	text-align: center;
	font-weight: bold;
	color: #F55067;/*文字色*/
	}

#submit_btns,
#error_submit{
	margin: 0 auto 1.6em;
	text-align: center;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	justify-content: center;
	}
	
	
/*問い合わせフォームページ内ボタン*/
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus,
input[type="submit"].submit_button,
input[type="submit"].modoru_button {
    width: 200px;
	font-size:16px;
	line-height: 1.2em;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 20px;
	padding: 11px 7px 7px 7px;
	background: #76c3e5;/*blue*/
	border-radius: 4px;
	box-shadow: 3px 3px #666666;
	text-align: center;
	font-family:FontAwesome;
}

input[type="button"]:hover,
input[type="button"]:focus,
input[type="submit"].submit_button:hover,
input[type="submit"].submit_button:focus,
input[type="submit"].modoru_button:hover,
input[type="submit"].modoru_button:focus{
    filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;
	
}

input[type="submit"].modoru_button {
    background: #999;
}


/*問い合わせフォーム---------------------*/
form table#form,
form table#form_kakunin,
#contents table#form,
#contents table#form_kakunin{
	margin:30px auto 40px;
	border-top: dashed 1px #CCC;
	border-left: 0;
	border-right: 0;
	}
form table#form th,
form table#form td,
#contents table#form_kakunin th,
#contents table#form_kakunin td{
	padding:10px;
	border-bottom: dashed 1px #CCC;
	border-left: 0;
	border-right: 0;
	}
form table#form th,
#contents table#form_kakunin th{
	background-color: #F5F5F5;
	}

form .necessary{
	font-size: 12px;
	color: #F55067;/*文字色*/
	font-weight: bold;
	}
form p.necessary,
form table span.necessary{
	font-weight: normal;
	}
form div.necessary{
	text-align: right;
	}

#confirm_submit{
	text-align: center;
	}
form #error_message{
	text-align: center;
	font-weight: bold;
	color: #F55067;/*文字色*/
	}

#submit_btns,
#error_submit{
	margin: 0 auto 1.6em;
	text-align: center;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	justify-content: center;
	}

	
/*問い合わせフォームページ内ボタン*/
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus,
button.submit_button,
button.modoru_button,
button[type="submit"].submit_button,
button[type="button"].modoru_button {
    width: 200px;
	font-size:16px;
	line-height: 1.2em;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 auto;
	padding: 11px 7px 7px 7px;
	background: #f195a9;/*pink*/
	border-radius: 4px;
	box-shadow: 3px 3px #666666;
	text-align: center;
	font-family:FontAwesome;
	border: 0;
}
button.submit_button:hover,
button.modoru_button:hover,
button[type="button"]:hover,
button[type="button"]:focus,
button[type="submit"].submit_button:hover,
button[type="submit"].submit_button:focus,
button[type="button"].modoru_button:hover,
button[type="button"].modoru_button:focus{
    filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;
	
}

button[type="submit"].modoru_button,
button[type="button"].modoru_button {
    background: #999;
}
button[type="submit"].modoru_button:before,
button[type="button"].modoru_button:before {
	content: "\f053";
	color: #666;
}
input[type="submit"].submit_button:after,
button[type="submit"].submit_button:after {
	content: "\f054";
	color: #f27690;
	margin-left: 0.1em;
}
input#submit_button {
    background-color: #f195a9;
    color: #FFF;
}
button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="reset"]:hover, input[type="reset"]:focus, input[type="submit"]:hover, input[type="submit"]:focus {
	background-color: #f35f7e;
}

input#modoru_button {
    background-color: #999;
    color: #FFF;
}
input#modoru_button:hover{
	background-color: #666;
}

@media only screen and (max-width: 600px) {
     /*スマホ用*/
	/*問い合わせフォームページ内ボタン*/
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus,
button.submit_button,
button.modoru_button,
button[type="submit"].submit_button,
button[type="button"].modoru_button{
	width: 150px;
	margin: 0 auto;
	font-size: 15px;
}
	button.modoru_button,
	button[type="button"].modoru_button{
	margin-right: 10px;
}
}




/*IE用 placeholder文字色*/
input::-webkit-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
input:-ms-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
input::-moz-placeholder {
    color: #ccc;
    font-weight: normal;
}
textarea::-webkit-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
textarea:-ms-input-placeholder {
    color: #ccc;
    font-weight: normal;
}
textarea::-moz-placeholder {
    color: #ccc;
    font-weight: normal;
}


/*フッター-----------------------------------------*/

/* =下部メニュー
-------------------------------------------------------------- */


#access_footer{
	margin: 0;
	padding-top: 30px;
	padding-bottom: 30px;
	}
#access_footer h2.menu_tit_sp{
	visibility: hidden;
	}
#access_footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align:center;
	letter-spacing: 0.08em;
}
#access_footer li:before {
  font-family: FontAwesome;
  content: '\f105';
  color:#cbcbcb;
  margin-right: 5px;

}
#access_footer li {
	display:inline-block;
	margin: 0 10px 1.5em 0;
	padding: 0 10px 0 0;
	line-height: 1em;
	border-right: 1px dotted #ddd;
}


#access_footer li:last-child{
	margin-right: 0;
	padding-right: 0;
	border-right: 0;
}
#access_footer a.last{
	padding-right: 0;
	border-right: none;
}






/* =Footer
----------------------------------------------- */
#footer_wrap{
	margin:0;
	padding: 0;
	}
#footer {
	margin: 0;
	padding: 94px 50px 20px;
	background: url(images/footerImg.png) no-repeat 0 0;
	background-size:100%;
	text-align: center;
	color: #ED5880;/* 文字色 */
}
#footer #siteInfo{
	font-size: 12px;
}
#footer #site-title {
	margin:0 1em 0 0;
	padding: 0;
	font-size: 18px;
	font-weight: bold;
}
#footer #site-title a {
	text-decoration: none;
	color: #ED5880;/* 文字色（リンク） */
	
}

#footer #site-title a:hover {
	color: #f195a9;
	text-decoration: none;
	
}

#footer p.add{
	margin:5px 1em 0 0;
	padding: 0;
	}
#footer p.tel{
	margin:5px 1em 0 0;
	padding: 0;
	font-size: 14px;
	}
#footer p.tel:before {
  font-family: FontAwesome;
  content: '\f095';
  margin-right: 3px;
}

	
#footer_copyright{
	font-size: 11px;
	text-align: center;
	margin:0;
	padding: 2px;
}
#footer_copyright a:link,
#footer_copyright a:hover,
#footer_copyright a:visited,
#footer_copyright a:active{
    color: #ED5880;/* 文字色 */
    text-decoration:underline; 
}
#footer_copyright a:hover{
    text-decoration:none; 
}
	

	
/*共通設定------------------------------------------*/
.txt_S{
	font-size:12px;
	}
.txt_M{
	font-size:14px;
	}
.txt_ML{
	font-size:16px;
	}
.txt_ML_sp{
	font-size:16px;
	}
@media only screen and (max-width: 600px) {
     /*スマホ用*/
.txt_ML_sp{
	font-size:14px;
	}
}
.txt_L{
	font-size:18px;
	}
.txt_weight_normal{
	font-weight: normal;
	}
.txt_weight_bold{
	font-weight: bold;
	}
.txt_S_gray{
	font-size:12px;
	color: #777;
	}
.txt_bold_pink{
	font-weight: bold;
	color: #ED5880;
	}
.txt_bold_blue{
	font-weight: bold;
	color: #509ec0;
	}
.txt_bold_dullblue{
	font-weight: bold;
	color: #146c94;
	}
.txt_gray{
	color: #777;
	}
.txt_gold{
	color: #dedba9;
	}
.txt_pink{
	color: #ED5880;
	}
.txt_blue{
	color: #509ec0;
	}
.txt_dullblue{
	color: #146c94;
	}
.txt_violet{
	color: #7561A7;
	}
.txt_green{
	color: #6B9000;
	}
.txt_underline{
	text-decoration: underline;
	}
	
.base_box{
	width: 100%;
	
	margin: 0 0 10px;
	padding: 0px;
	height: auto;
	
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	justify-content:space-between;
	}
ul.base_box li{
	margin: 0;
    padding: 0;
}
ul.base_box li:before {
    content: none;
}
.box_left{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 1;
	}
.box_right{
	margin: 0px;
	padding: 0px;
	flex: 2;
	}
.box_rightS{
	margin: 0px;
	padding: 0px;
	flex: 1;
	}
.box_rightM{
	margin: 0px;
	padding: 0px;
	flex: 3;
	}
.box_leftL{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 3;
	}
.box_leftM{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 2;
	}
.box_leftLM{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 530px;
	}
.box_leftLL{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 560px;
	}
.box_leftS{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 220px;
	}
.box_leftSS{
	margin: 0 20px 20px 0;
	padding: 0px;
	width: 160px;
	}	
.box_left50{
	margin: 0 20px 20px 0;
	padding: 0px;
	flex: 1;
	}
.box_right50{
	margin: 0 0 20px 20px;
	padding: 0px;
	flex: 1;
	}

.box_left50 img.img_waku,
.box_right50 img.img_waku{
	width: 100%;
	height: auto;
	}

.margin-top{
	margin-top: 30px !important;
	}
.margin-top0{
	margin-top: 0 !important;
	}
.margin-bottom{
	margin-bottom: 30px !important;
	}
.margin-bottom0{
	margin-bottom: 0 !important;
	}
.margin-bottom5px{
	margin-bottom: 5px !important;
	}
section{
	margin-bottom: 30px;
	}
.img_waku{
	border: 1px solid #e6e6e6;
	padding: 4px;
	margin-bottom: 5px;
	box-sizing:border-box;
	}
.img_space_right{
	margin-right: 3px;
	}
	
.align_left{
	text-align: left;
}
.align_right{
	text-align: right;
}
.align_center{
	text-align: center;
}
p.tensen{
	border-bottom: 1px dotted #CCC;
	margin: 0 0 2em 0;
	padding: 4px;
	}
.box_pink{
	background: #FCEAF4;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_gray{
	background: #ECECEC;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_yellow{
	background: #FCF9DA;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_yellow2{
	background: #f5f5de;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_blue{
	background: #e9f6fc;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_dullblue{
	background: #e2eaee;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	}
.box_color{/*pink*/
	margin: 20px 0;
	padding: 20px;
	background-color: #fde4e3;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color2{/*yellow*/
	margin: 20px 0;
	padding: 20px;
	background-color: #f9edc1;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color3{/*green*/
	margin: 20px 0;
	padding: 20px;
	background-color: #e7ebbf;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
.box_color4{/*orange*/
	margin: 20px 0;
	padding: 20px;
	background: #F9E5A5;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}

.box_tensen{
	margin: 20px 0;
	padding: 20px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 10px;
	border: dashed 2px #ccc;
	}

.margin-top0{
	margin-top:0;
	}
.margin-left10{
	margin-left:10px;
	}
.box_color p:last-child,
.box_color2 p:last-child,
.box_color3 p:last-child,
.box_color4 p:last-child{
	margin-bottom:0;
	}
	

	
#contents .box_yellow h4{
	color:#FCBF00;/*文字色*/
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 10px;
	padding: 0;
	line-height: 1.2em;
	vertical-align: middle;
	}
.arrow_gray{
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	margin: 2px 5px 2px 0;
	border-style: solid;
	border-width: 6px 0 6px 7px;
	border-color: transparent transparent transparent #666666;
	}
.arrow_yellow{
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	margin: 2px 5px 2px 0;
	border-style: solid;
	border-width: 6px 0 6px 7px;
	border-color: transparent transparent transparent #FCE389;
	}
.box_line{
	background: #FFF;
	margin: 20px 0;
	padding: 20px;
	border: 1px solid #CCC;
	}
.box_line2 {
    background: #FFF;
    margin: 20px 0;
    padding: 40px;
    border: 1px solid #CCC;
}

#box_prof h3:first-of-type{
	margin-top: 0;
	}
#box_prof p:last-of-type{
	margin-bottom: 0;
	}
#box_prof {
 	position: relative;
	display: inline-block;
 	margin: 1.5em 0;
	padding: 20px;
	min-width: 120px;
 	max-width: 100%;
	border-radius: 8px;
	background: #FCF5D4;	
}
#box_prof:before{
	content: "";
	position: absolute;
	top: -24px;
	left: 12%;
 	margin-left: -12px;
	border: 12px solid transparent;
	border-bottom: 12px solid #FCF5D4;
}



	
.gotoTop{
	font-size: 12px;
	text-align: right;
	margin: 2em 0;
	padding: 0px;
	}
.gotoTop a:link,
.gotoTop a:visited{
	color: #44afde;
	text-decoration: underline;
}

.gotoTop a:after {
  font-family: FontAwesome;
  content: '\f0d8';
  text-decoration: none;
}

.flexbox {
  display: -webkit-flex; /* Safari */
  display: flex;
}
 
.flexbox_inner {
  display: flex;
}
.flexbox_inner_center {
  -webkit-align-items: baseline; /* Safari */
  align-items:         baseline;
}
.flexbox_inner:first-child,
.flexbox_inner_center:first-child{
  margin-right: 20px;
}
.flex-container_pcOnly {
  display: -webkit-flex; /* Safari */
  display:flex;
  justify-content:space-between;
}
.flex_innerLeft{
  margin-right: 20px;
}
#contents .flex_innerLeft h3,
#contents .flex_innerRight h3,
#contents .flex_innerLeft h4,
#contents .flex_innerRight h4,
#contents .flex_innerLeft h5,
#contents .flex_innerRight h5,
#contents .flex_innerLeft h6,
#contents .flex_innerRight h6,

#contents .box_line h2,
#contents .box_line h3,
#contents .box_line h4,
#contents .box_line h5,
#contents .box_line h6,

#contents .box_line2 h2,
#contents .box_line2 h3,
#contents .box_line2 h4,
#contents .box_line2 h5,
#contents .box_line2 h6{
  margin-top: 0;
}
th.nowrap,
td.nowrap{
	white-space: nowrap;}
	
/*問い合わせボタン--------------------------------*/	
a.btn_toiawase,
a.btn_toiawase_yellow,
a.btn_toiawase_blue,
a.btn_toiawase_dullblue,
a.btn_toiawase_violet,
a.btn_toiawase_yellowgreen {
	width: 230px;
	font-size:16px;
	line-height: 1.2em;
	font-weight: normal;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 auto 1.6em;
	padding: 9px;
	background: #f08b95;/*pink*/
	border-radius: 4px;
	box-shadow: 3px 3px #666666;
	text-align: center;
}
a.btn_toiawase:before,
a.btn_toiawase_yellow:before,
a.btn_toiawase_blue:before,
a.btn_toiawase_dullblue:before,
a.btn_toiawase_violet:before,
a.btn_toiawase_yellowgreen:before {
 	content: "\f0e0";
  	font-family: FontAwesome;
 	margin-right: 6px;
	color: #FFF;
	font-weight: normal;
}
/*yellow*/
a.btn_toiawase_yellow {
	background: #fceb79;
	color: #666;
}
a.btn_toiawase_yellow:before {
	color: #ddc108;
}
/*blue*/
a.btn_toiawase_blue {
	background: #76c3e5;
}
a.btn_toiawase_blue:before {
	color: #2b9dcf;
}

/*dull blue*/
a.btn_toiawase_dullblue {
	background: #609bb6;
}
a.btn_toiawase_dullblue:before {
	color: #FFF;
}

/*violet*/
a.btn_toiawase_violet {
	background: #9381bd;
}

/*yellowgreen*/
a.btn_toiawase_yellowgreen {
	background: #b3bb2f;
}


a.btn_toiawase:hover,
a.btn_toiawase:focus,
a.btn_toiawase_yellow:hover,
a.btn_toiawase_yellow:focus,
a.btn_toiawase_blue:hover,
a.btn_toiawase_blue:focus,
a.btn_toiawase_dullblue:hover,
a.btn_toiawase_dullblue:focus,
a.btn_toiawase_violet:hover,
a.btn_toiawase_violet:focus,
a.btn_toiawase_yellowgreen:hover,
a.btn_toiawase_yellowgreen:focus {
	
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;
	margin: 0 auto 1.6em;
}


/*リンクボタン--------------------------------*/
a.btn_link,
a.btn_link_yellow,
a.btn_link_blue,
a.btn_link_dullblue{
	width: 50%;
	font-size:15px;
	line-height: 1.2em;
	font-weight: 500;
	color: #FFF;
	text-decoration: none;
	display: block;
	margin: 0 auto 4em;
	padding: 1em;
	background: #f08b95;/*pink*/
	border-radius: 4px;
	box-shadow: 3px 3px #666666;
	text-align: center;
}
a.btn_link:before,
a.btn_link_yellow:before,
a.btn_link_blue:before,
a.btn_link_dullblue:before{
 	content: "\f054";
  	font-family: FontAwesome;
 	margin-right: 6px;
	color: #ED5880;
	font-weight: normal;
}
/*yellow*/
a.btn_link_yellow {
	background: #fceb79;
	color: #666;
}
a.btn_link_yellow:before {
	color: #ddc108;
}
/*blue*/
a.btn_link_blue {
	background: #76c3e5;
}
a.btn_link_blue:before {
	color: #3e9dca;
}

/*dullblue*/
a.btn_link_dullblue {
	background: #609bb6;
}
a.btn_link_dullblue:before {
	color: #B8D0DB;
}

a.btn_link:hover,
a.btn_link:focus,
a.btn_link_yellow:hover,
a.btn_link_yellow:focus,
a.btn_link_blue:hover,
a.btn_link_blue:focus,
a.btn_link_dullblue:hover,
a.btn_link_dullblue:focus{
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	box-shadow: none;
	margin: 0 auto 4em;
}



	
	
/*地図----------------------------------*/
.google-maps {
position: relative;
padding-bottom: 75%; /*これが縦横比*/
height: 0;
overflow: hidden;
margin: 20px 0 5px 0;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

/*打ち消し線----------------*/
/*斜め1*/
.naname{
  position: relative;
}
.naname::before {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(10deg);
  background-color: #d84830;
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}
/*斜め2*/
.naname2{
  position: relative;
}
.naname2::before {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(-10deg);
  background-color: #d84830;
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}
/*横*/
.yoko{
  position: relative;
}
.yoko::before {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(0);
  background-color: #d84830;
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}
/*横　二重線*/
.nijiu{
  position: relative;
}
.nijiu::before,
.nijiu::after {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(0);
  background-color: #d84830;
  width: 100%;
  height: 1px;
  left: 0;
}
.nijiu::before {
  top: 55%;
}
.nijiu::after {
  top: 42%;
}


/*文字につける小さいボックス----------------------*/
.box_S_pink,
.box_S_blue{
	padding: 0.3em 0.5em;
	margin: 5px  5px 5px 0;
	font-size: 12px;
	position: relative;
	border-radius: 3px;
    display:inline-block;

}
.box_S_pink{
			background: #fff1f2;
			color: #ED5880;
}
.box_S_blue{
			background: #e9f6fc;
			color: #509ec0;
}
@media only screen and (max-width: 600px) {
     /*スマホ用*/
	.box_S_pink,
	.box_S_blue{
		padding: 0.3em 0.5em;
		font-size: 12px;
		position: relative;
	}
}

#header .tel_sp,
#header .toiawase_sp{
	display: none;
	}
	
	
ol#breadcrumbs{
	color: #999;
	font-size: 12px;
	background: #F5F5F5;
	margin: 0 0 10px;
	padding: 3px 6px;
	border-radius: 5px;
	list-style-type: none;
}
ol#breadcrumbs li {
  	display: inline-block;
	margin: 0;
	padding: 0;
}
ol#breadcrumbs li:before {
    content: none;
}
ol#breadcrumbs li:before {
    font-family: FontAwesome;
    content: '\f101';
    margin-right: 0.3em;
    color: #ccc;
}
ol#breadcrumbs li:first-child:before {
    content: none;
}

a img:hover,
a img:focus {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}	
	.box_yellow{
	background: #FCF5D4;
	margin: 0px;
	padding: 20px;
	}
.box_pink p:last-child,
.box_pinkS p:last-child,
.box_gray p:last-child,
.box_yellow p:last-child{
	margin-bottom: 0px;
	}
#contents .box_yellow h4{
	color:#F09000;/*文字色*/
	font-size: 16px;
	font-weight: bold;
	margin: 5px 0 10px;
	padding: 0;
	line-height: 1.2em;
	vertical-align: middle;
	}
#contents .box_yellow h4:before {
    content: none;
    margin-right: 0;
}
#contents div h2:first-child, #contents div h3:first-child, #contents div h4:first-child, #contents div h5:first-child, #contents div h6:first-child {
    margin-top: 0;
}
/*体験問い合わせボタン--------------------------------*/	

a.btn_taiken:link,
a.btn_taiken:visited  {
	border-radius: 2px;
	background-color: #f09000;
	display: block;
	padding: 8px 16px;
	color: #FFFFFF;
	text-decoration: none;
	box-shadow: 2px 2px 2px rgba(163,98,0,1);
	text-align: center;
}
a.btn_taiken:hover{
	background-color: #d68000;
	box-shadow: none;
}

/*生徒の声--------------------------------*/	
.box_voice{
	background: #FFF;
	margin: 20px 0 0 0;
	padding: 30px;
	border: 1px solid #CCC;
	font-size: 16px;
	}
#contents .box_voice h2{
	background: none;
	margin-top: 0;
	margin-bottom: 10px;
	padding-left:0;
	padding-bottom:3px;
	border-bottom: 2px dashed #e6e6e6;
	}
#contents .box_voice p:last-child,
#contents .box_voice2 p:last-child{
	margin-bottom: 0;
	}
.box_voice2{
	background: #fff1f2;
	margin: 20px 0 60px 0;
	padding: 30px;
	}
#contents .box_voice2 h3{
	margin-top: 0;
	border:none;
	padding-left:0;
	}
	




















/*講師紹介----------------*/
	
.greeting{
	width: 100%;
	
	margin: 0 0 10px;
	padding: 0px;
	height: auto;
	
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	justify-content:space-between;
	
	/* -webkit-flex-direction: row-reverse; *//* Safari */
  	/* flex-direction:         row-reverse;*/
	}
.photo_teacher{
	width: 280px;
	text-align: center;
	margin: 0 20px 0 0;
}
.photo_teacher img{
	width: 100%;
	height: auto;
}
.txt{
	width: 400px;
}	
.img-r {
    float: right;
    margin: 0 0 15px 15px;
}	



/*user	
.img_course img{
	width: 230px;}	
.img_course{
	width: 230px;}	
.txt_course{
	width: 450px;}		
h3 .label{
	font-size: 12px;
	background: #E9E7B4;
	padding: 0.5em 0.8em;
	margin:5px;
}
.step ul li{
	font-weight: bold;
	margin: 0 0 0.5em 1em;
    padding: 0;
}
.step ul li:before {
	content: none;
}
.step ul li:after {
	font-family: FontAwesome;
	content: '\f0d7';
	margin: 0.2em 0 0.2em 3em;
	color: #6092e4;
	font-size: 2em;
	display: block;
}
.step ul li:last-child:after {
	content: none;
}
.step .img{
	padding: 4em 0;
}
.map .img{
	padding: 2em 0 0 1em;
}
.map .img img{
	width: 220px;
}
#contents .map table{
	border: 0;
	border-top: 1px dotted #CCC;
}
#contents .map table th,
#contents .map table td{
	border: 0;
	padding: 0.6em 0.3em;
	background: none;
	border-bottom: 1px dotted #CCC;
}

#contents .map table th{
	width: 30%;
}

生徒の声	
.img_voice img,
.img_voice{
	width: 260px;}
.img_voice img{
	margin-top: 20px;
	-ms-transform:rotate(3deg);
    -webkit-transform:rotate(3deg);
	transform: rotate(3deg);}
.txt_voice{
	width: 410px;}

#voice ul li{
	margin: 0 0 1em 1em;
	padding: 1em 0 2em 2.5em;
	text-indent: -2.5em;
	font-size: 16px;
	font-weight: bold;
	line-height: 2em;
	border-bottom: 1px dotted #CCC;
	}
#voice ul li:before {
	margin:0 0.3em 0 0;
    content:" ";
    display:inline-block;
    width:25px;
	height:32px;
    background:url(img_user/smile.png) no-repeat;    
    background-size:contain;
    vertical-align:middle;
}
#voice .seito_info{
	font-size: 12px;
	color: #999;
	font-weight: normal;
	}
----------------*/

figure img,
img{
	max-width: 100%;
	height:auto;
	}







@media only screen and (max-width: 979px) {
     /*タブレット用*/


	 
/*全体を囲む枠--------------------------------------*/
#wrap{
	width:100%;
	margin: 0 auto ;
	padding: 0;
	display: block;
	}
#home #wrap{
	}

#header_container,
#topImg,
#access,
#main_waku,
#top_news,
#access_footer{
	width:702px;
	margin:0 auto;
}
/*ヘッダー-----------------------------------------*/

#header div.siteDiscription {
	padding: 0 ;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */
}
#header div.siteDiscription_inner{
	height: 50px;
	flex: 1 1 auto;
	min-width: 0;
	padding: 5px 40px 5px 0
}
#header #tit {
 
    padding: 0;
    font-size: 48px;
    line-height: 1em;
    font-weight: bold;
}

#header #left_box{
	margin: 0;
	padding: 0;
	height: auto;
	width: 70%;
	}
#header #right_box{
	margin: 0;
	padding: 0;	
	height: auto;
	width: 28%;
	display: -webkit-box; /*Android4.3*/
  	display: -moz-box;    /*Firefox21*/
  	display: -ms-flexbox; /*IE10*/
 	display: -webkit-flex; /*PC-Safari,iOS8.4*/
 	display: flex;
	justify-content: flex-end;
	}

#header .howToAccess {
    display: block;
        width: 702px;
    margin: 0 auto;
}
	
#header p.addressTxt {
   	visibility: hidden;
	font-size: 0;
	line-height: 0;
}

#header a.mapTxt_sp {
	visibility: visible;
	font-size: 10px;
	background: #e6e6e6;
	padding:0 6px;
	border-radius: 4px;
	display: inline-block;
}
	
#header p.tel{
	display: none;
	}
#header p.telTxt{
	display: none;
	}

#header .tel_sp,
#header .toiawase_sp{
	display: block;
	width:60px;
	height:60px;
	margin:0;
	padding:0;
	background: #f08b95;/*pink*/
	border-radius: 8px;
	box-shadow: 3px 3px #666666;
	text-align: center;
	font-size: 12px;
	}
#header .tel_sp a,
#header .toiawase_sp a{
	display: block;
	width:60px;
	height:60px;
	margin-bottom:4px;
	}

#header .tel_sp img,
#header .toiawase_sp img{
	width:44px;
	height:44px;
	margin:8px;
	padding:0;
	}

#header .toiawase_sp{
	background: #76c3e5;/*blue*/
	margin-left:20px;
	}
	
	
#topImg {
    background: url(images/headImgTB.png) no-repeat 50% 0;
	background-size:100%;
    height: 65px;
	margin:10px auto;
    display: block;
}

/*メニュー------------------------------------------*/

#access {
	margin-bottom: 16px;
	padding: 0;
	}

#access li {
    margin-bottom: 0.8em;
}

#access ul {
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
	justify-content:space-between;
	}
#access li {
	margin: 10px 1% 0.5em 0;
	font-size: 14px;
	width: 20%;
}
	#access li:nth-child(4){
		margin-right: 0;
	}
/*メインコンテンツ・下層ページ----------------------*/	
#main_waku {
	clear: both;
	padding: 0;
}

#contents{
	padding: 0;
	}

#contents h2{
	font-size: 24px;
	font-weight: bold;
}
#contents h3{
	font-size: 22px;
	font-weight: bold;
}
#contents h4{
	font-size: 18px;
	font-weight: bold;
}
#contents h5{
	font-size: 16px;
}
#contents h6{
	font-size: 14px;
}






/*トップページのみ---------------------*/
#top_img_container{
	width: auto;
	margin: 10px 0 0;
	padding: 0;
}

.top_img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    margin: 0;
}

/*お知らせコーナー*/
#top_news{
	margin-bottom:30px;
	padding: 0;
}

#top_news_right {
    width: 100%;
}
.box_top_img {
    margin: 0 20px 20px 0;
    padding: 0px;
    height: auto;
    width: 100%;
    text-align: left;
    display: block;
}

/*メインコンテンツ・下層ページ----------------------*/	

#contents h1 {
	background-size: 100%;
}
	.photo_teacher{
	width: 240px;
}

/*フッター-----------------------------------------*/

/* =下部メニュー
-------------------------------------------------------------- */
#access_footer{
	margin: 20px auto 40px;
	padding: 0 0;
	height:auto;
	}
#access_footer h2.menu_tit_sp{
	visibility: visible;
	margin: 0 0 6px;
	border-bottom: 1px solid #ddd;
	}
#access_footer h2.menu_tit_sp i{
	color:#cbcbcb;
	margin-right: 5px;
	}
#access_footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align:center;
	letter-spacing: 0.08em;
	
	display: -webkit-box; /*Android4.3*/
  	display: -moz-box;    /*Firefox21*/
  	display: -ms-flexbox; /*IE10*/
 	display: -webkit-flex; /*PC-Safari,iOS8.4*/
 	display: flex;
	flex-wrap: wrap;
	
	
}
#access_footer li:before {
  content: none;
  margin-right: 0;

}
#access_footer li a:before {
  font-family: FontAwesome;
  content: '\f105';
  color:#cbcbcb;
  margin-right: 5px;

}
#access_footer li {
	width: 24%;
	font-size:14px;
	line-height: 1.2em;
	font-weight: normal;
	display: block;
	margin: 0;
	padding: 0;
	
	border:0;

	text-align: left;
}

#access_footer li a{
	display: block;
	
	text-decoration: none;
	padding: 9px;
}
#access_footer li:nth-child(even){
	border-right: 0;
}



/* 共通
----------------------------------------------- */
figure,
figcaption,
figcaption.align_right{
	text-align: center;
	}

/*user*/
	#top_message{
	background-size: 100%;
    padding: 80px;	
	}

/*リンクボタン--------------------------------*/
a.btn_link,
a.btn_link_yellow,
a.btn_link_blue,
a.btn_link_dullblue{
	width: 60%;
}
 
 
 
}


@media only screen and (max-width: 600px) {
     /*スマホ用*/
	
	/*全体を囲む枠--------------------------------------*/ 
	#header_container,
	#header .howToAccess,
	#topImg,
	#access,
	#main_waku,
	#top_news,
	#access_footer{
		width: auto;
		margin:0 24px;
	}


	.entry-header,
	.entry-summary,
	.entry-content,
	.entry-footer,
	.page-content {
		margin-right: 0;
		margin-left: 0;
	}
	p {
		margin: 0 0 1em 0;
	}
	#contents table {
		margin: 0 0 1em 0;
	}
		
	/*ヘッダー-----------------------------------------*/
	#header div.siteDiscription_inner{
		font-size: 12px;
		flex: 1 1 auto;
		min-width: 0;
	}
	#header #tit {
		margin: 0.3em 0 0.2em;
		padding: 0;
		font-size: 7.2vw;
		line-height: 1.15em;
		font-weight: bold;
	}
	/* ヘッダー全体 */
	#header_container{
		padding-top: 8px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
	}
	/* 左側：教室名 */
	#header #left_box{
		margin: 0;
		padding: 0;
		height: auto;
		min-height: auto;
		flex: 1 1 auto; min-width: 0;
		background: none;
	}

	#header #right_box{
		margin: 0;
		margin-top: 26px;
		padding: 0;	
		width: 104px;
		height: auto;
		display: -webkit-box; /*Android4.3*/
		display: -moz-box;    /*Firefox21*/
		display: -ms-flexbox; /*IE10*/
		display: -webkit-flex; /*PC-Safari,iOS8.4*/
		display: flex;
		justify-content: flex-end;
		}
	/* 教室名 */
	#header #tit a{
		display: block;
		white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	/* 右側：ハンバーガーやボタン類 */
	#header #right_box{
		margin: 0;
		padding: 0;
		width: 104px;
		flex: 0 0 104px;
		height: auto;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
	#header p.tel{
		display: none;
		}
	#header p.telTxt{
		display: none;
		}
	#header span.telNo{
		height:40px;
		}
	/* もし電話・問い合わせアイコンが出るなら小さめに */
	#header .tel_sp,
	#header .toiawase_sp{
		width: 40px;
		height: 40px;
		margin: 0;
		padding: 0;
		border-radius: 4px;
		box-shadow: 2px 2px #666666;
	}
	#header .tel_sp a,
	#header .toiawase_sp a{
		width: 40px;
		height: 40px;
		margin: 0;
	}

	#header .tel_sp img,
	#header .toiawase_sp img{
		width: 30px;
		height: 30px;
		margin: 5px;
		padding: 0;
	}

	#header .toiawase_sp{
		background: #76c3e5;/*blue*/
		margin-left: 8px;
		}

	#header .howToAccess{
		padding:0;
		font-size: 12px;
		line-height: 1.4em;
		}
	/*メニュー------------------------------------------*/
		#menu_header{
		display: none;
		}
		#menu_header_sp{
			flex: 0 0 auto;
			display: flex;
			align-items: center;
		}

	/*トップページのみ---------------------*/
	#topImg {
		background: url(images/headImgSP.png) no-repeat 50% 0;
		background-size: 100%;
		height: 56px;
		display: block;
		margin-top: 5px;
		margin-bottom: 5px;
	}

	/*トップページ・お知らせコーナー----------------------*/
	#top_news{
		display: block;
		margin: 0 auto 30px;
		padding: 0;
		width: 100%;
	}
	#top_news_left{
		width: 100%;
		background: #ed7891;
		border-radius: 5px 5px 0 0;
		padding: 8px 15px;
	}
	#top_news_right{
		background: #fbebef;
		border-radius: 0 0 5px 5px;
		width: 100%;
		padding: 15px;
	}
	#main_waku #top_news h2 {
		font-size: 12px;
		font-weight: normal;
		min-height:1em;
	}


	#top_news ul {
		margin: 0;
		padding: 0 0 0 0;
		list-style: none;
		font-size: 14px;
		line-height: 1.2em;
	}
	#top_news .news_date {
		font-size: 11px;
	}
	/*メインコンテンツ・下層ページ----------------------*/	

	.catchcopy {
		font-size: 16px;
	}
	#contents h1 {
		background: url(images/h1_bgSP.png) no-repeat 0 100%;
		background-size: 100%;
		font-size: 22px;
		line-height: 1.35em;
		font-weight: bold;
		padding: 7px 10px 22px 20px;
		margin: 0.8em 0 0.8em;
		vertical-align: bottom;
		min-height: 52px;
	}
	#contents h2 {
		background: url(images/h2_bgSP.png) no-repeat 0 50%;
		background-size: 30px;
		font-size: 20px;
		padding: 0 0 0 32px;
		min-height: 20px;
		vertical-align: bottom;
		border-bottom: 1px solid #ed7791;
	}
	#contents h3 {
		font-size: 16px;
		line-height: 1.6em;
	}


	#contents table th {
		white-space: normal;
	}

	/*問い合わせフォーム----------------------*/	
	#contents table#form,
	#contents table#form th,
	#contents table#form td,
	#contents table#form_kakunin,
	#contents table#form_kakunin th,
	#contents table#form_kakunin td{
		width: 100%;
		border: 0;
		}

	table#form th,
	table#form td,
	table#form_kakunin th,
	table#form_kakunin td{
		display: block;
		}


	/*フッター-----------------------------------------*/

	/* =下部メニュー
	-------------------------------------------------------------- */
	#access_footer{
		margin: 20px 20px 40px 20px;
		padding: 0 0;
		width: auto;
		max-width: 100%;
		height: auto;
		}
	#access_footer li {
		width: 50%;
	}
	#access_footer li:nth-child(even){
		border-right: 0;
	}

	/* =Footer
	----------------------------------------------- */
	#footer_wrap{
		}
	#footer {
		width:100%;
		margin: 0 auto;
		padding: 60px 0 6px 0;
		background: url(images/footerImg_sp.png) no-repeat 0 0;
		background-size:100% auto;
		text-align: center;
		font-size: 10px;
	}
	#footer #siteInfo{
		display: block;
	}
	#footer #site-title {
		margin:0 0 0.2em;
		padding: 0;
		font-size: 14px;
		font-weight: bold;
	}
	#footer #site-title a {
		text-decoration: none;
		color: #ED5880;/* 文字色（リンク） */
		
	}

	#footer #site-title a:hover {
		color: #44afde;
		text-decoration: none;
		
	}

	#footer p.add{
		margin:0 0 0.2em;
		padding: 0;
		
		}
	#footer p.tel{
		margin:0 0 0.2em;
		padding: 0;
		
		}
	#footer p.tel:before {
	font-family: FontAwesome;
	content: '\f095';
	margin-right: 3px;
	}

		
	#footer_copyright{
		
		
		text-align: center;
		margin:0;
		padding: 2px;
	}
	/*共通設定------------------------------------------*/
	.base_box{
		width: 100%;
		display: block;
		}

	.box_left,
	.box_right,
	.box_rightS,
	.box_leftL,
	.box_leftLM,
	.box_leftLL,
	.box_leftS,
	.box_leftSS,
	.box_left50,
	.box_right50{
		margin: 0 0 20px;
		padding: 0;
		width: 100%;
		}

	.flex-container_pcOnly {
	display:block;
	}
	.flex_innerLeft{
	margin-right: 0;
	margin-bottom: 30px;
	}

	#box_prof:before{
		left: 50%;
	}
	.photo_teacher{
		margin: 0 auto 20px;
	}
	.txt {
		width: 100%;
	}
	/*お知らせ*/
	.blog #primary h2, .archive #primary h2, .single #primary h2 {
		background: url(images/h2_bgSP.png) no-repeat 0 100%;
		background-size: 100%;
		font-size: 16px;
		padding: 0 0 2px 20px;
		min-height: 20px;
		vertical-align: bottom;
	}
	#contents .news_contents .entry-header {
		margin: 0 0 1em 0;
	}
	#contents .news_contents p.news_date {
		margin: 0 0 1em 0;
	}
	#contents .news_contents p.news_date span {
		font-size: 12px;
	}
	#contents .news_contents {
		margin: 0 0 60px 0;
		padding: 1.5em 1.5em;
	}
	.single #contents .news_contents {
		margin: 0 0 60px 0;
		padding: 0;
		border: none;
	}
	.archive #primary .page-header h2 {
		padding: 8px;
		margin: 1em 0 20px;
		font-size: 14px;
		line-height: 1.2em;
		font-weight: bold;
		border: none;
		background-image: none;
		background-color: #F1F0E7;
		color: #555555;
	}
	#contents .news_contents p:last-child{
		margin-bottom: 0;
	}
	/*リンクボタン--------------------------------*/
	a.btn_link,
	a.btn_link_yellow,
	a.btn_link_blue,
	a.btn_link_dullblue{
		width: auto;
	}
	a.btn_toiawase, a.btn_toiawase_yellow, a.btn_toiawase_blue, a.btn_toiawase_dullblue, a.btn_toiawase_violet, a.btn_toiawase_yellowgreen {
		width: auto;
	}
		
    
}


@media only screen and (max-width: 480px) {
     /*小さいスマホ用*/
    #header #tit{
		font-size: clamp(22px, 5.8vw, 27px);
		letter-spacing: -0.03em;
  	}
    #header #right_box{
		width: 48px;
		flex-basis: 48px;
	}
	#header .toiawase_sp{
		margin-left: 6px;
	}
}


#contents table.align_center {
    margin: 0 auto 1em;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 600px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

/*文字詰め*/
.mojidume {
  letter-spacing: -0.04em
}





/*menu-------------------------------------------------------------- */

/*ナビメニューのスタイルを指定*/
nav.NavMenu{
position: fixed; /*表示位置を固定*/
z-index: 2; /*重ね順を変更*/
top: 0; /*表示位置を指定*/
left: 0; /*表示位置を指定*/
/*background: #fff;背景を白にする*/
color: #000; /*文字色を黒にする*/
text-align: center; /*テキストを中央揃え*/
width: 100%; /*全幅表示*/
transform: translateY(-100%); /*ナビを上に隠す*/
transition: all 0.6s; /*アニメーションの時間を指定*/
}

nav.NavMenu ul{
background: rgba(83,83,83,0.9);/*rgba(43,89,110,0.9);*//*rgba(60,50,40,0.9);*/ /*背景*/
width: 100%;
margin: 0 auto;
padding: 0;
}
nav.NavMenu ul li:before {
  	content: none;
}
nav.NavMenu ul li{
font-size: 1.1em;
list-style-type: none;
padding: 0;
margin: 0;
width: 100%;
border-bottom: 1px dotted #aaa;/*#7b9aa8;*//*#796d62;*/
	text-indent: 0;
}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
border-bottom: none; /*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a{
display: block; /*クリックできる領域を広げる*/
color: #fff;
padding: 1em 0;
text-decoration: none;
}
 
.Toggle span:nth-child(3) {
    top: 23px;
}
 
/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
 
/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media only screen and (max-width: 600px){
	}

#header div.siteDiscription {
    background: #609bb6;
	color: #333;
	font-weight: bold;
	padding: 20px 50px 5px;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */
}

@media only screen and (max-width: 600px){
#header div.siteDiscription {
	color: #FFF;/*#144566;*/
	font-weight: normal;
	padding: 0;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */
}
}
@media only screen and (max-width: 600px){

  .siteDiscription{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .siteDiscription_inner{
    flex: 1 1 auto;
    min-width: 0;
    padding-right: 60px; /* ボタン分を逃がす */
    position: relative;
    z-index: 1;
  }

  #menu_header_sp{
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 51px;
    z-index: 9999;
  }

  .Toggle{
	display: block;
    position: fixed;
    right: 13px;
    top: 12px;
    width: 42px;
    height: 42px;
    cursor: pointer;
    z-index: 3;
  }
 
  .ribbon{
    position: absolute;
	display: inline-block;
    top: 0;
    right: 21px;
    width: 44px;
    height: 44px;
    z-index: 10000;
    cursor: pointer;
  }

  .NavMenu{
    position: fixed;
    top: 44px;
    left: 0;
    width: 100%;
    transform: translateY(-120%);
    transition: transform .35s ease;
    z-index: 9998;
  }

  .NavMenu.active{
    transform: translateY(0);
  }
}
/*//menu-------------------------------------------------------------- */

/*生徒募集コーナー-------------------------*/
.txtbox_boshu{
	margin: 30px auto 40px;
	padding: 30px;
	clear: both;
	float: none;
	height: auto;
	width: 500px;
	background: #fefaea;
	color: #444;
	}
#content .txtbox_boshu h2{
	font: bold 20px/1em "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: url(images/h2_bg.png) no-repeat 0px 100%;
	padding:0 0 0 45px;
	margin:0 0 20px;
	min-height:27px;
	}
@media only screen and (max-width: 600px){
.txtbox_boshu{
	width: 100%;
	}
}


#blog {
    margin: 0 auto 0;
    max-width: 326px;
    text-decoration: none;
    font-size: 12px;
    text-align: center;
    letter-spacing: 0.01em;
}






















/* ======================================================= */
/*　▼color.css（GB）*/
/* ======================================================= */

body {
	background: #eaeaea; /* 背景色 */
	color: #3d3d3d;
}
#tit a{
	color: #3d3d3d;
}
#topImg {
    background: url(images/GB/headImg.png) no-repeat;
}
/*メニュー------------------------------------------*/
#access li {
	background: #609bb6;/*青*/
	/*#f27690：ピンク*/
	/* af9fd3：紫 */
	/*box-shadow: 3px 3px #ddd;*/
}
#access a {
	color: #FFF;
}
#access li:hover,
#access li:focus {
	color: #dddfe0;
}
#access a::before {
    background: url(images/GB/onpu1.svg) no-repeat;
    background-size: 30px;
}

#access li:nth-child(2) a::before{
	background: url(images/GB/onpu2.svg) no-repeat;
	background-size: 27px;

}
#access li:nth-child(3)  a::before{
	background: url(images/GB/onpu3.svg) no-repeat;
	background-size: 16px;
}
#access li:nth-child(4)  a::before{
	background: url(images/GB/onpu4.svg) no-repeat;
	background-size: 26px;
}
#access li:nth-child(5)  a::before{
	background: url(images/GB/onpu5.svg) no-repeat;
	background-size: 14px;
}
#access li:nth-child(6)  a::before{
	background: url(images/GB/onpu6.svg) no-repeat;
	background-size: 22px;
}



#contents h1 {
    background: url(images/GB/h1_bg.png) no-repeat 0 100%;
}
#contents h1 a {
	color: #222;
}
#contents h2,
#content .txtbox_boshu h2{
    background: url(images/GB/h2_bg.png) no-repeat 0px 100%;
}
#contents h3{
	color: #146c94;/*青*/
	/*#e6657e;ピンク*/
	border-left: 6px solid #e6e4e1;/*H3 左ボーダー色*/
	}
#contents h3.h3_bg{
	border-left: none;
    padding: 8px;
    background: #FCEAF4;
    margin: 30px 0 20px;
	}
#contents h4{
	border-bottom: 1px dotted #ccc;
	}
#contents h4:before {
    font-family: FontAwesome;
    content: '\f001';
    margin-right: 0.4em;
    color: #609bb6;/*青*/
	/*#ed7891;ピンク*/
}
#contents h5{
	color:#146c94;/*青*/
	/*#e6657e;ピンク*/
	border-left: 5px solid #e2eaee;/*薄青*/
	/*#FCD3D9;薄ピンク*/
	}
#contents h6{
	color:#146c94;/*青*/
	/*#e6657e;ピンク*/
	}
/*テーブル -----------------------------*/
#contents table{
	border-left: 1px solid #777;
	border-top: 1px solid #777;
	}
#contents table th,
#contents table td{
	border-right: 1px solid #777;
	border-bottom: 1px solid #777;
	}
#contents table th{
	background: #cddd83;
	}
#contents table td{
	background: #FFF;
	}
#contents table th.color1{
	background: #e6ef82;
}
#contents table th.color2{
	background: #ddd;
}


/*テーブル（レッスン料金表）-----------------------------*/	
#main table.lesson,
#main table.lesson th,
#main table.lesson td{
	border-color: #ccc;
}

#main table.lesson th{
	background: #efefef;
}
#main table.lesson th.color2{
	background: #f7d6dd;
}



/*テーブル　料金表 -----------------------------*/	
#contents table.hyou,
#contents table.hyou th,
#contents table.hyou td{
	border-color: #BBB;
	}
#contents table.hyou td{
	background: #FFF;
	}
#contents table.hyou th{
	color: #555;/*文字色*/
	background: #FCE1EB;
	}
#contents table.hyou th.color2{
	border-left: 1px dotted #FFF;
	color: #FFF;/*文字色*/
	background: #ED7891;
	}
	
.txtbox_boshu {
    background: #f9f7f1;
}



/*トップページのみ---------------------*/
/*お知らせコーナー*/
#top_news_left{
	background: #99c2d3;/*うすい青*/
	/*#ed7891：ピンク*/
	/*#9381bd;紫*/
}
#top_news_right{
	background: #f9f7f1;/*ベージュ*/
    /*#e2eaee;/*青*/
	/*#fbebef：ピンク*/
	/*#e9e6f1;紫*/
}
#main_waku #top_news h2{
	color: #FFF;
}
#top_news .news_date{
	color:#999;/*文字色*/
}

/*お知らせページ---------------------*/
#contents .news_contents p.news_date span{ /*お知らせ　日付*/
	color:#999;/*グレー*/
	/* #e6657e;：ピンク*/
	background: #f5f5f5;/*グレー*/
	/* #fce7eb;/*薄ピンク*/
	}
.blog #secondary h2:before, .single #secondary h2:before {
    color: #99c2d3;
}
/*問い合わせフォーム---------------------*/


table#form th{
	color:#333;
	}
form .necessary{
	color: #F55067;/*文字色*/
	}
form #error_message{
	color: #F55067;/*文字色*/
	}

input#submit_button {
    background-color: #f195a9;
    color: #FFF;
}
input#submit_button:hover{
	background-color: #f27690;
}

input#modoru_button {
    background-color: #999;
    color: #FFF;
}
input#modoru_button:hover{
	background-color: #666;
}


/*問い合わせフォームページ内ボタン*/
button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus,
button.submit_button,
button.modoru_button,
button[type="submit"].submit_button,
button[type="button"].modoru_button {
	color: #FFF;
	background: #609bb6;/*くすんだ青*/
	/*#76c3e5;明るい青*/
}


/*フッター-----------------------------------------*/

/* =下部メニュー
-------------------------------------------------------------- */



/* =Footer
----------------------------------------------- */
#footer {
	background: #FFF url(images/GB/footerImg.png) no-repeat 0 0; /* 背景色 */
	color: #146c94;/*青*/
	/*#ED5880;　ピンク*/
	/*紫：#a392cb;*/
}
#footer #site-title a {
	color: #146c94;/*青*/
	/*#ED5880;　ピンク*/
	/*紫：#a392cb;*/
}



.box_pink {
    background: #fff1f2;/*薄いピンク*/
}







@media only screen and (max-width: 979px) {
     /*タブレット用*/

/*ヘッダー-----------------------------------------*/
#header .tel_sp,
#header .toiawase_sp{
  width:48px;
  height:48px;
}

#header .tel_sp a,
#header .toiawase_sp a{
  width:48px;
  height:48px;
}

#header .tel_sp img,
#header .toiawase_sp img{
  width:34px;
  height:34px;
  margin:7px;
}
#header .toiawase_sp{
	background: #76c3e5;/*blue*/
	}
#topImg {
    background: url(images/GB/headImgTB.png) no-repeat 50% 0;
	background-size: 100%;
}
}


@media only screen and (max-width: 600px) {
     /*スマホ用*/
#header .tel_sp,
#header .toiawase_sp{
	background: #f08b95;/*pink*/
	box-shadow: 3px 3px #666666;
	color: #aaa;
	}
#header .toiawase_sp{
	background: #76c3e5;/*blue*/
	}
#topImg {
    background: url(images/GB/headImgSP.png) no-repeat 50% 0;
	background-size: 100%;
}
#header div.siteDiscription {
    background: #609bb6;
	color: #FFF;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */
}
/* リボン本体（ハンバーガー） */
  .Toggle.ribbon{
    position: relative;          /* ← これが基準 */
    display: inline-block;
    width: 44px;
    height: 44px;
    margin-left: 8px;
    padding: 9px 0 7px;
    text-align: center;
    font-size: 17px;
    color: #fff;
    background: linear-gradient(#2c7fa4 0%, #075f87 100%);
    box-sizing: border-box;
  }

  /* 下に伸びる三角形を右端に合わせる */
  .Toggle.ribbon:after{
    content: '';
    position: absolute;
    top: 100%;
    right: 0;                   /* ← left ではなく right 基準 */
    width: 0;
    height: 0;
    border-left: 22px solid #075f87;
    border-right: 22px solid #075f87;
    border-bottom: 7px solid transparent;
  }

  /* 3本線は中央に */
  .Toggle.ribbon span{
    display: block;
    position: absolute;
    left: 7px;
    width: 30px;
    border-bottom: solid 3px #fff;
    transition: .35s ease-in-out;
  }
  .Toggle.ribbon span:nth-child(1){ top: 8px;  }
  .Toggle.ribbon span:nth-child(2){ top: 16px; }
  .Toggle.ribbon span:nth-child(3){ top: 24px; }

  .Toggle.ribbon.active span:nth-child(1){
    top: 18px;
    transform: rotate(-45deg);
  }
  .Toggle.ribbon.active span:nth-child(2),
  .Toggle.ribbon.active span:nth-child(3){
    top: 18px;
    transform: rotate(45deg);
  }

  .Toggle.ribbon p{
    display: none;
  }
/* SPメニュー本体：初期は隠す */
  #menu_header_sp nav.NavMenu{
    position: fixed;
    top: 44px;           /* 青帯の下から出したい位置 */
    left: 0;
    width: 100%;
    padding: 14px 24px 18px;
    box-sizing: border-box;
    background: rgba(6, 89, 128, 0.97);
    transform: translateY(-120%);  /* ← ここが「隠す」ポイント */
    transition: transform .35s ease;
    z-index: 9998;
  }

  /* active が付いたら表示 */
  #menu_header_sp nav.NavMenu.active{
    transform: translateY(0);
  }
/*トップページ・お知らせコーナー----------------------*/
#top_news_left{
	background: #99c2d3;/*薄い青*/
    /*#609bb6;青*/
	/*#ed7891：ピンク*/
	/*#9381bd;紫*/
}
#top_news_right{
	background: #f9f7f1;/*薄い青*/
    /*#e2eaee;/*青*/
	/*#fbebef：ピンク*/
	/*#e9e6f1;紫*/
}
	
#contents h1 {
    background: url(images/GB/h1_bgSP.png) no-repeat 0 100%;
    background-size: 100%;
}	
#contents h2,
#content .txtbox_boshu h2{
    background: url(images/GB/h2_bgSP.png) no-repeat 0 50%;
    background-size: 30px;
    border-bottom: 1px solid #609bb6;/*青*/
	/*#ed7891：ピンク*/
	/*#9381bd;紫*/
}
	
	
	
/* =Footer
----------------------------------------------- */
#footer {
	width:100%;
	margin: 0 auto;
	padding: 60px 0 6px 0;
	background: url(images/GB/footerImg_sp.png) no-repeat 0 0;
	background-size:100% auto;
	text-align: center;
	font-size: 10px;
}
#footer #site-title a {
	color: #146c94;/*青*/
	/*#ED5880;　ピンク*/
	/*紫：#a392cb;*/
}

#footer #site-title a:hover {
	color: #44afde;
}
}


/* ======================================================= */
/*　▲color.css（GB）*/
/* ======================================================= */
/* ======================================================= */
/*　ここから20260427リニューアル*/
/* ======================================================= */
/* =======================================================
   SP header final reset 2026-04-27
   方針:
   - メニューは青帯の右上
   - 電話/問い合わせは白ヘッダー右側
   - 教室名は少し小さく
======================================================= */
@media only screen and (max-width: 600px) {

  /* ---------- 青い帯 ---------- */
  header div.siteDiscription{
    position: relative;
    background: #609bb6 !important;
    color: #fff !important;
    padding: 0 !important;
    min-height: 42px;
	display: flex;
	align-items: center;           /* 垂直方向センター */
	justify-content: space-between;/* 左右端に配置 */

  }

  header div.siteDiscriptioninner{
    width: auto !important;
    margin: 0 24px !important;
    padding: 10px 66px 8px 0 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    color: #fff !important;
    box-sizing: border-box;
  }

  /* ---------- SPメニュー ---------- */
  #menuheader{
    display: none !important;
  }

  #menuheadersp{
    display: block !important;
    position: absolute;
    right: 12px;
    top: 4px;
    width: 44px;
    height: 44px;
    min-height: 44px;
    z-index: 10000;
  }

  #menuheadersp .Toggle{
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    z-index: 10001 !important;
  }

  #menuheadersp .ribbon{
    position: absolute !important;
    right: 0 !important;
    top: 0 !important;
    width: 44px !important;
    margin: 0 !important;
    padding: 9px 0 7px !important;
    background: linear-gradient(#2c7fa4 0, #075f87 100%) !important;
  }

  #menuheadersp .ribbon:after{
    border-left: 22px solid #075f87 !important;
    border-right: 22px solid #075f87 !important;
    border-bottom: 7px solid transparent !important;
  }

  #menuheadersp .Toggle span{
    display: block;
    position: absolute;
    left: 7px !important;
    width: 30px !important;
    border-bottom: solid 3px #fff;
  }

  #menuheadersp .Toggle span:nth-child(1){ top: 8px !important; }
  #menuheadersp .Toggle span:nth-child(2){ top: 16px !important; }
  #menuheadersp .Toggle span:nth-child(3){ top: 24px !important; }

  #menuheadersp .Toggle.active span:nth-child(1){
    top: 18px !important;
    transform: rotate(-45deg);
  }

  #menuheadersp .Toggle.active span:nth-child(2),
  #menuheadersp .Toggle.active span:nth-child(3){
    top: 18px !important;
    transform: rotate(45deg);
  }

  #menuheadersp .Toggle p{
    display: none !important;
  }

  nav.NavMenu{
    position: fixed !important;
    top: 42px !important;
    left: 0;
    width: 100%;
    z-index: 9999 !important;
    transform: translateY(-100%);
    transition: all 0.35s ease;
  }

  nav.NavMenu.active{
    transform: translateY(0);
  }

  /* ---------- 白ヘッダー ---------- */
  #headercontainer{
    width: auto !important;
    margin: 0 24px !important;
    padding-top: 12px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
  }

  #leftbox{
    flex: 1 1 auto; min-width: 0;
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #tit{
    margin: 0.15em 0 0.15em !important;
    padding: 0 !important;
    font-size: clamp(19px, 5.9vw, 27px) !important;
    line-height: 1.18 !important;
    letter-spacing: -0.03em !important;
    font-weight: bold;
  }

  #tit a{
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  #rightbox{
    width: 104px !important;
    flex: 0 0 104px !important;
    margin: 0 !important;
    padding: 2px 0 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    gap: 8px !important;
    text-align: left !important;
  }

  #rightbox p.tel,
  #rightbox p.telTxt{
    display: none !important;
  }

  #rightbox .telsp,
  #rightbox .toiawasesp{
    display: block !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    max-width: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
    box-shadow: 2px 2px 6px rgba(0,0,0,.24) !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    white-space: nowrap !important;
    writing-mode: horizontal-tb !important;
  }

  #rightbox .telsp{
    background: #f08b95 !important;
  }

  #rightbox .toiawasesp{
    background: #76c3e5 !important;
  }

  #rightbox .telsp a,
  #rightbox .toiawasesp a{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  #rightbox .telsp img,
  #rightbox .toiawasesp img{
    display: block !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    max-width: 30px !important;
    max-height: 30px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
  }

  #rightbox .telsp .telNo,
  #rightbox .telsp:before,
  #rightbox .telsp:after,
  #rightbox .toiawasesp:before,
  #rightbox .toiawasesp:after{
    display: none !important;
    content: none !important;
  }

  /* ---------- 住所 ---------- */
  header .howToAccess{
    width: auto !important;
    margin: 0 24px !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  /* ---------- 装飾線 ---------- */
  #topImg{
    width: auto !important;
    margin: 8px 24px 5px !important;
    height: 56px !important;
    background-size: 100% auto !important;
  }
}

@media only screen and (max-width: 480px) {
  header div.siteDiscriptioninner{
    padding-right: 60px !important;
    font-size: 11px !important;
  }

  #tit{
    font-size: clamp(18px, 5.6vw, 24px) !important;
  }

  #rightbox{
    width: 96px !important;
    flex-basis: 96px !important;
    gap: 6px !important;
  }

  #rightbox .telsp,
  #rightbox .toiawasesp{
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }

  #rightbox .telsp a,
  #rightbox .toiawasesp a{
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }

  #rightbox .telsp img,
  #rightbox .toiawasesp img{
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
  }
}
@media only screen and (max-width: 600px){

  #menu_header_sp{
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 51px;
    z-index: 9999;
  }

  .Toggle.ribbon{
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 44px;
    z-index: 10000;
    cursor: pointer;
  }

  .Toggle.ribbon:after{
    pointer-events: none;
  }

  .Toggle.ribbon span{
    pointer-events: none;
  }

  .Toggle.ribbon p{
    pointer-events: none;
  }
}