@import url(http://fonts.googleapis.com/css?family=Quicksand:400,700);

body {
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    color: #333;
}

.uk-container {
    box-sizing: border-box;
    max-width: 1100px;
    padding: 0px;
}

h1, h2, h3, h4, h5, h6 {
font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

/* font-color
 ========================================================================== */
.uk-link, a {
    color: #59aa18;
}

a:hover img {
    opacity: 0.8;
}

/* margin
 ========================================================================== */
 .mb5{
    margin-bottom: 5px;
}
.mb10{
    margin-bottom: 10px;
}
.mb20{
    margin-bottom: 20px;
}
.mb30{
    margin-bottom: 30px;
}
.mb40{
    margin-bottom: 40px;
}
.mb50{
    margin-bottom: 50px;
}

/* font-size
 ========================================================================== */
 .f80{
    font-size: 80%;
}
 .f90{
    font-size: 90%;
}
 .f120{
    font-size: 120%;
} 
.f150{
    font-size: 150%;
}
.f180{
    font-size: 180%;
}
 /* --------- スマホ共通 --------- */
@media (max-width: 479px) {
.uk-grid {
    margin-left: 0px; 
}
.uk-grid>* {
    padding: 0 5px;
}
.uk-panel-space {
    padding: 20px;
}

}
/* ヘッダー
 ========================================================================== */
header{
    height: 100%;
}

 /* --------- ヘッダー上部（右側） --------- */
header #hd-top{
    padding: 10px 5% 0;
}
header #hd-top .uk-float-right ul{
    margin: 0;
}
header #hd-top .uk-float-right ul li{
    display: inline-block;
    margin: 0 5px;
    vertical-align: middle;
}
header #hd-top ul li.hd-tel{
    font-size: 30px;
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    color: #59aa18;
    font-weight: bold;
}

 /* --------- ヘッダー上部（左側） --------- */
 header nav#hd_nav{

}
header nav#hd_nav a{
    color: #093983;
}
header nav#hd_nav ul {
    margin: 0;
    padding: 0;
    font-weight: bold;
}
header nav#hd_nav ul li:first-child {
    margin-left: 0;
    padding-left: 0;
    background: none;
}
header nav#hd_nav ul li{
    background: url(../../images/common/hd_nav_list.png) no-repeat center left;
    list-style: none;
    font-size: 12px;
    display: inline-block;
    overflow: hidden;
    margin-left: 9px;
    padding-left: 10px;
}

 /* --------- メインビジュアル --------- */
#mainvisual{
    position: relative;
    width: 100%;
    overflow: hidden;
}
.link_calbtn{
    position: absolute;
    right: 30px;
    top: 30px;
    z-index: 99;
}
@media (max-width: 767px) {
.link_calbtn{
       width: 100px;
    right: 10px;
    top: 10px;
}
}
header #consulbox{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 15%;
    margin: auto;
    width: 60%;
    z-index: 1;
}
.uk-dotnav>*>* {
    width: 10px;
    height: 10px;
}
.uk-dotnav-contrast>*>* {
    background: rgba(226,226,226,.9);
}
.uk-dotnav-contrast>.uk-active>* {
    background: rgba(23,95,208,.9);
}

@media (max-width: 479px) {
.uk-slideshow > li {
    height: 230px;
}
header #consulbox{
    width: 75%;
}
header #consulbox .uk-width-1-2 {
    padding: 0 5px; 
}
.uk-dotnav>*>* {
    width: 5px;
    height: 5px;
}
}

 /* --------- グローバルナビ --------- */
#gnav{
text-align:center;
}
.gnavspace{
    height: 1px;
}

[data-uk-sticky].uk-active .tm-navbar{
border-bottom: 1px solid #efefef;
}

/*
 * Navbar
 */

.tm-navbar {
    padding: 15px 0;
    border: none;
    background: #fff;
}
.uk-navbar-nav {
    margin: 10px 0 0 50px;

}


.tm-navbar .uk-navbar-content,
.tm-navbar .uk-navbar-brand,
.tm-navbar .uk-navbar-toggle {
    height: 50px;
    margin-top: 0;
    text-shadow: none;
}
.uk-offcanvas-bar {
background: #23ac38;
}
.uk-nav-offcanvas>.uk-open>a, html:not(.uk-touch) .uk-nav-offcanvas>li>a:focus, html:not(.uk-touch) .uk-nav-offcanvas>li>a:hover {
    background: #1a7f29;
}
.tm-navbar .uk-navbar-nav > li > a {
    margin: 0;
    padding: 0 10px;
    border: none;
    text-shadow: none;
    font-size: 15px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    line-height: 1.2!important;
    text-align: center;
}
.uk-nav-offcanvas>li>a {
    color: #fff;
    padding: 15px;
    border-top: 1px solid rgb(26, 136, 43);
    text-shadow: none;
    font-size: 110%;
}
.uk-nav-offcanvas {
    border-bottom: 1px solid rgb(26, 136, 43);
}
.uk-nav-offcanvas ul a {
    color: #fff;
    font-size: 120%;
    padding: 10px;
}
.tm-navbar .uk-navbar-nav > li > a span {
    font-size: 85%;
    font-weight: normal;
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.tm-navbar .uk-navbar-nav > li {
    margin-left: 20px; 
   background: url(../img/common/img_gnavi_li.png) no-repeat center right;
   padding-right: 30px;
}
.tm-navbar .uk-navbar-nav > li:last-child{
   background: none!important;
}

/* Hover */
.tm-navbar .uk-navbar-nav > li:hover > a,
.tm-navbar .uk-navbar-nav > li > a:focus,
.tm-navbar .uk-navbar-nav > li.uk-open > a {
    border: none;
    color: #666;
    box-shadow:none;
}

.uk-nav-navbar > li > a:focus, .uk-nav-navbar > li > a:hover {
    background: #dfb63b;
}
/* Active */
.tm-navbar .uk-navbar-nav > li.uk-active > a {
    color: #2690d2;
}

/* OnClick */
.tm-navbar .uk-navbar-nav > li > a:active { background-color: transparent; }

/*
 * Nav
 */

.tm-nav > li > a { color: #777; }

/* Hover */
.tm-nav > li > a:hover,
.tm-nav > li > a:focus,
.tm-nav > li.uk-active > a  {
    background: #F5F5F5;
    color: #444;
}

/* Sub-object: `nav-header` */
.tm-nav .uk-nav-header {
    color: #222;
    font-weight: normal;
}

/*
 * Nav
 */

.tm-subnav > li:nth-child(n+2) { margin-left: 20px; }

/*
 * Article
 */

.tm-article-subtitle {
    padding-left: 6px;
    border-left: 3px solid #1FA2D6;
    font-size: 16px;
    line-height: 16px;
}

/*
 * Showcase Overlay
 */

.tm-overlay-icon:empty:before {
    content: "\f064";
    width: 60px;
    height: 60px;
    margin-top: -30px;
    margin-left: -30px;
    font-size: 60px;
}

.uk-navbar-center {
    max-width: 70%;
}
.uk-navbar-brand{
    padding: 0 0 0 15px;
}

/* フッター
 ========================================================================== */
 footer {
    text-align: center;
        background: #f7f6f3;
}

 /* --------- 事務所紹介　事務所情報 --------- */
footer #about01{
    text-align: left;
}
footer #about01 a{
}
.ft-info{
padding: 0 5%;
box-sizing: border-box;
}
.ft-img{
width: 40%;
float: right;
margin: 20px 0px 20px 20px;
}
.ft-tel a{
color: #d85030!important;
}
.ft-tel strong{
font-size: 30px;
white-space: nowrap;
}
@media (max-width: 768px) {
footer #about01{
    text-align: center;
    margin: 30px 0;
}
.ft-info{
padding: 0 10px;
}
.ft-img{
width: 100%;
float: none;
margin: 20px 0px;
}

}

/* 2026年3月改修*/
footer #about01 .uk-grid.address{
	align-items: center;
}

 /* --------- googlemap --------- */
#map{
    width: 100%!important;
}
 /* --------- フッターナビ --------- */
footer nav#ft_nav a{
    color: #fff;
}
footer nav#ft_nav ul {
    margin: 0;
    padding: 15px 0 5px 0;
}
footer nav#ft_nav ul li:first-child {
    margin-left: 0;
    padding-left: 0;
    background: none;
}
footer nav#ft_nav ul li{
    background: url(../../images/common/ft_nav_list.png) no-repeat center left;
    list-style: none;
    font-size: 12px;
    display: inline-block;
    overflow: hidden;
    margin-left: 10px;
    padding-left: 10px;
}

 /* --------- copyright --------- */
footer #copyright{
    font-size: 80%;
    background: #065d13;
    width: 100%;
    padding: 10px 0;
    color: #fff;
}

/* ニュースとブログ
 ========================================================================== */
#newsArea{
    background: #fff;
    padding: 50px 5%;
}

#newsArea h2{
    line-height: 36px;
    font-size: 26px;
    margin-bottom: 30px;
    display: inline-block;
    font-family: "Sawarabi Mincho", serif;
    font-weight: normal;
}
@media (max-width: 479px) {
#newsArea h2,#blogArea h2{
    font-size: 20px;
}
}


#newsArea ul{
    list-style: none;
    padding:0;
}
#newsArea ul li{
    list-style: none;
    margin-bottom: 20px;
    padding: 10px;
    border-bottom: 1px solid #ccc;
}


#newsArea h2 span{
    font-size: 70%;
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    display: block;
}

#newsArea dl,#blogArea dl{
    margin: 30px 0;
}

#newsArea dl dt,#blogArea dl dt{
    width: 80px;
    margin-bottom: 5px;
    float: left;
    clear: both;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#newsArea dl dd,#blogArea dl dd{
    margin-left: 90px;
    margin-bottom: 5px;
}

/* スタジオイメージ
 ========================================================================== */
 
 .studioimg{
   background: url(../img/top/studioimg.jpg) no-repeat center bottom;
    background-size: cover;
    height: 400px;
    text-align: center;
}
.btn_studio{
   width: 90%;
}

.btn_studio img:hover{
background: rgba(255,255,255,.4)
}

/* レッスンについて
 ========================================================================== */
#lesson{
    background: #fff;
    padding: 50px 5%;
        line-height: 1.5;
}
#lesson h2{
    line-height: 36px;
    font-size: 26px;
    margin-bottom: 15px;
    display: inline-block;
    font-family: "Sawarabi Mincho", serif;
    font-weight: normal;
}
#lesson h2 span{
    font-size: 70%;
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    display: block;
}
#lessonimg{
    background: url(../img/top/img_lesson.jpg) no-repeat center;
    background-size: cover;
}
.btn_yellow{
    background: #fdd228;
    color: #fff;
    padding: 10px 30px;
    display: block;
    text-align: center;
    cursor: pointer;
    font-size: 18px;
}
.btn_yellow:hover{
    opacity: 0.7;
     color: #fff;
     text-decoration: none;
}
.btn_yellow:visited{
     color: #fff;
     text-decoration: none;
}

@media (max-width: 768px) {
#lessonimg{
    height: 350px;
}
}
/* いんすとらくたー
 ========================================================================== */
#instructorArea{
    text-align: center;
    background: #f2f8ed;
}
#instructorArea ul.uk-slider li a{
    display: block;
}
.uk-slidenav-contrast {
    color: rgba(255, 255, 255, 0.7);
}
.uk-slidenav-contrast:hover {
    color: rgba(255, 255, 255, 0.9);
}
li.uk-slide-after,li.uk-slide-before{
    background: #483e08;
}
li.uk-slide-after img,li.uk-slide-before img{
    opacity: 0.6;
}
@media (max-width: 768px) {

#support01 .uk-panel{
    margin-bottom: 50px;
    border-bottom: 1px dotted #288fd0;
    padding-bottom: 30px;
}
#support02 .uk-panel{
    margin-bottom: 50px;
    border-bottom: 1px dotted #59aa18;
    padding-bottom: 30px;
}
}

 /* h2見出し */
#instructorArea h2{
    margin: 40px 0;
    padding-bottom: 20px;
    font-size: 26px;
   font-family: "Sawarabi Mincho", serif;
    font-weight: normal;
}

#instructorArea h2 span{
    font-size: 70%;
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    display: block;
}


@media (max-width: 479px) {
#instructorArea　img{
   width: 80%;
}
}


 /* 画像オーバーレイ */
.uk-overlay-panel {
    padding: 50% 0 0 0;
    font-family: 'Satisfy', cursive;
    font-size: 20px;
}
/* googlemap
 ========================================================================== */
@media (max-width: 767px) {
.gmap iframe{
height: 300px;
}
}


/* 予約
 ========================================================================== */
.yoyaku {
        background: #23ac38;
color: #fff;
padding-top: 80px;
text-align:center;
}
.yoyaku .contents h3{
color: #fff!important;
text-align: center!important;
}
.yoyaku .yoyaku_ttl{
font-size: 150%;
font-weight: bold;
}

.yoyaku .yoyaku_btn,.yoyaku .yoyaku_btn_f{
background: #fff;
line-height: 30px;
padding: 3px 15px;
display: inline-block;
}
.yoyaku .yoyaku_btn:hover{
background: #fdd329;
}
@media (max-width: 479px) {
.yoyaku {
        padding: 0;
}
.yoyaku [class*=uk-width] {
    box-sizing: border-box;
    width: 80%;
    margin: 0 auto 30px auto;
    border-bottom: 1px solid #29963a;
    padding-bottom: 30px;
    line-height: 1.4;
}
.uk-accordion-title {
    margin: 0;
    padding: 10px 15px;
    background: #065d13;
    font-size: 20px;
    line-height: 24px;
    cursor: pointer;
    border: none;
    border-radius: 0;
    color: #fff;
   font-family: "Noto Sans Japanese";
   font-wieght: 100;
}

.yoyaku p{
font-size: 12px;
}
.yoyaku .yoyaku_ttl{
font-size: 16px;
font-weight: bold;
}

.yoyaku .yoyaku_btn{
background: #fff;
line-height: 1.5;
padding: 3px 15px;
display: inline-block;
margin: 0;
}
.yoyaku .uk-accordion-content{
padding: 25px 0;
}
}
/* 2026.03追加*/
.yoyaku .lineArea{
	text-align: center;
}
.yoyaku .lineArea img{
	max-width: 700px;
	width: calc(100% - 40px);
}
@media (max-width: 768px) {
.yoyaku{
	padding: 50px 0;
}
.yoyaku h3{
	color: #fff!important;
	text-align: center!important;
	margin-bottom: 50px;
  	font-weight: 100;
  	font-size: 30px;
  	font-family: "Noto Sans Japanese";
	line-height: 1.5;
}
.yoyaku .lineArea img{
	max-width: 400px;
	width: calc(100% - 40px);
}
}
/* 下層ページ（共通）
 ========================================================================== */
 .relative{
    position:relative;
}
.pname{
    color: #000000;
    font-family: 'Satisfy', cursive;
font-size:20px;
}
.pname span{
        padding-left: 10px;
     color: #666666;
    font-weight: normal;
    font-size: 13px;
    font-family: "Noto Sans Japanese";
    font-weight: 200;
}

/* タイトル */
 .h2area{
    height: 330px;
    position:relative;
}
.h2area h2{
    font-weight: normal;
    font-size: 30px;
    text-align:center;
   font-family: "Sawarabi Mincho", serif;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto auto;
    color: #000;
    padding-top:180px;
}
.h2area h2 span{
    font-size: 18px;
    display: block;
    margin-top: 15px;
    font-weight: normal;
    font-family: Quicksand, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

  /* パンくず */
.uk-breadcrumb>li {
    font-size: 12px;
}
.uk-breadcrumb>li:nth-child(n+2):before {
    content: ">";
    display: inline-block;
    margin: 0 8px;
}

  /* コンテンツ */
.contents{
    padding: 10px 10px 80px 10px;
    line-height: 1.6;
}
.contents h3{
    text-align: center;
    margin-bottom: 50px;
    font-weight: 100;
    font-size: 30px;
    color: #dfb63b;
    font-family: "Noto Sans Japanese";
}

#side-menu {
    background: #f4f4f4;
    max-width: 290px;
    margin: 0;
    padding: 0 10%;
}
#side-menu .uk-vertical-align-middle{
    width: 100%;
}
#side-menu h3{
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
#side-menu ul li{
    margin-bottom: 10px;
}
#side-menu ul li a{
    color: #000;
    text-decoration: none;
}
#side-menu ul li.active a,#side-menu ul li:hover a{
    font-weight: bold;
    font-size: 105%;
    color: #1D8ACB;
}

@media (max-width: 479px) {
.title {
    background-position: right center!important;
    padding: 5% 0;
}
.title h2{
    font-size: 20px;
    margin-bottom: 10px;
    margin-top: 0px;
}
.title h2 span{
    font-size: 14px;
    margin-top: 0px;
    display: inline-block;
    margin-left: 10px;
}
.title p{
    font-size: 80%;
    margin: 0px;
    padding: 0 10px;
}
#main h3{
    padding-bottom: 40px;
}
.contents h3{
    font-size: 25px;
    line-height: 1.6;
}
}

dl.attlist dt {
    clear: left;
    float: left;
    width: 1.5em;
    text-align: left;
    white-space: nowrap;
    line-height: 1.5;
    font-weight: normal;
}
dl.attlist dd {
    margin-left: 1.8em;
    padding: 0 0 0 5px;
    text-align: left;
    line-height: 1.5;
}

/* スタジオ紹介
 ========================================================================== */
#studio .bgimg{
       background: url(../img/top/studioimg.jpg) no-repeat center;
       background-size: cover;
       height: 200px;
}
.gaikanarea{
       background: url(../img/studio/img_bg_gaikan.jpg) no-repeat center top;
       background-size: cover;
       height: 300px;
       margin-bottom: 80px;
}
.maparea{
       text-align: center;
}
@media (max-width: 479px) {
#map_canvas{
    height: 300px;
}
}
/* レッスンについて（下層）
 ========================================================================== */
#lessont .bgimg{
       background: url(../img/lesson/img_bg_title.jpg) no-repeat top;
       background-size: cover;
       height: 200px;
}
.block{
display:block;
padding-left: 0!important;
}
.lessonimg{
float:right;
margin-left: 10px;
width: 50%;
}
.lessonbox{
padding: 20px;
margin-bottom: 30px!important;
position: relative;
}
.lessonbox .comment{
position: absolute;
top: 0px;
left: 0px;
padding: 2px 10px;
color: #fff;
font-size: 13px;
z-index: 99;
}
.lessonbox table{
font-size: 110%;
}

.bgreen{
border: solid #279932 1px;
}
.bgreen .comment{
background: #279932;
}
.bsky{
border: solid #5297c7 1px;
}
.bsky .comment{
background: #5297c7;
}
.byellow{
border: solid #d29100 1px;
}
.byellow .comment{
background: #d29100;
}
.bblue{
border: solid #395399 1px;
}
.bblue .comment{
background: #395399;
}
.bpink{
border: solid #d57189 1px;
}
.bpink .comment{
background: #d57189;
}
.bpurple{
border: solid #633881 1px;
}
.bpurple .comment{
background: #633881;
}
.pricetbl{
width: 60%;
margin: 0 auto;
font-size: 120%;
line-height: 1.4;
}
.pricetbl table td{
font-family: 'Roboto Condensed', sans-serif;
vertical-align: middle;
}
.pricetbl table th{
vertical-align: middle;
}
.roboto{
font-family: 'Roboto Condensed', sans-serif;
}
.noto{
font-family: "Noto Sans Japanese";
}
.bggreen{
background: #f3f9f0;
padding-top: 80px;
margin-bottom:80px;
}
@media (max-width: 768px) {
.lessonimg{
float:none;
margin-left: 0;
width: 100%;
}
.pricetbl{
width: 90%;
}
}

/* インストラクター紹介（下層）
 ========================================================================== */
#instructort .bgimg{
       background: url(../img/instructor/img_bg_title.jpg) no-repeat top;
       background-size: cover;
       height: 200px;
}
.profbox01{
background: rgba(255,255,255,0.9);
    padding: 30px;
    margin-bottom: 30px!important;
    display: inline-block;
margin-top: -150px;
}
.profbox02{
background: rgba(255,255,255,0.9);
    padding: 30px;
    margin-bottom: 30px!important;
    display: inline-block;
margin-left:200px;
}

.contents h4{
color:#23ac38;
font-family: "Noto Sans Japanese";
line-height: 1.8;
}

@media (max-width: 768px) {
.instimg{
float:none;
margin-left: 0;
width: 100%;
}
.profbox01{
margin-top: -50px;
}
.profbox02{
background: #fff;
    padding: 30px;
    margin-bottom: 30px!important;
    display: inline-block;
margin-left:0px;
}
}
/* お問い合わせ（下層）
 ========================================================================== */
#contactt .bgimg{
       background: url(../img/contact/img_bg_title.jpg) no-repeat top;
       background-size: cover;
       height: 200px;
}
/* テーブルデザイン
-------------------- */
.row-table-01 {
    margin-bottom: 30px;
    width: 80%;
    margin: 0 auto;
}
.row-table-01 tr {
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
}
.row-table-01 th {
    padding: 20px;
    border: 0;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
}
.row-table-01 td {
    padding: 20px;
    border: 0;
    border-bottom: 1px solid #ccc;
    width: 60%;
}
.table-style th, .table-style td {
    padding: 20px;
}
.horizon th, .horizon td {
    padding: 20px;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
.table-style th,
.horizon th {
    background: #f6f6f6;
}
.horizon {
    border-top: 1px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
}
.horizon tr {
    border: none;
}
.horizon th:first-child,
.horizon td:first-child {
    border-left: 0;
}
.horizon th:last-child,
.horizon td:last-child {
    border-right: 0;
}
/* ContactForm
-------------------- */
.row-table-01 input[type=text] {
    margin: 0 10px 4px 2px;
    padding: 2px;
    font-size: 15px;
}
.form-s {
    width: 20%;
}
.form-m {
    width: 50%;
}
.form-l {
    width: 80%;
}

.mail-before-attachment {
}
.mail-after-attachment {
}
.mail-description small {
}

.submit {
margin: 30px 0;
text-align: center;
}
.submit input.button {
font-size: 15px;
cursor: pointer;
}
.auth-captcha {
margin: 30px 0;
text-align: center;
}
.mail-description {
margin-bottom: 10px;
text-align: center;
}
#flashMessage {
margin-bottom: 10px;
text-align: center;
}

.alert-message {
    color: #c00;
}
.error-message {
    color: #c00;
}

.required {
    color: #c00;
}
@media screen and (max-width: 640px) {
.row-table-01 table {
box-sizing: border-box;
}
.row-table-01 tr {
display: block;
margin-bottom: 1.5em;
}
.row-table-01 th {
padding: 5px 10px;
background: #999;
color: #fff;
}
.row-table-01 th,
.row-table-01 td {
display: list-item;
width: auto;
border: none;
    list-style: none;
}
.row-table-01 td textarea {
width: 100%;
}
}

/* ボタンスタイル */
.button {
font-size:15px;
font-weight:normal;
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
border:1px solid #dcdcdc;
padding:5px 15px;
text-decoration:none;
background:-moz-linear-gradient( center top, #f9f9f9 7%, #e9e9e9 98% );
background:-ms-linear-gradient( top, #f9f9f9 7%, #e9e9e9 98% );
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9');
background:-webkit-gradient( linear, left top, left bottom, color-stop(7%, #f9f9f9), color-stop(98%, #e9e9e9) );
background-color:#f9f9f9;
color:#666666;
display:inline-block;
text-shadow:1px 1px 0px #ffffff;
 	-webkit-box-shadow:inset 1px 1px 0px 0px #ffffff;
 	-moz-box-shadow:inset 1px 1px 0px 0px #ffffff;
 	box-shadow:inset 1px 1px 0px 0px #ffffff;
    cursor: pointer;
}
.button:hover {
background:-moz-linear-gradient( center top, #e9e9e9 7%, #f9f9f9 98% );
background:-ms-linear-gradient( top, #e9e9e9 7%, #f9f9f9 98% );
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9e9e9', endColorstr='#f9f9f9');
background:-webkit-gradient( linear, left top, left bottom, color-stop(7%, #e9e9e9), color-stop(98%, #f9f9f9) );
background-color:#e9e9e9;
}
.button:active {
position:relative;
top:1px;
}

/* instagram
 ========================================================================== */

.insta {
    border: 1px solid #efefef;
    padding: 20px;
    border-radius: 10px;
}
.insta a, a:visited {
    color: #003569;
    text-decoration: none;
}
.EmbedHeader {
   margin-bottom: 20px;
}
.ehAvatarLink {
    display:block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: 40px;
    margin-right: 12px;
    width: 40px;
float: left;
}
.ehAvatar {
    border: 1px solid #dbdbdb;
    border-radius: 19px;
    height: 38px;
    width: 38px;
}
.ehNextToAvatar {
    display: block;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1.5;
    padding-right: 12px;
float:left;
}
.ehUsername, .ehUsername:visited {
    color: #262626;
    font-weight: 600;
}
.ehLocationLink, .ehLocationLink:visited {
    color: #262626;
    font-weight: 400;
}
.ehRight {
    background: 0 0;
    border: none;
    font-size: 16px;
    font-weight: 600;
    outline: none;
    overflow: visible;
    padding: 0;
margin: 10px 20px;
float:left;
}
.ehRight  a{
color: #3897f0;
}
.insta .uk-width-1-3 {
    margin-bottom: 15px;
}
/*----------------------------------------
sidebar
----------------------------------------*/

.sideNav {
margin-bottom: 60px;
width: 25.63%;
float: left;
}

.sideNav .articleArea {
padding: 0;
}

.blogWidget {
width: 100%;
margin-bottom: 40px;
}

.sideNav h2 {
margin-bottom: 20px;
width: 100%;
background: rgb(253, 210, 40);
line-height: 40px;
font-weight: normal;
font-size: 16px;
font-size: 1rem;
color: #FFF;
text-indent: 10px;
}

.sideNav ul {
padding-left: 0;
}

.sideNav ul li {
padding: 0 10px 15px 30px;
line-height: 120%;
position: relative;
list-style: none;
}

.sideNav ul li a:before {
margin-right: 5px;
display: inline-block;
font-family: 'FontAwesome';
content: '\f105';
position: absolute;
top: 0;
left: 14px;
}

.widget-blog-calendar {
padding: 20px;
width: auto;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
border-radius: 4px;
background: #F8F8F8;
margin-bottom: 40px;
}

.widget-blog-calendar h3 {
margin: 0 0 15px 0;
font-size: 18px;
font-size: 1.125rem;
background: none;
color: #698C00;
text-align: center;
line-height: 18px;
}

.blog-calendar {
width: 100%;
}

.blog-calendar tr {
border-bottom: 1px solid #CCC;
}

.blog-calendar tr:first-child {
padding-bottom: 5px;
}

.blog-calendar th,
.blog-calendar td {
padding: 5px 0;
text-align: center;
font-weight: normal;
font-size: 14px;
font-size: 0.875rem;
}

.blog-calendar th a,
.blog-calendar td a {
color: #59aa18;
font-size: 14px;
font-size: 0.875rem;
text-decoration: underline;
}

.saturday {
color: #006DD9;
}

.sunday {
color: #B20000;
}

.today {
font-weight: bold !important;
background: rgba(31, 173, 23, 0.8);
color: #FFF;
}

.today a {
color: #FFF;
}

#ContentSearchForm input[type="text"] {
width: 100%;
}
.entryArea {
    padding-bottom: 80px;
    width: 70.72%;
    float: right;
}
.contents .entryArea h3 {
    text-align: left;
line-height: 1.5;
}
.contents .entryArea h4 {
color: #23ac38;
font-family: "Noto Sans Japanese";
line-height: 1.8;
font-size: 20px;
border-bottom: 2px solid #f0d824;
padding-bottom: 5px;
margin-bottom: 30px;
}
article.post{
margin-bottom: 50px;
background: #fcfaf6;
padding: 40px;
border: 1px dotted #f3debf;
}
@media only screen and (max-width: 499px) {
.sideNav {
margin-bottom: 20px;
width: 100%;
float: none;
}
.entryArea {
    padding-bottom: 80px;
    width: 100%;
    float: none;
}
.contents .entryArea h3 {
    text-align: left;
line-height: 1.5;
font-size: 20px;
}
}

/* 2022.03.31追加 */
.lesson-cont h4{
	text-align: center;
	font-size: 24px;
}
	@media (max-width: 640px){
.lesson-cont h4{
	font-size: 20px;
}
}

.lesson-cont .ld-text{
	line-height: 2.5;
	font-size: 16px;
}
	@media (max-width: 640px){
.lesson-cont .ld-text{
	line-height: 2.0;
	font-size: 14px;
}
}
.lesson-cont .ld-text a:visited{
	color: #23ac38;
}
.lesson-cont .lesson-img{
	text-align: center;
	margin: 40px 0;
}
.lesson-cont .lesson-img img{
	max-width: 750px;
	width: 100%;
}
.lesson-cont span.list,.price-cont span.list{
	display: inline-block;
	font-weight: bold;
	margin-right: 15px;
	font-size: 18px;
}
	@media (max-width: 640px){
.lesson-cont span.list,.price-cont span.list{
	font-size: 16px;
}
}
.lesson-cont span.list::before,
.price-cont span.list::before{
	content: '●';
	color: #dfb63b;
	margin-right: 5px;
	font-size: 15px;
}
.lesson-cont span.list span.text-small{
	font-size: 14px;
	font-weight: normal;
}
	@media (max-width: 640px){
.lesson-cont span.list span.text-small{
	display: block;
line-height: 0.8;
}
}
.price-cont span.list{
	display: block;
	font-weight: normal;
}
.price-cont span.list strong{
	color: #23ac38;
}
.price-cont .ld-text{
	text-align: center;
}
	@media (max-width: 640px){
.price-cont .ld-text{
	text-align: left;
}
}

.taisaku__wrap{
	max-width: 550px;
	width: 90%;
	margin: 0 auto;
}
@media (min-width: 961px){
.taisaku__wrap .line__bnr a{
	pointer-events: none;
}
}

/* 2026.03追加*/
.lesson-cont .uk-flex{
	align-items: center;
	justify-content: center;
	margin-top: 30px;
}
.lesson-cont .uk-flex .lesson-img{
	margin: 0;
}
.lesson-cont .uk-flex .lesson-img img{
	max-width: 300px;
}
.lesson-cont .uk-flex .lesson-text{
	margin-left: 40px;
	font-size: 18px;
	line-height: 2.0;
}
.lesson-cont .uk-flex.second{
	margin-bottom: 30px;
	margin-top: 0;
}
.lesson-cont .uk-flex.second .lesson-text{
	margin-left: 0px;
	margin-right: 40px;
}
@media (max-width: 640px){
	.lesson-cont .uk-flex{
		flex-wrap: wrap;
	}
	.lesson-cont .uk-flex .lesson-img{
		width: 100%;
		text-align: center;
		order: 1;
	}
	.lesson-cont .uk-flex .lesson-text{
		margin-left: 0!important;
		margin-right: 0!important;
		margin-top: 10px!important;
		margin-bottom: 30px!important;
		order: 2;
		text-align: center;
	}
}
.lesson-cont #cal .line__bnr{
	text-align: center;
}
.lesson-cont #cal .line__bnr img{
	max-width: 600px;
	width: 100%;
}
@media (max-width: 640px){
}
