@charset "utf-8";
/*
* Theme Name: sonnoupiano
* Author: sonnoupiano
* Version: 1.5
* Description:
*/
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, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}
/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	margin: 0px;
	padding: 0;
	border-bottom: #f5b4b9 1px solid;
}
hr.wh {
	border-bottom: #dfdfdf 1px solid;
}
hr.bl {
	border-bottom: #013f8c 5px solid;
}
input, select {
	vertical-align: middle;
}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: middle;
}
strong {
	font-weight: bold;
}
body {
	position: relative;
	font-family: "FP-ヒラギノUD角ゴ StdN W5", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: 500;
	font-size: 16px;
	line-height: 2;
	color: #333333;
	min-width: 1054px;
}
a {
	color: #333333;
	text-decoration: underline;
}
a:hover {
	color: #333333;
	text-decoration: none;
}
.fade {
	text-decoration: none;
}
.container {
	width: 1054px;
}
.container02 {
	max-width: 1700px;
}
.fade:hover {
	text-decoration: none;
}
@media only screen and (max-width: 800px) {
body {
	min-width: 0px;
}
body {
	min-width: 0px;
}
.container, .container02 {
	width: 100%;
}
}
/************************************ header_01　左ロゴ・下メニュー*/
.header_01 {
	position: fixed;
	width: 100%;
	background: #fff;
	z-index: 9999;
}
.header_01.top {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: none;
}
.header_logo {
	width:300px;
	padding-top: 12px;
	padding-left: 40px;
	padding-bottom: 11px;
}
.header_contact {
	position: absolute;
	top: 0;
	right: 0;
	background-color:#06c755;
	z-index: 99;
}
.header_contact ul {
	display:flex;
}
.header_contact ul li {
}
.header_contact ul li:first-child {
	padding: 0;
}
@media only screen and (max-width: 800px) {
.header_01 {
	position: static;
}
.header_01.top {
	z-index: 99;
	position: static;
}
.header_logo {
	padding-top: 8px !important;
	padding-left: 10px;
	padding-bottom: 0;
}
.header_01 .header_logo {
	margin-bottom: 10px;
}
.header_01 .header_logo img {
	height: 50px;
}
.header_logo {
	padding-top: 20px;
}
.header_contact {
	text-align: center;
}
.header_contact li {
	display: block;
	margin-left: 0;
	vertical-align: top;
}
.header_contact dt {
	margin-bottom: 5px;
}
}
/*グローバルメニュー*/
.gNavi {
	position: relative;
	z-index: 999;
	text-align:center;
}
.gNavi > ul > li {
	display: inline-block;
	margin: 0 75px 0 0;
	text-align: center;
}
.gNavi > ul > li:last-child {
	margin: 0;
}
.gNavi > ul > li > a {
	display: block;
	text-decoration: none;
	padding: 30px 0 20px;
	border-bottom: #FFF 4px solid;
}
.gNavi > ul > li > a:hover {
	border-bottom: #ea6d8d 4px solid;
}
.gNavi > ul > li > a > span {
	font-size: 10px !important;
	color: #ea6d8d !important;
}
/* ドロップダウンメニュー */
.gNavi .dd {
	position: relative;
	z-index: 999999;
}
.gNavi .dd ul {
	width: 100%;
	position: absolute;
	display: none;
	background-color: #549f11;
}
.gNavi .dd:nth-child(4) ul {
	width: 100%;
	left: 0;
	text-align: left;
}
.gNavi .dd ul li {
	font-size: 14px;
}
.gNavi .dd ul li a {
	text-decoration: none;
	color: #fff;
	display: block;
	padding: 10px 20px 10px 40px;
}
.gNavi .dd ul li a:hover {
	color: #fff;
}
@media only screen and (max-width: 800px) {
/* ハンバーガーメニュー */
  .humberger {
	background: #ea6d8d;
	cursor: pointer;
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	z-index: 10000;
}
.humberger span {
	background: #fff;
	position: absolute;
	left: 50%;
	width: 25px;
	height: 2px;
	transform: translateX(-50%);
	transition: 0.4s;
}
.humberger span:nth-of-type(1) {
	top: 15px;
}
.humberger span:nth-of-type(2) {
	top: 50%;
	transform: translate(-50%, -50%);
}
.humberger span:nth-of-type(3) {
	bottom: 15px;
}
.is-open .humberger span:nth-of-type(1) {
	transform: translate(-50%, 9px) rotate(-45deg);
}
.is-open .humberger span:nth-of-type(2) {
	opacity: 0;
}
.is-open .humberger span:nth-of-type(3) {
	transform: translate(-50%, -9px) rotate(45deg);
}
.overlay {
	background: transparent;
	position: fixed;
	pointer-events: none;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 10;
	transition: 0.2s;
}
.is-open .overlay {
	background: rgba(0, 0, 0, 0.7);
	pointer-events: auto;
}
/* ナビ本体 */
  .sp-navi {
	-webkit-text-size-adjust: 100%;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
}
.sp-navi.is-open .sp-navi-inner {
	transform: translate3d(0, 0, 0);
}
.sp-navi .sp-navi-inner {
	background: #FFF;
	position: fixed;
	top: 0;
	right: 0;
	overflow: scroll;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 50px 0;
	height: 100%;
	width: 100%;
	transition: .5s;
	transform: translate3d(100%, 0, 0);
	z-index: 10;
}
.sp-navi .sp-navi-inner .navi-main {
	margin: 0 0 30px;
}
.sp-navi .sp-navi-inner .navi-main > li {
	border-bottom: 1px solid #ddd;
	position: relative;
}
.sp-navi .sp-navi-inner .navi-main img {
	margin-bottom: 5px;
	margin-right: 10px;
}
.sp-navi .sp-navi-inner .navi-main > li:before {
	background: #ea6d8d;
	content: "";
	height: 3px;
	width: 8px;
	position: absolute;
	left: 10px;
	top: 23px;
}
.sp-navi .sp-navi-inner .navi-main > li:first-child {
	border-top: 1px solid #ddd;
}
.sp-navi .sp-navi-inner .navi-main > li > a {
	display: block;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 2.5px;
	padding: 15px 10px 15px 30px;
	overflow: hidden;
	line-height: 1.3em;
	text-decoration: none;
	color: #333;
}
.sp-navi .sp-navi-inner .navi-main > li > ul > li {
	border-top: 1px dashed #ddd;
	width: 100%;
}
.sp-navi .sp-navi-inner .navi-main > li > ul > li > a {
	display: block;
	font-size: 14px;
	line-height: 1.3em;
	padding: 10px 10px 10px 50px;
	position: relative;
	text-decoration: none;
	color: #333;
}
.sp-navi .sp-navi-inner .navi-main > li > ul > li > a:before {
	background: #f5b4b9;
	content: "";
	height: 1px;
	width: 10px;
	position: absolute;
	left: 26px;
	top: 19px;
}
.sp-navi .sp-navi-inner .navi-other {
	padding: 0 15px;
}
.sp-navi-inner .navi-main img {
	padding-left: 9px;
}
}
/* メインスライド */
@keyframes zoomUp {
 0% {
 transform: scale(1);
}
 100% {
 transform: scale(1.15);
}
}
.swiper-slide-active .swiper-img, .swiper-slide-duplicate-active .swiper-img, .swiper-slide-prev .swiper-img {
/*	animation: zoomUp 12s linear 0s normal both;*/
	animation: zoomUp 12s linear 0s;
}
.swiper-slide img {
	height: auto;
	width: 100%;
}
.swiper-cp {
	position:absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size:32px;
	font-weight:bold;
	text-align:center;
	background-color: rgba(255,255,255,0.5);
	padding: 20px;
	line-height: 1.4em;
	border-radius:7px;
	z-index:1;
}
.swiper-cp span {
	font-size:20px;
	display:block;
}
/************************************ コンテンツ*/
.contents {
	float: left;
	width: 730px;
}
.course {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 2%;
	padding: 0;
}
.course li {
	list-style: none;
	background-color: #fff;
	text-align: center;
	border-radius: 5px;
	padding:10px;
	margin-right: 2%;
	margin-bottom: 2%;
	box-shadow: 0 0px 2px #ccc;
	width: 23%;
	color: #222;
}
.course li:nth-of-type(4n) {
	margin-right: 0;
}
.f_banner {
	display:flex;
	flex-wrap: wrap;
}
.f_banner li {
	cursor: pointer;
	overflow: hidden;
	position: relative;
	width: 25%;
}
.f_banner li img {
	height: auto;
	transition: transform .6s ease; /* ゆっくり変化させる */
}
.f_banner li:hover img {
	transform: scale(1.1); /* 拡大 */
}
.f_banner li p {
	align-items: center; /* テキストの中央揃え */
	bottom: 0;
	color: #fff; /* テキストの色 */
	display: flex; /* テキストの中央揃え */
	justify-content: center; /* テキストの中央揃え */
	text-align:center;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 0;
	width: 80%; /* テキストを横幅いっぱいにならないようにする */
	font-size:20px;
	font-weight:bold;
	text-shadow: 0px 0px 1vw #000;
	line-height:1.4em;
	z-index: 2;
}
/* マスク */
.f_banner li::before {
	background: rgba(0, 0, 0, .5); /* マスクの色(黒の50%) */
	bottom: 0;
	content: '';
	height: auto;
	left: 0;
	opacity: 0; /* 最初は透明（非表示） */
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity .6s ease; /* ゆっくりopacityのみへ変化させる */
	width: 100%;
	z-index: 1;
}
.f_banner li:hover::before {
	opacity: 1;
}
 @media only screen and (max-width: 800px) {
.contents {
	float: none;
	width: auto;
}
.swiper-cp {
	width:90%;
	font-size:20px;
}
.swiper-cp span {
	font-size:14px;
}
.course li {
	padding:10px;
	margin-right: 0;
	margin-bottom: 4%;
	width: 100%;
}
.f_banner li {
	width: 100%;
}
}
/************************************ タイトル*/
.heading {
	padding-top: 30px;
	margin-top: -30px;
}
.pagettl {
	font-family: "FP-ヒラギノUD角ゴ StdN W5", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 40px;
	line-height: 1.1;
	text-align: left;
	background: url("/theme/uploads/sub_title_bk.png") no-repeat center center;
	padding: 120px 0px;
	color: #FFF;
}
.heading_img {
	text-align: center;
	margin-bottom: 40px;
	font-size: 34px;
	line-height: 1.4;
	width: 100%;
}
h3 {
	position: relative;
 padding: .4rem;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 50px;
}
h3:before {
	position: absolute;
	bottom: -10px;
	left: calc(50% - 30px);
	width: 60px;
	height: 5px;
	content: '';
	border-radius: 3px;
	background: #ea6d8d;
}
h4 {
	padding: 0.5em;
	background: #f2f2f2;
	border-left: solid 5px #ea6d8d;
	margin-bottom:30px;
}
h5 {
	background: linear-gradient(transparent 50%, #FFEB3B 50%) repeat scroll 0% 0% transparent;
	display:inline-block;
	font-weight:bold;
	margin-bottom:20px;
}
.heading_btmline, .postdata h4 {
	font-size: 20px;
	line-height: 1.6;
	color: #fff;
	margin-bottom: 25px;
	background: #f5b4b9;
	padding: 5px 20px;
}
.heading_leftcircle, .postdata h5 {
	font-size: 18px;
	line-height: 1.4;
	margin-bottom: 25px;
	border-bottom: #c8ae8b dotted 1px;
	padding-bottom: 10px;
}
.undertop {
	padding-top: 100px;
}
@media only screen and (max-width: 800px) {
.pagettl {
	font-size: 24px;
	padding: 40px 0px;
}
.heading_img {
	text-align: center;
	margin-bottom: 20px;
	font-size: 23px;
}
.heading_btmline, .postdata h4 {
	font-size: 20px;
	margin-bottom: 20px;
}
.heading_leftcircle, .postdata h5 {
	font-size: 18px;
	margin-bottom: 10px;
}
.undertop {
	padding-top: 0;
}
}
/************************************ サイドバー*/
.rNavi {
	float: right;
	width: 256px;
}
.side_sec01 {
	padding: 20px 20px 15px 20px;
}
.side_sec01 li {
	background: url("images/ico_check.png") no-repeat left 0.5em;
	padding-left: 15px;
	margin-bottom: 5px;
}
.side_sec01 li a {
	color: #331401;
	text-decoration: none;
}
.side_sec01 li a:hover {
	text-decoration: underline;
}
.side_sec02 {
	padding: 10px 20px;
	border-top: #ffbb17 solid 3px;
	border-right: #bebdbd solid 1px;
	border-bottom: #bebdbd solid 1px;
	border-left: #bebdbd solid 1px;
}
.side_sec02 dt, .side_sec02 dd {
	display: inline-block;
	vertical-align: top;
}
.side_sec02 dt {
	width: 5em;
	padding: 4px;
	margin-right: 1em;
}
.side_sec03 .side_ttl {
	background: #532a18;
	padding: 15px
}
.side_sec03 .side_list {
	padding: 0 10px;
}
.side_sec03 .side_list li {
	border-bottom: dotted 1px #ddd;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
@media only screen and (max-width: 800px) {
.rNavi {
	float: none;
	width: auto;
	max-width: 256px;
	margin: auto;
}
}
/************************************ フッター */
/************************************ footer_01 */
.footer_01 .inbox03 {
	padding: 20px 20px 30px 20px;
}
.footer_01 .ilb.bnr li:first-child {
	width: 247px;
}
.footer_nav li {
	display: inline-block;
}
.footer_nav li:after {
	content: " | ";
	color: #FFF;
	margin: 0 5px;
}
.footer_nav li:last-Child:after {
	content: " ";
	color: #FFF;
}
.footer_nav li a {
	text-decoration: none;
	color: #fff;
}
.footer_nav li a:hover {
	text-decoration: underline;
}
.pagetop_btn {
	position: fixed;
	right: 20px;
	bottom: 20px;
	display: none;
	z-index: 999;
	margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
	.footer_01 {
		padding-bottom:100px;
	}
	.footer_01 .ilb.bnr li:first-child {
	width: 100%;
	margin-bottom: 20px;
}
}
/************************************テーブル (01_04 追加)*/
.table-bordered {
	border-collapse: collapse;
	width: 100%;
	background: #fff;
}
.table-bordered th, .table-bordered td {
	border-bottom: #c8ae8b dotted 1px;
	padding: 10px 0;
	vertical-align: top;
}
.table-bordered th {
	width: 20%;
	text-align: left;
	border-bottom: #c8ae8b dotted 1px;
}
.table-bordered.th30 th {
	width: 30%;
}
.table-bordered.th40 th {
	width: 40%;
}
@media only screen and (max-width: 800px) {
.table-bordered tr {
	border-bottom: #c8ae8b dotted 1px;
}
}
/************************************テーブルレスポンシブ仕様 (01_04 追加)*/
@media only screen and (max-width: 800px) {
.sp-listlayout {
	border: none !important;
}
.sp-listlayout tr {
	display: block;
}
.sp-listlayout th {
	border: none !important;
	display: list-item;
	list-style: none;
	width: 100% !important;
}
.sp-listlayout td {
	border: none !important;
	display: list-item;
	list-style: none;
	width: 100% !important;
}
.sp-listlayout {
	table-layout: fixed;
}
.sp-listlayout * {
	word-wrap: break-word;
}
}
/************************************アーカイブ関連*************************************/
/************************************詳細はこちらボタン(01_04 追加)*/
/* more-btn */
.more-btn a {
	font-size: 18px;
	line-height: 1.2;
	color: #FFF;
	padding: 15px 80px 15px 80px;
	text-decoration: none;
	display: inline-block;
	background-color: #ea6d8d;
	transition: .5s ease;
	position: relative;
	text-align: center;
}
.more-btn a:after {
	content: url("images/shared/ico_arrow.png");
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.more-btn.mini {
	text-align: left;
}
.more-btn.mini a {
	width: 100%;
	background-color: #FFF;
	border: 2px solid #f5b4b9;
	color: #6f4912;
}
.more-btn.mini a:after {
	content: url("images/shared/ico_arrow_b.png");
	position: absolute;
	left: 20px;
	top: 45%;
	transform: translateY(-50%);
}
.more-btn a:hover {
	opacity: 0.7;
}
@media only screen and (max-width: 800px) {
.more-btn a {
	padding: 15px 40px;
}
.more-btn.mini a {
	width: 100%;
	font-size: 13px;
}
.more-btn.tel-btn a {
	width: 205px;
	padding: 15px 35px;
}
}
/*WP用 投稿表示*/
.topics_sec article ul {
	padding-left: 1.5em;
}
.topics_sec article ul li {
	list-style: outside disc;
}
.topics_sec article p {
	margin-bottom: 15px;
}
.topics_sec article p:last-Child {
	margin-bottom: 0px;
}
ol {
	padding-left: 2em;
}
ol li {
	list-style: outside decimal;
}
/* PAGER */
.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}
.bx-wrapper .bx-pager .bx-pager-item, .bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
 *zoom: 1;
 *display: inline;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	background: #666;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #000;
}
@media only screen and (max-width: 800px) {
.slide_wrap .text_box {
	transform: translateY(0);
	top: 40%;
}
.slide_wrap .text_box img {
	width: 90%;
}
.slidePics .bx_pager ul li {
	width: 24%;
}
}
/************************************フォーム (01_04 追加)*/
/************************************フォーム (01_04 追加)*/
.mw_wp_form {
	font-size: 13px;
	margin: 0 0 20px;/**
  * ボタン
  *//**
  * その項目のエラーのwrapper
  *//**
  * 必須マーク
  *//**
  * 各項目のwrapper
  *//**
  * 注釈
  */
}
.mw_wp_form dl {
	border-top: #dddddd solid 1px;
	border-left: #dddddd solid 1px;
	border-right: #dddddd solid 1px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	zoom: 1;
}
.mw_wp_form .formend/*管理画面内でフォームの最後のdlに class="formend" を記入*/ {
	border-bottom: #dddddd solid 1px !important;
}
.mw_wp_form dl dt, .mw_wp_form dl dd {
	margin: 0;
	padding: 20px 0 15px 10px;
}
.mw_wp_form dl dt {
	float: left;
	font-weight: bold;
	padding-right: 20px;
	width: 25%;
	position: relative;
}
.mw_wp_form dl dt .mwform-require {
	position: absolute;
	top: 20px;
	right: 20px;
}
.mw_wp_form dl dd {
	overflow: hidden;
	zoom: 1;
	border-left: #dddddd solid 1px;
}
.mw_wp_form dl dd input, .mw_wp_form dl dd textarea, .mw_wp_form dl dd select {
	border: #cccccc solid 1px;
	border-radius: 3px;
	margin: 0;
	max-width: 88%;
	padding: 9px 12px;
	vertical-align: middle;
}
.mw_wp_form dl dd textarea {
	width: 90%;
}
.mw_wp_form dl dd label {
	margin: 0 10px 0 2px;
}
.mw_wp_form dl dd label input[type="checkbox"], .mw_wp_form dl dd label input[type="radio"] {
	margin: 0 5px 0 0;
}
.mw_wp_form p.mwform-btn {
	margin-top: 10px;
	text-align: center;
}
.mw_wp_form p.mwform-btn input {
	background-color: #f5f5f5;
	border: #dddddd solid 1px;
	border-radius: 3px;
	color: #000;
	cursor: pointer;
	font-weight: normal;
	padding: 10px 20px;
}
.mw_wp_form p.mwform-btn input:active, .mw_wp_form p.mwform-btn input:hover {
	background-color: #eee;
}
.mw_wp_form .mwform-errors {
	margin: 5px 0 0;
	overflow: hidden;
	zoom: 1;/**
  * エラーメッセージ
  */
}
.mw_wp_form .mwform-errors .mwform-error {
	float: left;
	margin: 0 10px 0 0;
}
.mw_wp_form .mwform-errors .mwform-error span {
	background-color: #F7CCE6;
	border: #ee4d89 solid 1px;
	border-radius: 3px;
	color: #EE4D89;
	display: inline-block;
	font-size: 85%;
	padding: 3px 6px 2px;
}
.mw_wp_form .mwform-require {
	color: #fff;
	background-color: #ff0000;
	font-size: 85%;
	padding: 1px 5px;
}
.mw_wp_form .mwform-field {
	margin: 0 0 5px;
}
.mw_wp_form .mwform-note {
	font-size: 85%;
}
.mw_wp_form .mwform-w30 input {
	width: 37%;
}
.mwform-checkbox-field {
	display: inline-block!important;
	margin-left: 0!important;
	word-break: keep-all !important;
}
.wpcf7-textarea {width: 100%;font-family:"FP-ヒラギノUD角ゴ StdN W5", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; font-size: 15px; padding: 8px;}
@media screen and (max-width: 480px) {
.mw_wp_form dl dt {
	float: none;
	width: auto;
	padding-bottom: 10px;
}
.mw_wp_form dl dd {
	padding-top: 0;
	border-left: none;
}
.mw_wp_form .mwform-w30 input {
	width: 25%;
}
}
/************************************ ORIGINAL ***********/
/* コンタクト注意文 */
.contact_mobile li {
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
	padding-left: 20px;
	background-repeat: no-repeat;
	background-position: left 40%;
}
.contact_mobile .docomo {
	background-image: url(images/icon01.png);
}
.contact_mobile .softbank {
	background-image: url(images/icon02.png);
}
.contact_mobile .au {
	background-image: url(images/icon03.png);
}
.contact_mobile .ymobile {
	background-image: url(images/icon04.png);
}
.rob.mg10 {
	margin: 0px -10px;
}
.rob.mg10 .coll-1, .rob.mg10 .coll-2, .rob.mg10 .coll-3, .rob.mg10 .coll-4, .rob.mg10 .coll-5, .rob.mg10 .coll-6, .rob.mg10 .coll-7, .rob.mg10 .coll-8, .rob.mg10 .coll-9, .rob.mg10 .coll-10, .rob.mg10 .coll-11, .rob.mg10 .coll-12 {
	padding: 0px 10px;
}
.iframe_wrap {
	position: relative;
	width: 100%;
	padding-top: 56%;/* 高さ÷幅 */
}
.iframe_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
/***********トップページアコーディオン***********/
.accordion {
	width: 100%;
}
.accordion {
	border-top: 1px dotted #ddd;
}
.accordion:last-of-type {
	border-bottom: 1px dotted #ddd;
	margin-bottom: 40px;
}
.accordion th {
	width: 20px;
}
.accordion td {
	padding-left: 20px;
	vertical-align: middle;
}
.accordion dt {
	cursor: pointer;
	background-image: url(images/plus.png);
	background-repeat: no-repeat;
	background-position: right 20px center;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-right: 60px;
}
.accordion dd {
	display: none;
	line-height: 1.8em;
	color: #666666;
	padding-top: 10px;
	padding-bottom: 10px;
}
.accordion dd td p {
	padding-right: 60px;
}
.accordion dt.active {
	background-image: url(images/minus.png);
}
.accordion dt.over {
}
@media only screen and (max-width: 800px) {
.accordion dt {
	padding-right: 50px;
}
}
.category-list-area {
	background: #F0F0F0;
	border-radius: 3px;
	padding: 25px;
	margin: 0 0 40px;
}
.category-list-area > select {
	outline: none;
	text-indent: 0.01px;
	text-overflow: '';
	background: #fff;
	border-radius: 3px;
	vertical-align: middle;
	height: 40px;
	padding: 8px 12px;
	border: 1px solid #ddd;
	color: #828c9a;
	width: 100%;
}
.top_art00 {
	position: absolute;
	width: 350px;
	padding: 30px 20px 30px 20px;
	bottom: 30px;
	right: 20px;
}
.top_art01 {
	background: url("/theme/uploads/art01-scaled.jpg") no-repeat center center;
	background-size:cover;
}
.top_art03 {
	background: url("/theme/uploads/top_art03_bg.jpg") no-repeat center center;
}
.inbox01 li article {
	padding: 50px 15px;
	background-size: cover;
}
.inbox01 li:nth-child(1) article {
	background: url("/theme/uploads/top_art01_bg02.jpg") no-repeat;
	background-size: cover;
}
.inbox01 li:nth-child(2) article {
	background: url("images/top_art01_bg02.png") no-repeat;
	background-size: cover;
}
.inbox01 li:nth-child(3) article {
	background: url("images/top_art01_bg03.png") no-repeat;
	background-size: cover;
}
.inbox01 li:nth-child(4) article {
	background: url("images/top_art01_bg04.png") no-repeat;
	background-size: cover;
}
.tab {
	text-align: right;
}
.tab li {
	text-align: center;
	color: #c8ae8b;
	font-size: 15px;
	display: inline-block;
	margin: 0 10px -1px 0;
	padding: 5px 0;
	width: 120px;
	cursor: pointer;
	list-style: none;
	background: #f2eee9;
}
.tab li.active {
	color: #fff;
	background: #c8ae8b;
	cursor: auto;
	position: relative;
}
.tab li.active::before {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 50%;
	transform: translateX(-50%);
	bottom: -15px;
	border-top: 15px solid #c8ae8b;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
.area > ul {
	display: none;
}
.area > ul.show {
	display: block;
}
.area .inbox02 {
	border-top: #c8ae8b dotted 1px;
	padding: 20px 0;
}
.area .inbox02 li {
	display: inline-block;
}
.area .inbox02 li:first-child {
	width: 90px;
}
.area .inbox02 li:nth-child(2) {
	width: calc(100% - 100px);
}
.inbox04 {
	display: inline-block;
	padding: 20px 80px;
}
/*category_box*/
.category-navi {
	padding: 20px;
	background: #f9f7ee;
}
.category-navi select {
	width: 100%;
	font-weight: 500;
	border: solid 1px #ddd;
	border-radius: 3px;
	padding: 7px 10px;
	font-size: 16px;
	background-color: #fff;
}
.leaf_box li {
	background: url("images/icoex.png") no-repeat left 0.5em;
	padding-left: 40px;
	padding-bottom: 20px;
	padding-top: 4px;
}
.plus {
	position: absolute;
	top: 70px;
	left: 365px;
}
.faq_sec {
}
.faq_sec dl {
	display: table;
	width: 100%;
}
.faq_sec dt, .faq_sec dd {
	display: table-cell;
	vertical-align: top;
}
.faq_sec dt {
	width: 50px;
}
.faq_sec dd.fo18 {
	padding-top: 8px
}
.underbox {
	background: url("images/under/page01_bg.png") no-repeat center 180px;
}
.arr i {
	position: absolute;
	z-index: 99;
	right: -10px;
	top: 50%;
	transform: translateY(-50%);
}
.proftop {
	padding-top: 60px;
}
@media only screen and (max-width: 800px) {
.tab {
	text-align: center;
}
.tab li {
	width: 100%;
}
.tab li.active::before {
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	border-top: 0 solid #c8ae8b;
	border-right: 0 solid transparent;
	border-left: 0 solid transparent;
}
.top_art06 ul {
	display: block;
}
.top_art06 li {
	display: block;
	text-align: left;
	margin-bottom: 10px;
}
.top_art06 li:nth-child(1) {
	padding-top: 5px;
	text-align: left;
	border-right: none;
}
.top_art06 li:nth-child(2) {
	width: auto;
	text-align: left;
	padding-left: 0;
}
.top_art06 li:nth-child(3) {
	width: auto;
	text-align: left;
}
.top_art06 li:nth-child(4) {
	width: auto;
	text-align: center;
}
.top_art06 li:nth-child(5) {
	padding-left: 0;
}
.inbox04 {
	display: inline-block;
	padding: 20px 20px;
}
}
.copyright {
	font-family: Verdana, "Droid Sans";
}
.cat ul {
	padding-left: 0 !important;
}
.cat li {
	display: inline-block;
	list-style: none!important;
	background: #c8ae8b;
	color: #fff;
	padding: 5px 20px;
	margin: 0 5px 10px;
	border-radius: 10px;
}
.page-link {
	padding-top: 100px;
	margin-top: -100px;
}
.voice-cat {
	text-align: center;
	padding-bottom: 20px;
	margin-bottom: 30px;
	font-size: 34px;
	line-height: 1.4;
	width: 100%;
	position: relative;
}
.voice-cat::before {
	content: "";
	width: 80px;
	height: 5px;
	background: #c8ae8b;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
@media only screen and (max-width: 800px) {
.page-link {
	padding-top: 0;
	margin-top: 0;
}
.voice-cat {
	font-size: 25px;
	padding-bottom: 10px;
}
.voice-cat::before {
	width: 60px;
	height: 4px;
}
}
/************************************ 固定ページ*/
.post {
	border-top:1px solid #c8ae8b;
	padding:50px 0;
}
.faq_box dt {
	padding: 10px 10px 10px 35px;
	border-radius: 5px;
	background: #ea6d8d;
	color:#fff;
	text-indent: -25px;
}
.faq_box dt:before {
	content: "Q.";
	font-weight: bold;
	margin-right: 7px;
}
.faq_box dd {
	margin: 20px 10px 40px 35px;
	text-indent: -25px;
}
.faq_box dd:before {
	content: "A.";
	color: #ea6d8d;
	font-weight: bold;
	margin-right: 7px;
}
.instructor_box {
	overflow:hidden;
	border-bottom:1px solid #c8ae8b;
	padding-bottom:40px;
	margin-bottom:40px;
}
.instructor_ph {
	float:left;
	width:20%;
}
.instructor_txt {
	float:right;
	width:75%;
}
.instructor_txt .name {
	font-size:24px;
	font-weight:bold;
	border-bottom:1px dotted #c8ae8b;
	padding-bottom:20px;
	margin-bottom:20px;
}
.training_lead {
	overflow:hidden;
	margin:50px 0;
}
.training_lead_ph {
	float:right;
	width:30%;
}
.training_lead_txt {
	float:left;
	width:65%;
}
.location {
	overflow:hidden;
	border-bottom:1px solid #c8ae8b;
	padding-bottom:40px;
	margin-bottom:40px;
}
.location_ph {
	float:left;
	width:30%;
}
.location_txt {
	float:right;
	width:65%;
}
.senior_ph {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.senior_ph li {
	width:50%;
}
.lesson_box {
	overflow:hidden;
	border-bottom:1px solid #c8ae8b;
	padding-bottom:40px;
	margin-bottom:40px;
}
.lesson_box_ph {
	float:left;
	width:30%;
}
.lesson_box_txt {
	float:right;
	width:65%;
}
.lesson_box_txt dl dt {
	font-size:21px;
	font-weight:bold;
	color:#ea6d8d;
}
.voice_box {
	overflow:hidden;
	background-color: #fff;
	border-radius: 5px;
	padding:20px;
	margin-bottom:40px;
	box-shadow: 0 0px 2px #ccc;
}
.voice_ph {
	float:left;
	width:20%;
}
.voice_txt {
	float:right;
	width:75%;
}
.voice_txt dl dt {
	color:#ea6d8d;
	font-weight:bold;
}
.voice_txt dl dd {
	overflow:hidden;
	border-bottom:1px dotted #c8ae8b;
	padding-bottom:20px;
	margin-bottom:20px;
}
.member_box {
	overflow:hidden;
	border-bottom:1px dotted #c8ae8b;
	padding-bottom:20px;
	margin-bottom:20px;
}
.member_box p {
	margin-bottom:20px;
}
.post p.time, .member_box p.time {
	color:#ea6d8d;
	text-align:right;
}
.comment {
	position: relative;
	margin: 2em 0;
	padding: 1.5em 2em;
	border: solid 3px #ea6d8d;
	border-radius: 8px;
}
.comment .box-title {
	position: absolute;
	display: inline-block;
	top: -13px;
	left: 20px;
	padding: 0 9px;
	line-height: 1;
	font-size: 19px;
	background: #FFF;
	color: #ea6d8d;
	font-weight: bold;
}
.comment p {
	margin: 0;
	padding: 0;
}
.info_title {
	font-size:28px;
	font-weight:bold;
	padding: 0.5em;
	color: #ea6d8d;
	background: #f4f4f4;
	border-bottom: solid 3px #ea6d8d;
}
.post p {
	margin-bottom:20px;
}
@media only screen and (max-width: 800px) {
.instructor_ph {
	float:none;
	width:100%;
}
.instructor_txt {
	float:none;
	width:100%;
}
.training_lead_ph {
	float:none;
	width:100%;
}
.training_lead_txt {
	float:none;
	width:100%;
}
.location_ph {
	float:none;
	width:100%;
}
.location_txt {
	float:none;
	width:100%;
}
.lesson_box_ph {
	float:none;
	width:100%;
}
.lesson_box_txt {
	float:none;
	width:100%;
}
.voice_ph {
	float:none;
	width:100%;
}
.voice_txt {
	float:none;
	width:100%;
}
}
/*お知らせ一覧*/
.info_list {
	overflow:hidden;
	margin-bottom:50px;
}
.info_list li {
	border-bottom:1px dotted #ccc;
	padding-bottom:20px;
	margin-bottom:20px;
	text-align:left;
	font-size:18px;
	font-weight:bold;
}
.info_list li dl dt {
	width:20%;
	float:left;
	min-width: 180px;
}
@media only screen and (max-width: 500px) {
	.info_list li dl dt {width: 100%;}
}
.info_list li dl dd a {
	color:#444;
	text-decoration:none;
}
.info_list li dl dd a:hover {
	color:#ea6d8d;
}
/*ページャー*/
.pagination {
	margin:40px 0 0;
}
.nav-links {
	display:flex;
}
.pagination .page-numbers {
	display:inline-block;
	margin-right:20px;
	padding:20px 25px;
	color:#333;
	border-radius:3px;
	box-shadow:0 3px 3px #999;
	background:#fff;
}
.pagination .current {
	padding:20px 25px;
	background:#ea6d8d;
	color:#fff;
}
.pagination .prev, .pagination .next {
	background:transparent;
	box-shadow:none;
	color:#ea6d8d;
}
.pagination .dots {
	background:transparent;
	box-shadow:none;
}

/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:500px) {
.inquiry th, .inquiry td {
	display:block!important;
	width:100%!important;
	border-top:none!important;
	-webkit-box-sizing:border-box!important;
	-moz-box-sizing:border-box!important;
	box-sizing:border-box!important;
}
.inquiry tr:first-child th {
	border-top:1px solid #d7d7d7!important;
}
/* 必須・任意のサイズ調整 */	
.inquiry .haveto, .inquiry .any {
	font-size:10px;
}
	form input[type=text],form input[type=tel],form input[type=email],textarea {width: 100%;}
}
form input {
	vertical-align:baseline;
	padding: 10px;
	font-size: 16px;
}
.inquiry {
	width:100%;
}

/*見出し欄*/
.inquiry th {
	text-align:left;
	font-size:16px;
	color:#444;
	padding-right:5px;
	width:32%;
	padding:20px 20px 0;
	background:#f7f7f7;
	border:solid 1px #d7d7d7;
	vertical-align:middle;
}
/*通常欄*/
.inquiry td {
	font-size:16px;
	border:solid 1px #d7d7d7;
	padding:20px 20px 0;
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr, .entry-content table {
	border:solid 1px #d7d7d7;
}
/*必須の調整*/
.haveto {
	font-size:12px;
	padding:5px;
	background:#ff9393;
	color:#fff;
	border-radius:2px;
	margin-right:5px;
	position:relative;
	bottom:1px;
}
/*任意の調整*/
.any {
	font-size:12px;
	padding:5px;
	background:#93c9ff;
	color:#fff;
	border-radius:2px;
	margin-right:5px;
	position:relative;
	bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item {
	display:block;
}
/*送信ボタンのデザイン変更*/
#formbtn {
	display: block;
	padding:1em 0;
	margin-top:30px;
	width:100%;
	background:#ffaa56;
	color:#fff;
	font-size:18px;
	font-weight:bold;
	border-radius:2px;
	border: none;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover {
	background:#fff;
	color:#ffaa56;
}
.contact_btn {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 0 40px;
	padding: 0;
}
.contact_btn li {
	width:48%;
	margin-right:4%;
}
.contact_btn li:last-child {
	margin-right:0px;
}
.wsp-pages-title,
.wsp-posts-title {
	background-color:#ea6d8d;
	padding:20px;
	margin-bottom:20px;
	color:#fff;
}
.wsp-pages-list {
	margin-bottom:20px;
}
.box_borderL {
	margin-bottom:30px;
}

#fixed_contact {
	position:fixed;
	bottom:0;
	width:100%;
	margin:0 auto;
	text-align:center;
	padding:10px;
	background:rgba(248,246,243,0.9);
	display:none;
}
#fixed_contact ul {
	overflow: hidden;
	padding: 0;
	margin: 0;
	text-align: center;
}
#fixed_contact ul li {
	list-style: none;
	margin: 0;
	display: inline-block;
}
#fixed_contact ul li img { height:53px;}
@media(max-width:500px) {
#fixed_contact {
	display: block;
}
}

.grecaptcha-badge {display:none !important;}
