@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:wght@:100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP+normal:100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto Serif JP");
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:wght@500&display=swap");
@import url("https://use.fontawesome.com/releases/v5.1.0/css/all.css");
/*--------------------------------------------------------------------------------------------------

   common

--------------------------------------------------------------------------------------------------*/
/* ==========================================================================
   Foundation
   ========================================================================== */
/*reset-------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
l,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1;
}

* {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

img {
  border: none;
  vertical-align: top;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
main {
  display: block;
}

input,
textarea {
  margin: 0;
  padding: 0;
}

ol,
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0;
}

table {
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

img,
a img {
  border: none;
}

a {
  cursor: pointer;
}
p{
  letter-spacing: 1px;
}

/*-------------------------------------------------reset*/
/*base-------------------------------------------------*/
body {
  margin: 0;
  padding: 0;
  color: #000;
  font-size: 16px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  font-weight: 300;
}

.font-serif {
  font-family: "Noto Serif JP", sans-serif;
}

.font-ebgaramond {
  font-family: "EB Garamond", serif;
}

a {
  color: #000;
  text-decoration: none;
  display: block;
}

ul, li {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

address {
  font-style: normal;
}

/*-------------------------------------------------base*/
/* ==========================================================================
   Layout
   ========================================================================== */
/*--------------------------------------------------------------------------------------------
  header
--------------------------------------------------------------------------------------------*/
.l-header {
  position: relative;
}
.l-header__inner {
  width: 100%;
  align-items: center;
  padding: 20px 0 28px 0;
}
.l-header__logo {
  align-items: center;
}
.l-header__logo img:hover{
  opacity: 0.6;
}
.l-header__logo p:hover{
  opacity: 0.6;
}


.l-header__logo p {
  font-size: 26px;
  padding-left: 20px;
  font-weight: 700;
}
.l-header__logo p span {
  display: block;
  margin-bottom: 5px;
  font-size: 16px;
}
.l-header__phone {
  margin-left: 35px;
  padding-left: 55px;
  background: url(../image/icon-phone.png) no-repeat left center;
  height: 45px;
  line-height: 1.3;
}
.l-header__contact {
  width: 195px;
  height: 139px;
  position: absolute;
  top: 0;
  right: 0;
  padding-top: 25px;
  padding-left: 57px;
  background: url(../image/bg-sunshine.png) no-repeat;
}
.l-header__contact a {
  padding-left: 30px;
  font-size: 14px;
  color: #fff;
  line-height: 1.2;
  background: url(../image/icon-mail-header.png) no-repeat left top;
}
.l-header__contact a:hover {
  color: #cd7a06;
}
.l-header__menu-1 {
  margin-bottom: 14px;
}
.l-header__menu-1 li {
  padding-right: 13px;
  height: 37px;
  line-height: 37px;
  width: 165px;
}
.l-header__menu-1 li:not(:nth-child(7)) {
  background: url(../image/bg-line-menu.png) no-repeat right center;
}
.l-header__menu-1 li a {
  padding-left: 65px;
  font-size: 14px;
}

.l-header__menu-1 li a:hover,
.l-header__menu-2 li a:hover,
.p-news-list li a:hover,
.l-footer__menu li a:hover {
  color: #5d8931;
}
.l-header__menu-1-1 {
  width: 94px !important;
}
.l-header__menu-1-1 a {
  padding-left: 39px !important;
  background: url(../image/bg-menu1.png) no-repeat left center;
}
.l-header__menu-1-2 a {
  background: url(../image/bg-menu2.png) no-repeat left 20px center;
}
.l-header__menu-1-3 a {
  background: url(../image/bg-menu3.png) no-repeat left 20px center;
}
.l-header__menu-1-4 a {
  background: url(../image/bg-menu4.png) no-repeat left 20px center;
}
.l-header__menu-1-5 a {
  background: url(../image/bg-menu5.png) no-repeat left 20px center;
}
.l-header__menu-1-4 {
  width: 200px !important;
}

.l-header__menu-1-6 {
  width: 200px !important;
}
.l-header__menu-1-6 a {
  padding-left: 55px !important;
  background: url(../image/bg-menu6.png) no-repeat left 15px center;
}
.l-header__menu-1-7 {
  width: 250px !important;
}
.l-header__menu-1-7 a {
  padding-left: 50px !important;
  background: url(../image/bg-menu7.png) no-repeat left 10px center;
}
.l-header__menu-2 {
  background-color: #85bd4e;
}
.l-header__menu-2 ul {
  align-items: center;
  height: 45px;
}
.l-header__menu-2 li {
  padding: 7px 0;
  width: 155px;
  border-left: 2px solid #bedca1;
  text-align: center;
  height: 34px;
}
.l-header__menu-2 li .no-line {
  border-left: none;
}
.l-header__menu-2 li a {
  color: #fff;
  font-size: 14px;
  line-height: 1.2;
}
.l-header__menu-2-5 {
  width: auto !important;
  padding: 0px 7px 0px 126px !important;
  background: url(../image/img-menu.png) no-repeat left 13px top;
  background-color: #005db2;
  height: 45px !important;
  border-left: none !important;
  text-align: left !important;
}
.l-header__menu-2-5:hover {
  width: auto !important;
  padding: 0px 7px 0px 126px !important;
  
  background: url(../image/img-menu2.png) no-repeat left 13px top;
  background-color: #007bd8;
  height: 45px !important;
  border-left: none !important;
  text-align: left !important;
}
.l-header__menu-2-5 a {
  padding-top: 8px;
  font-size: 10px !important;
  line-height: 1.6 !important;
}
.l-header__menu-2-6 {
  width: auto !important;
  padding: 0px 10px 0px 15px !important;
  background-color: #5a8dad;
  text-align: left;
  height: 45px !important;
  border-left: none !important;
  text-align: left !important;
}


.l-header__menu-2-6:hover {
  background-color: #6cabd2;
}
.l-header__menu-2-6 a {
  padding-top: 8px;
  line-height: 1.2;
}

.l-header__menu-2-5 a:hover,
.l-header__menu-2-6 a:hover  {
  color: #fff!important;
}

/*-------------------------------------------------header*/
/*------------------------------------------------------------------------------------------------
  main
--------------------------------------------------------------------------------------------------*/
.l-container {
  width: 1120px;
  max-width: 92%;
  margin: 0 auto;
}

.l-container908 {
  width: 908px;
}

/*-------------------------------------------------main*/
/*------------------------------------------------------------------------------------------------
  footer
--------------------------------------------------------------------------------------------------*/
.l-footer {
  position: relative;
}
.l-footer__ptop {
  position: absolute;
  right: 33px;
  bottom: 40px;
  cursor: pointer;
}
.l-footer__contact {
  background: url(../image/bg-contact-footer.jpg) no-repeat;
  background-size: cover;
  padding: 80px 0 80px 0;
  color: #fff;
}
.l-footer__contact-info {
  justify-content: center;
}
.l-footer__contact-info li {
  width: 300px;
  height: 110px;
  margin: 0 15px;
  border-radius: 18px;
  border: 2px solid #fff;
  text-align: center;
}
.l-footer__contact-info a {
  height: 100%;
  color: #fff;
}
.l-footer__contact-info a:hover {
  border-radius: 18px;
  background-color: #7bb966;
}
.l-footer__contact-info-phone {
  padding-top: 23px;
}
.l-footer__contact-info-phone span {
  font-size: 13px;
}
.l-footer__contact-info-phone-tel {
  font-size: 18px;
  font-weight: 700;
}
.l-footer__contact-info-phone-tel-number {
  letter-spacing: 2px;
  font-size: 25px !important;
  padding-left: 5px;
  display: inline-block;
}
.l-footer__contact-info-mail {
  padding-top: 20px;
  padding-left: 38px;
  line-height: 16px;
  display: inline-block;
  background: url(../image/icon-mail.png) no-repeat left 30px top 18px;
}
.l-footer__contact-info-mail span{
  font-size: 13px;
  line-height: 16px;
}

.l-footer__info {
  background-color: #85bd4e;
  color: #fff;
}
.l-footer__menu {
  padding: 20px 0;
  border-bottom: 2px solid #bedca1;
}
.l-footer__menu li {
  margin-right: 20px;
  display: inline-block;
  margin-bottom: 8px;
}
.l-footer__menu li a {
  padding-left: 9px;
  font-size: 14px;
  background: url(../image/icon-next-footer.png) no-repeat left center;
  color: #fff;
}
.l-footer__head {
  padding: 30px 0 27px 0;
}
.l-footer__head .l-container {
  justify-content: space-between;
}
.l-footer__head .l-header__logo p {
  color: #fff;
}
.l-footer__head-link a {
  border-radius: 15px;
  border: 2px solid #bedca1;
  padding: 10px 10px 10px 17px;
  padding-left: 52px;
  background: url(../image/icon-mail.png) no-repeat left 17px center;
  color: #fff;
  font-size: 16px;
  line-height: 1.4;
}
.l-footer__head-link a:hover {
  border-radius: 18px;
  background-color: #376b03;
}
.l-footer address {
  line-height: 1.4;
  margin-left: 55px;
}
.l-footer__phone {
  margin-top: 12px;
}

.l-footer__ptop{
  background: url(../image/top/top.png) no-repeat left center;
  height: 50px;
  width: 50px;
}
.l-footer__ptop:hover{
  background: url(../image/top/top_hover.png) no-repeat left center;
  height: 50px;
  width: 50px;
}

/*-------------------------------------------------footer*/
/* ==========================================================================
   Object
   ========================================================================== */
/*------------------------------------------------------------------------------------------------
  Component
--------------------------------------------------------------------------------------------------*/
.c-btn {
  padding: 8px 44px 8px 32px;
  display: inline-block;
  border-radius: 40px;
  color: #fff;
  cursor: pointer;
  font-weight: 500;
}
.c-btn--green {
  background: #6cb227 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--green:hover {
  background: #92ae76 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--pink {
  background: #f32444 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--pink:hover {
  background: #ac5961 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--blue {
  background: #527bd7 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--blue:hover {
  background: #8898bc url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--orange {
  background: #f8881a url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--orange:hover {
  background: #ca9e70 url(../image/icon-next-link.png) no-repeat right 13px center;
}
.c-btn--white {
  color: #000 !important;
  border: 1px solid #000;
  background: url(../image/icon-next-link-black.png) no-repeat right 13px center;
}
.c-btn--white:hover {
  background: #d4d4d3 url(../image/icon-next-link-black.png) no-repeat right 13px center;
}

/*-------------------------------------------------Component*/
/*------------------------------------------------------------------------------------------------
  Project
--------------------------------------------------------------------------------------------------*/
.p-heading {
  font-size: 24px;
  font-weight: 700;
}
.p-heading span {
  font-size: 22px;
  display: block;
}
.p-heading--news-top {
  color: #376b03;
  position: relative;
  display: inline-block;
  z-index: 2;
}
.p-heading--news-top span {
  display: inline-block;
  margin-left: 12px;
}
.p-heading--news-top::after{
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  z-index: -1;
  padding-right: 7px;
  width: 100%;
  height: 7px;
  background-color: #fff600;
}
.line {
    background: linear-gradient(transparent  90%, #fff600 70%);
}
.p-heading--square {
  width: 153px;
  height: 130px;
  padding-top: 25px;
  text-align: center;
  line-height: 1.3;
}
.p-heading--square-blue {
  padding-top: 15px;
  background: url(../image/top/bg-title-lesson-top.png) no-repeat;
}
.p-heading--square-green {
  background: url(../image/top/bg-title-point-top.png) no-repeat;
}
.p-heading--square-pink {
  background: url(../image/top/bg-discount-top.png) no-repeat;
}

.p-gradation {
  width: 100%;
  height: 260px;
}
.p-gradation .l-container {
  position: relative;
  height: 100%;
}
.p-gradation h2 {
  letter-spacing: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  font-size: 30px;
  font-weight: 700;
  color: #fff;
}
.p-gradation h2 span {
  font-size: 18px;
  font-weight: 400;
  display: block;
  margin-top: 7px;
}
.p-gradation--guidance {
  background: url(../image/guidance/banner-giudance.png) no-repeat center center;
  background-size: cover;
}
.p-gradation--menue {
  background: url(../image/menue/banner-menue.jpg) no-repeat center center;
  background-size: cover;
}
.p-gradation--contact {
  background: url(../image/contact/banner-contact.jpg) no-repeat center center;
  background-size: cover;
}

.p-breadcumb {
  padding: 10px 0 40px 0;
  text-align: right;
}
.p-breadcumb ul li {
  font-size: 14px;
  display: inline-block;
}
.p-breadcumb ul li a {
  padding-right: 23px;
  position: relative;
  display: inline-block;
}
.p-breadcumb ul li a::after {
  content: "";
  position: absolute;
  top: 7px;
  right: 5px;
  width: 4px;
  height: 7px;
  background: url(../image/icon-next-breadcumb.png) no-repeat right center;
}

.p-title-paragraph {
  width: 100%;
  height: 22px;
}
.p-title-paragraph span {
  padding: 0 10px;
  font-size: 24px;
  font-weight: 700;
  background-color: #fff;
  display: inline-block;
  margin-left: 60px;
}
.p-title-paragraph--blue {
  background: url(../image/lesson/h3-blue-lesson.jpg) repeat-x;
}
.p-title-paragraph--green {
  background: url(../image/lesson/h3-green-lesson.jpg) repeat-x;
}
.p-title-paragraph--orange {
  background: url(../image/lesson/h3-orange-lesson.jpg) repeat-x;
}
.p-title-paragraph--pink {
  background: url(../image/lesson/h3-pink-lesson.jpg) repeat-x;
}

.p-content-top {
  padding-top: 170px;
  background: url(../image/bg-content.png) no-repeat center top 19px;
}

.p-pagination {
  text-align: center;
}
.p-pagination li span, .p-pagination li a {
  line-height: 25px;
  cursor: pointer;
  font-size: 18px;
  display: inline-block;
  border: 1px solid #5d8f2b;
  background-color: #fff;
  color: #5d8f2b;
  min-width: 25px;
  text-align: center;
  border-radius: 3px;
}
.p-pagination li span, .p-pagination li a:hover {
  display: inline-block;
  background-color: #5d8f2b;
  color: #fff;
}
.p-pagination .p-pagination__next:hover a, .p-pagination__next:hover .p-pagination a, .p-pagination .p-pagination__prev:hover a, .p-pagination__prev:hover .p-pagination a {
  background-color: #fff !important;
  color: #5d8f2b !important;
}
.p-pagination li {
  display: inline-block;
  margin: 0 2px;
  vertical-align: middle;
}
.p-pagination li img {
  margin-top: 7px;
}
.p-news-list li {
  width: 100%;
  padding: 12px 0 12px 4px;
  border-bottom: 4px solid #c9bdae;
  letter-spacing: -1px;
}
.p-news-list li span {
  display: inline-block;
  line-height: 23px;
}
.p-news-list__date {
  padding-right: 13px;
}
.p-news-list__new {
  padding: 0 14px;
  border-radius: 23px;
  font-size: 14px;
  color: #fff;
  background-color: #6cb227;
  margin-right: 13px;
}

.p-table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.content-879 {
  width: 100%;
  margin: auto;
}

.t_back-bace {
  background-color: #f7eaec;
}

.t_back-red {
  background-color: #ebb1ba;
}

.t_back-blue {
  background-color: #e4eaf8;
}

.t_back-orange {
  background-color: #fed6af;
}

.t_back-yellow {
  background-color: #f9f8c2;
}

.text-left {
  text-align: left;
}

.time-table {
  text-align: center;
  border-collapse: collapse;
}
.time-table.pc {
  display: inline-block;
}

.time-table th,
.time-table td {
  border: solid 1px #000;
  padding: 3px 10px;
}

/*-------------------------------------------------Project*/
/*------------------------------------------------------------------------------------------------
  utility
--------------------------------------------------------------------------------------------------*/
.u-al-center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.u-al-right {
  text-align: right;
}

.u-al-left {
  text-align: left;
}

.u-fl-left {
  float: left;
}

.u-flex {
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6, BB7 */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Safari 6.1+. iOS 7.1+, BB10 */
  display: flex;
}

.u-clear {
  display: block;
}
.u-clear::after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* mac \*/
* html .u-clear {
  height: 1%;
}

.u-font-red {
  color: #ff0000;
}

/*-------------------------------------------------utility*/

/*# sourceMappingURL=common.css.map */
