@charset "utf-8";
/*
Theme Name: basic003_pink
Theme URI: https://www.easy-juku.com
Description: Easy Template Theme
Author: Project EASY
Version: 3.0
*/

/* 基本部分
-------------------------------------------------------------- */
@import "css/normalize.css";
@import "css/color.css";
* {
    box-sizing: border-box;
}

html {
    overflow: auto;
}

html, body {
    width: 100%;
}
body {
    font-size: 16px;
}
@media screen and (max-width: 767px) {
    body {
        font-size: 14px;
    }
}

table {
    font-size: 1em;
    line-height: 1.7em;
    margin: 0.7em 0;
    width: 100%;
    table-layout: fixed;
}
table th,
table td {
    padding: 5px;
    word-break: break-all;
}

th {
	font-size: 12px;
	font-weight: bold;
	line-height: 18px;
	padding: 10px;
	vertical-align: middle;

}

td {
	padding: 10px 4px;
	vertical-align: middle;
}

/*
tr.odd td {
	border: 1px solid #000000;
	vertical-align: middle;
	background: #f2f7fc;
}
*/

p {
    line-height: 1.4em;
    letter-spacing: .1em;
}

img {
    -ms-interpolation-mode: bicubic;
    max-width: 100%;
    height: auto;
}

ul {
    margin: 0;
    margin-bottom: 1em;
}

li {
    line-height: 1.7em;
    margin: 0;
}

iframe {
    max-width: 100%;
}

.container,
.container-fluid {
    max-width: 980px;
}
.container-fluid {
    padding: 0;
}

/* フォント関係
-------------------------------------------------------------- */
body,
input,
textarea,
.page-title span,
.pingback a.url {
    font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h3#comments-title,
h3#reply-title,
#access .menu,
#access div.menu ul,
#cancel-comment-reply-link,
.form-allowed-tags,
#footer_right,
#site-title,
#wp-calendar,
.comment-meta,
.comment-body tr th,
.comment-body thead th,
.entry-content label,
.entry-content tr th,
.entry-content thead th,
.entry-meta,
.entry-title,
.entry-utility,
#respond label,
.navigation,
.page-title,
.pingback p,
.reply,
.widget-title,
.wp-caption-text {
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
input[type=submit] {
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
pre {
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
code {
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.alignleft { float: left; margin: 7px 20px 20px 0; }
.alignright { float: right; margin: 7px 0 20px 20px; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.page-content h2,
.page-content h3,
.page-content h4 {
	clear: both;
}
.page-content h2:before,
.page-content h3:before,
.page-content h4:before,
.page-content h2:after,
.page-content h3:after,
.page-content h4:after {
	clear: both;
	content:".";
	display: block;
	height:0px;
	clear:both;
	line-height:0;
	visibility:hidden;
}

.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 15px;
	margin-top: 4px;
}
.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}



/* ヘッダー
-------------------------------------------------------------- */
.header-wrap {
	/*
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9998;
	*/
}
.main {
	/*
    padding-top: 170px;
    */
    overflow-x: hidden;
}
@media screen and (max-width: 782px) {
    .header-wrap {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 9998;
        padding: 16px 0;
    }
    .main {
        padding-top: 96px;
    }
}
/* ヘッダー　ロゴ・コンタクト部分 */
.header-wrap .header {
    display: -webkit-box; /*Android4.3*/
    display: -moz-box;    /*Firefox21*/
    display: -ms-flexbox; /*IE10*/
    display: -webkit-flex; /*PC-Safari,iOS8.4*/
    display: flex;
    -webkit-box-pack: justify; /*Android4.3*/
    -moz-box-pack: justify;    /*Firefox21*/
    -ms-flex-pack: justify;    /*IE10*/
    -webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
    justify-content: space-between;
    -webkit-box-align: center; /*Android4.3*/
    -moz-box-align: center;    /*Firefox21*/
    -ms-flex-align: center; /*IE10*/
    -webkit-align-items: center; /*PC-Safari,iOS8.4*/
    align-items: center;
    padding: 1em 1.5em;
}
@media screen and (max-width: 782px) {
    .header-wrap .header {
        height: 64px;
        padding: 1em;
    }
}
/* ヘッダー　ロゴ部分 */
.header-wrap .header .header-title {
    padding-right: 1em;
}
.header-wrap .header .header-title .description {
    font-size: 0.8em;
    margin-bottom: 0.5em;
}
.header-wrap .header .header-title .logo {
    margin: 0;
}
@media screen and (max-width: 782px) {
    .header-wrap .header .header-title {
        flex: 1;
    }
    .header-wrap .header .header-title .description {
        display: none;
    }
}
/* ヘッダー　コンタクト部分 */
.header-wrap .header .header-contact {
    display: -webkit-box; /*Android4.3*/
    display: -moz-box;    /*Firefox21*/
    display: -ms-flexbox; /*IE10*/
    display: -webkit-flex; /*PC-Safari,iOS8.4*/
    display: flex;
}
/* ヘッダー　コンタクト 電話部分　*/
.header-wrap .header .header-contact .contact-tel {
    text-align: right;
}
.header-wrap .header .header-contact .contact-tel .tel_no {
    font-size: 1.5em;
    margin: 0;
}
.header-wrap .header .header-contact .contact-tel .tel_no img {
    height: 1em;
    vertical-align: -15%;
    margin-right: 0.25em;
}
.header-wrap .header .header-contact .contact-tel .freetext {
    font-size: 0.8em;
    margin: 0;
}
.header-wrap .header .header-contact .contact-tel .sp {
    display: none;
}
@media screen and (max-width: 782px) {
    .header-wrap .header .header-contact .contact-tel .pc {
        display: none;
    }
    .header-wrap .header .header-contact .contact-tel .sp {
        display: block;
    }
    .header-wrap .header .header-contact .contact-tel .tel_no {
        font-size: 1em;
    }
    .header-wrap .header .header-contact .contact-tel .tel_no img {
        width: 3em;
        height: auto;
        vertical-align: middle;
    }
}
/* ヘッダー　コンタクト　メール部分 */
.header-wrap .header .header-contact .contact-mail {
    margin-left: 0.3em;
}
.header-wrap .header .header-contact .contact-mail img {
    height: 3em;
    width: auto;
}
@media screen and (max-width: 782px) {
    .header-wrap .header .header-contact .contact-mail img {
        width: 3em;
        height: auto;
        vertical-align: middle;
    }
}
/* ヘッダー　メニューボタン（スマホ時） */
.header-menu-button {
    display: none;
}
.header-menu .menu-close-button {
    display: none;
}
@media screen and (max-width: 782px) {
    .header-menu-button {
        display: block;
        width: 3em;
        height: 3em;
        margin-left: 0.5em;
        background-image: url(./img/menu-open.png);
        background-size: 1.5em;
        background-position: 50% 50%;
        background-repeat: no-repeat;
        cursor: pointer;
    }
    .header-menu-button.open {
        background-image: url(./img/menu-close.png);
    }
    .header-menu .menu-close-button {
        display: block;
        padding: 0.5em;
        text-align: center;
        cursor: pointer;
    }
    .header-menu .menu-close-button img {
        width: 1.5em;
    }
}
/* ヘッダー　メニュー部分 */
.header-wrap .header-menu .menu-header {
	max-width: 980px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
	/*
    display: flex;
    display: -webkit-box; /*Android4.3
    display: -moz-box;    /*Firefox21
    display: -ms-flexbox; /*IE10
    display: -webkit-flex; /*PC-Safari,iOS8.4
    -webkit-box-pack: center; /*Android4.3
    -moz-box-pack: center;    /*Firefox21
    -ms-flex-pack: center;    /*IE10
    -webkit-justify-content: center; /*PC-Safari,iOS8.4
    justify-content: center;
	*/
}
.header-wrap .header-menu .menu-header::after {
	content: "";
	display: block;
	clear: both;
}
.header-wrap .header-menu .menu-header > li {
	float: left;
    position: relative;
}
.header-wrap .header-menu .menu-header > li > a {
    display: block;
    font-weight: bold;
    padding: 0 1.5em;
    padding-bottom: 1em;
    background-image: url(img/menu-position.png);
    background-repeat: no-repeat;
    background-position: 50% 150%;
    background-size: 0.8em;
    transition: ease .3s background-position;
}
@media screen and (max-width: 782px) {
    .header-wrap .header-menu {
		overflow: scroll;
        display: none;
        position: fixed;
        top: 96px;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 9998;
    }
    .header-wrap .header-menu .menu-header {
        display: block;
    }
    .header-wrap .header-menu .menu-header > li {
        float: unset;
    }
    .header-wrap .header-menu .menu-header > li > a {
        position: relative;
        padding: 1em;
        background: none;
    }
    .header-wrap .header-menu .menu-header > li > a:before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 4em;
        background-image: url('./img/menu-list-icon-sp.png');
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: 1em;
    }
    .header-wrap .header-menu .menu-header > li.menu-item-has-children > a:before {
        background-image: url('./img/menu-list-open.png');
        background-size: 1.5em;
    }
    .header-wrap .header-menu .menu-header > li.menu-item-has-children.open > a:before {
        background-image: url('./img/menu-list-close.png');
    }
}
/* ヘッダー　メニュー　２階層目 */
.header-wrap .header-menu .menu-header .header-nav-child {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    padding: 2em 1.5em;
    padding-bottom: 1em;
    z-index: 9998;
}
.header-wrap .header-menu .menu-header .header-nav-child .inner {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
}
.header-wrap .header-menu .menu-header .header-nav-child .sub-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -webkit-box; /*Android4.3*/
    display: -moz-box;    /*Firefox21*/
    display: -ms-flexbox; /*IE10*/
    display: -webkit-flex; /*PC-Safari,iOS8.4*/
    display: flex;
    -webkit-box-pack: justify; /*Android4.3*/
    -moz-box-pack: justify;    /*Firefox21*/
    -ms-flex-pack: justify;    /*IE10*/
    -webkit-justify-content: space-evenly; /*PC-Safari,iOS8.4*/
    justify-content: space-evenly;
    -ms-flex-wrap: wrap;/*IE10*/
	-webkit-flex-wrap: wrap;/*PC-Safari,iOS8.4*/
    flex-wrap: wrap;
}
.header-wrap .header-menu .menu-header .header-nav-child .sub-menu li {
    margin-bottom: 1em;
    padding-left: 1.5em;
    background-image: url(img/menu-list-icon.png);
    background-repeat: no-repeat;
    background-position: center left;
    background-size: 0.8em;
}
/* ヘッダー　メニュー　２階層目表示 */
.header-wrap .header-menu .menu-header > li > a.hover {
    background-position: 50% 100%;
}

/* ヘッダーメニュー　３階層目以降は表示しない */
.header-wrap .header-menu .menu-header .header-nav-child .header-nav-child {
    display: none;
}
@media screen and (max-width: 782px) {
    .header-wrap .header-menu .menu-header .header-nav-child {
        position: static;
        padding: 0;
    }
    .header-wrap .header-menu .menu-header .header-nav-child .sub-menu {
        display: block;
    }
    .header-wrap .header-menu .menu-header .header-nav-child .sub-menu li {
        background: none;
        margin: 0;
        padding: 1em;
        padding-left: 2em;
    }
}


/* フッター
-------------------------------------------------------------- */
.footer {
    padding: 2em 1em;
}
.footer .footer-sitemap a {
    display: inline-block;
    padding: 0.5em 1em;
    border-radius: 100px;
}
.footer .footer-sitemap a img {
    height: 1em;
    width: auto;
    vertical-align: text-top;
    margin-left: 0.5em;
}
.footer .copyright {
    font-size: 0.8em;
    text-align: right;
}

/* ページ上部へ戻るボタン */
.pagetop {
    position: fixed;
    bottom: 2em;
    right: 2em;
    cursor: pointer;
}
.pagetop img {
    width: 70px;
    height: auto;
}


/* トップページ
-------------------------------------------------------------- */
/* メインビジュアル */
.mainvisual {
    position: relative;
}
.mainvisual:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 10px;
    background: url(./img/mainvisual-border.png) center no-repeat;
    background-size: cover;
}
.mainvisual .catch {
    padding: 1.5rem 1rem 0 1rem;
    font-size: 2.5em;
}
.mainvisual .description {
    padding: 0 1rem 1.5rem 1rem;
    font-size: 1em;
}
.mainvisual .slider {
	list-style: none;
	padding: 0;
	margin: 0;
}
.mainvisual li {
    position: relative;
}
.mainvisual li:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
#easy_topics ul {
	list-style: none;
}
#easy_topics ul li {
	display: none;
}
@media screen and (max-width: 782px) {
    .mainvisual li:before {
        display: none;
    }
}

/* トップコンテンツ */
.top-content {
    padding: 3.5em 0;
}


/* 新着情報・塾長ブログ */
.info-list {
    padding: 3.5em 0;
}
.info-list .info-item-wrap {
    padding-left: 3em;
}
@media screen and (max-width: 782px) {
    .info-list .info-item-wrap {
        padding: 1em;
    }
}

/* バナー（上）・バナー（下） */
.easy_banner_wrap {
    padding: 1em;
}
.easy_banner img {
    width: 100%;
    height: auto;
}

/* トピックス
-------------------------------------------------------------- */
.top-topics {
    padding: 1.2em 1em;
}
.top-topics .container {
    padding: 1em 2em;
}
.top-topics .title {
    font-size: 1.4em;
    font-weight: bold;
    text-align: center;
}
.top-topics .content p {
    margin: 0;
}


/* 共通部分（パーツ）
-------------------------------------------------------------- */
/* リンクボタン */
.link-btn {
    position: relative;
    display: inline-block;
    padding: 0.5em 1em;
    padding-right: 2em;
    border-radius: 100px;
}
.link-btn:after {
    content: "";
    position: absolute;
    top: 0.5em;
    right: 0.7em;
    width: 1em;
    height: 1.2em;
    background-image: url(img/menu-list-icon.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 0.7em;
}

/* 下層ページ　共通部分（見出し・リスト等）
-------------------------------------------------------------- */
.page-container {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 3em 1em;
}
.page-title-wrap {
	/*
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 200px;
    padding: 0 1em;
    */
    position: relative;
    min-height: 200px;
	display: table;
    width: 100%;
}
.page-title-wrap:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 10px;
    background: url(./img/mainvisual-border.png) center no-repeat;
    background-size: cover;
}
.page-title-inner {
	display: table-cell;
	vertical-align: middle;
	height: 100%;
}
@media screen and (max-width: 782px) {
    .page-title-wrap {
        min-height: 150px;
    }
}
/* パンくず */
.breadcrumbs-wrap {
    padding: 0 1em;
}
.breadcrumbs {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 1em 0;
    list-style: none;
    font-size: 0.7em;
}
.breadcrumbs li {
    display: inline-block;
    padding-right: 0.5em;
    line-height: 1;
}
.breadcrumbs .bc-arrow {
    display: inline-block;
    width: 1em;
    height: 1em;
    padding: 0 1em;
    background-image: url(img/breadcrumb-arrow.png);
    background-position: 50% 50%;
    background-size: 0.7em;
    background-repeat: no-repeat;
    vertical-align: bottom;
}
/* ページタイトル */
.page-title-wrap h1 {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 0 1em;
    font-size: 2em;
}
/* 見出し */
.page-content h2 {
    margin: 0 auto;
    margin-bottom: 1em;
    padding: 0.2em 1em;
    text-align: left;
}
.page-content h2::before {
    margin-left: -1.5em;
}
.page-content h2::after {
    margin-left: 0.5em;
}
.page-content h3 {
    margin-bottom: 1em;
    padding-bottom: 0.5em;
    font-weight: bold;
    border-radius: 4px 4px 0 0;
    background-image: url(./img/h3-ornament.png);
    background-size: 980px;
    background-repeat: no-repeat;
    background-position: bottom left;
}
.page-content h4 {
    margin-bottom: 1em;
    padding: 0.3em 0.5em;
    font-weight: bold;
}
.page-content ul {
    padding-left: 1em;
    list-style-image: url('img/li-ornament.png');
}
.page-content ol {
    padding-left: 1.2em;
}
/* ページネーション */
.navigation.pagination {
    margin-top: 3em;
    justify-content: center;
}
.navigation.pagination .screen-reader-text {
    display: none;
}
.navigation.pagination .page-numbers {
    padding: 1em;
}

/* 投稿一覧（NEWS・塾長ブログ） */
.post-list {
    margin-bottom: 1.5em;
}
.post-list a {
    margin-left: 2em;
}

.contact_table {
	margin: 0 auto 30px;
	max-width: 980px;
	text-align: left;
}

.contact_table tr th,
.contact_table thead th {
	border: 1px solid #000000;
	color: #333;
	font-size: 12px;
	font-weight: bold;
	line-height: 18px;
	padding: 10px;
	vertical-align: middle;
}

.contact_table tr td,
.contact_table thead td {
	border: 1px solid #000000;
	padding: 10px 4px;
	vertical-align: middle;
}

.contact_table tr th {
	width: 35%;
}

.blog_table {
	margin-top: 50px;
}

.blog_table td {
	padding: 20px 15px;
	vertical-align: top;
	border: #aaa solid 1px;
}
.blog_table td h4 {
	text-align: center;
	margin-bottom: 15px;
}
.blog_table td .badge {
	margin-right: 10px;
	margin-bottom: 10px;
	font-size: 15px;
}
.blog_table td a {
	color: #fff;
}
.blog_table td .blog_archive_list {
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 10px;
	border: #000 solid 1px;
}
.blog_table td .blog_archive_list a {
	color: #000;
	padding: 2px 10px;
}

#facebook_container {
	text-align: center;
}

.post-prev {
	float: left;
}
.post-next {
	float: right;
}
