@charset "UTF-8";
@import url(base.css);
/*@import url('https://fonts.googleapis.com/css?family=Zeyada');
@import url('https://fonts.googleapis.com/css?family=Nothing+You+Could+Do');*/
@import url('https://fonts.googleapis.com/css?family=Calligraffitti');
/*--------------------------------------------------------------*/
/*  フォントサイズ早見表
	以下のようにサイズを指定することで各ブラウザでのフォントサイズを揃えることが出来ます。
	左記のパーセントで指定してください。

	77% = 10px	|	122% = 16px	|	167% = 22px	
	85% = 11px	|	129% = 17px	|	174% = 23px 
	92% = 12px	|	136% = 18px	|	182% = 24px 
	100% = 13px	|	144% = 19px	|	189% = 25px 
	107% = 14px	|	152% = 20px	|	197% = 26px 
	114% = 15px	|	159% = 21px	| 	
*/
/* font-awesomeよく使うアイコンのタグ */
/*f104：細い左矢印　<i class="fa fa-angle-left" aria-hidden="true"></i>*/
/*f105：細い右矢印　<i class="fa fa-angle-right" aria-hidden="true"></i>*/
/*f106：細い上矢印　<i class="fa fa-angle-up" aria-hidden="true"></i>*/
/*f107：細い下矢印　<i class="fa fa-angle-down" aria-hidden="true"></i>*/
/*f053：太い左矢印　<i class="fa fa-chevron-left" aria-hidden="true"></i>*/
/*f054：太い右矢印　<i class="fa fa-chevron-right" aria-hidden="true"></i>*/
/*f077：太い上矢印　<i class="fa fa-chevron-up" aria-hidden="true"></i>*/
/*f078：太い下矢印　<i class="fa fa-chevron-down" aria-hidden="true"></i>*/
/*f0d9：左三角　<i class="fa fa-caret-left" aria-hidden="true"></i>*/
/*f0da：右三角　<i class="fa fa-caret-right" aria-hidden="true"></i>*/
/*f0d8：上三角　<i class="fa fa-caret-up" aria-hidden="true"></i>*/
/*f0d7：下三角　<i class="fa fa-caret-down" aria-hidden="true"></i>*/
/*f100：二重左矢印　<i class="fa fa-angle-double-left" aria-hidden="true"></i>*/
/*f101：二重右矢印　<i class="fa fa-angle-double-right" aria-hidden="true"></i>*/
/*f08e：外部リンク　<i class="fa fa-external-link" aria-hidden="true"></i>*/
/*f095：電話　<i class="fa fa-phone" aria-hidden="true"></i>*/
/*f003：メール　<i class="fa fa-envelope-o" aria-hidden="true"></i>*/
/*f041：マップマーカー　<i class="fa fa-map-marker" aria-hidden="true"></i>*/
/* 疑似要素で表示するときはこうだよ
:before,
:after {
	content:"\f0da";
	font-family: FontAwesome;
}
*/
/* ------------------------------------------------------------ */
/* 基本、レイアウト指定 */
/* ------------------------------------------------------------ */
* html body {
  background: url(null) fixed;
}
* {
  box-sizing: border-box;
}
html {
  overflow-x: hidden;
}
body {
  background: #fff;
  margin: 0;
  padding: 0;
  font-size: 13px;
  *font-size: small;
  *font: x-small;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #333;
  line-height: 1em;
  -webkit-text-size-adjust: 100%; /*レスポンシブのとき*/
  overflow: hidden;
}
.fl_left {
  float: left;
  margin: 0 15px 15px 0;
}
.fl_right {
  float: right;
  margin: 0 0 15px 15px;
}
.sp {
  display: none;
}
/* ------------------------------------------------------------ 
Web font
------------------------------------------------------------ */
.gfont {
  /*font-family: 'Zeyada', cursive;*/
  /* font-family:'Nothing You Could Do', cursive;*/
  font-family: 'Calligraffitti', cursive;
  font-weight: normal;
}
.minfont, section h2, .pagetitle h2, section.post .sidebar h3, .point_list li h4, section.semi_sub h4 {
  font-family: YuMincho, "游明朝", "Yu Mincho", "游明朝体", serif;
  font-weight: normal;
}
/* ------------------------------------------------------------ */
/* リンク色 */
/* ------------------------------------------------------------ */ ::selection {
  color: #95c2b6;
  background: rgba(149, 194, 182, 0.2);
}
a {
  -webkit-transition: all .5s;
  transition: all .5s;
  cursor: pointer;
}
a:link, a:visited, a:hover, a:active {
  color: #333;
  text-decoration: none;
}
.clearfix:after {
  content: ""; /* 新しいコンテンツ */
  display: block;
  clear: both;
  visibility: hidden; /* 非表示に */
}
.svg {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
p.btn {
  width: 100%;
  text-align: center;
  margin: 0 auto 10px;
}
p.btn a {
  display: block;
  width: 100%;
  height: auto;
  padding: 15px;
  color: #66a34b;
  background: #fff;
  border: 1px solid #66a34b;
}
p.btn a:hover {
  color: #fff;
  background: #66a34b;
}
a.all {
  font-size: 14px;
  color: #66a34b;
  display: block;
  width: auto;
  border-bottom: 1px solid #66a34b; /*float: right;
    text-align: right;
	position:relative;*/
}
/*a.all:after {
	content:"";
    display: block;
	height:1px;
	width:100%;
	position:absolute;
	bottom:0;
	left:0;
    background: #66a34b;
}*/
a.all:hover {
  opacity: 0.7;
}
a.pagelink {
  font-size: 14px;
  color: #51a433;
  display: inline-block;
  text-align: center;
  width: auto;
  position: relative;
  border-bottom: 1px solid #51a433;
  margin: 0 10px;
}
a.pagelink:before {
  content: "\f175";
  font-family: FontAwesome;
  display: inline-block;
  margin: 0 5px 0 0;
}
a.pagelink:hover {
  opacity: 0.7;
}
/* ------------------------------------------------------------ */
/* コンテンツ幅 */
/* ------------------------------------------------------------ */
.inner {
  width: 1024px;
  height: auto;
  margin: 0 auto;
}
/* ------------------------------------------------------------ */
/* ヘッダー */
/* ------------------------------------------------------------ */
header {
  width: 100%;
  height: auto;
  padding: 20px 0 0;
  position: relative;
  z-index: 2;
}
header h1 {
  float: left;
  width: 400px;
  height: auto;
  margin: 0;
}
header .contact {
  float: right;
  margin: 0 0 0 auto;
  width: 35%;
}
header .contact span, header .contact a.phone {
  display: block;
  margin: 0 auto 10px;
  text-align: center;
}
a.phone {
  color: #5d9d40;
  font-size: 40px;
  line-height: 2.5rem;
}
a.phone:before {
  content: "\f095";
  font-family: FontAwesome;
  display: inline-block;
  margin: 0 10px 0 0;
}
a.mail {
  color: #5d9d40;
  font-size: 30px;
  line-height: 2.5rem;
}
a.mail:before {
  content: "\f0e0";
  font-family: FontAwesome;
  display: inline-block;
  margin: 0 10px 0 0;
}
/* ------------------------------------------------------------ */
/* 格納 */
/* ------------------------------------------------------------ */
.wrapper {
  width: 100%;
  height: auto;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.wrapper:before {
  content: "";
  display: block;
  width: 2000px;
  height: 2000px;
  background: #f0fdf9;
  border-radius: 50%;
  position: absolute;
  left: -80%;
  top: -50%;
  z-index: -1;
}
/* ------------------------------------------------------------ */
/* メインビジュアル */
/* ------------------------------------------------------------ */
.main-visual {
  width: 100%;
  margin: 0 auto 40px;
}
.mv_slide {
  max-width: 1300px;
  margin: 0 auto;
  text-align: center;
}
#mainslider .bx-wrapper img {
  width: 100%;
}
.main-visual .bx-wrapper .bx-pager {
  bottom: 20px !important;
}
/* ------------------------------------------------------------ */
/* ナビ */
/* ------------------------------------------------------------ */
nav.gnav {
  width: 1024px;
  height: auto;
  padding: 20px 0;
  margin: 0 auto 60px;
}
.gnav ul {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: table;
}
.gnav ul li {
  display: table-cell;
  padding: 0 15px;
  font-size: 18px;
  line-height: 1.8rem;
  text-align: center;
  position: relative;
}
.gnav ul li:not(:last-child):after {
  content: "/";
  display: block;
  position: absolute;
  top: 0;
  right: -5px;
  font-size: 16px;
}
.gnav ul li a {
  display: block;
  width: auto;
}
.gnav ul li a:hover {
  color: #5d9d40;
}
/* ------------------------------------------------------------ */
/* コンテンツ */
/* ------------------------------------------------------------ */
.content {
  width: 100%;
  height: auto;
  margin: 0 auto 12%;
}
.content section {
  width: 100%;
  max-width: 1024px;
  height: auto;
  margin: 0 auto 60px;
}
.box {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
/*リニューアルオープン前の旧サイトリンク*/
.box .preopen {
  width: 50%;
  height: auto;
  margin: 0 auto 50px;
  padding: 20px;
}
.box .preopen span {
  margin: 0 auto 20px;
  font-weight: bold;
  text-align: center;
  font-size: 16px;
}
.box .item {
  width: 48%;
  height: auto;
}
section h2 {
  font-size: 30px;
  line-height: 3rem;
  margin: 0 auto 20px;
  position: relative;
  padding: 0 0 0 50px;
}
section h2:before {
  content: "—";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
section h3 {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.8rem;
  margin: 0 auto 20px;
}
section h3 span {
  font-size: 24px;
  display: block;
  color: #5d9d40;
}
.item .caption {
  font-size: 16px;
  line-height: 1.8rem;
  margin: 0 auto 20px;
  padding: 0 0 0 50px;
}
.timetable {
  width: 100%;
  margin: 0 auto 20px;
  height: auto;
  line-height: 1.5rem;
}
.timetable p {
  font-size: 12px;
}
.timetable table {
  width: 100%;
  margin: 0 auto 10px;
  height: auto;
  background: #fff;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
}
.timetable table th, .timetable table td {
  padding: 15px 10px;
  text-align: center;
  vertical-align: middle;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.timetable table th {
  color: #fff;
  background: #599d37;
}
/* トピック エリア*/
.topic-box {}
.topic-box .item {
  width: calc(100%/4 - 20px);
  float: left;
  margin: 0 20px 0 0;
  text-align: center;
  line-height: 1.5rem;
}
.topic-box .item:last-child {
  margin: 0;
}
.topic-box .item h3 {
  font-size: 25px;
  margin: 0 auto 10px;
  line-height: 1.8rem;
}
.topic-box .item .thum {
  width: 100%;
  max-width: 230px;
  text-align: center;
  margin: 0 auto 10px;
}
.topic-box .item .thum img {
  width: 100%;
}
.topic-box .item .thum a {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.topic-box .item .thum a:hover {
  opacity: 0.7;
}
.topic-box .item span.title {
  font-size: 18px;
  margin: 0 auto 10px;
  display: block;
  color: #5d9d40;
}
/* 新着更新エリア*/
section.news {
  padding: 40px;
  background: #f0fdf9;
}
section.news h3 {
  position: relative;
}
section.news h3 a.all {
  position: absolute;
  bottom: 0;
  right: 0;
}
ul.news-list {
  width: 100%;
  margin: 0 auto;
  height: auto;
}
ul.news-list li {
  width: calc(100%/4 - 15px);
  float: left;
  margin: 0 20px 0 0;
  height: auto;
}
ul.news-list li:last-child {
  margin: 0;
}
ul.news-list li a {
  display: block;
  width: 100%;
  position: relative;
}
ul.news-list li a:hover {
  opacity: 0.7;
}
ul.news-list li a:before {
  display: block;
  width: auto;
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  background: #599d37;
  text-align: center;
  font-size: 10px;
  letter-spacing: 0.1em;
  padding: 5px;
  z-index: 2;
}
ul.news-list li a.info:before {
  content: "INFO";
}
ul.news-list li a.blog:before {
  content: "BLOG";
}
ul.news-list li a.report:before {
  content: "REPORT";
}
ul.news-list li .thum {
  margin: 0 auto 10px;
  width: 100%;
  height: 165px;
  overflow: hidden;
}
ul.news-list li .thum img {
  width: 100%;
  height: auto;
}
ul.news-list li .txt {
  width: 100%;
  height: 100px;
  overflow: hidden;
  margin: 0 auto;
  line-height: 1.5rem;
}
ul.news-list li .txt .date {
  display: block;
  font-size: 12px;
}
ul.news-list li .txt h4 {
  font-weight: normal;
}
/* テスト */
.test article.pickup-area {
  display: flex;
  width: 100%;
  max-width: 1024px;
  height: auto;
  margin: 0 auto 60px;
}
.test article.pickup-area section:first-child {
  margin: 0 1rem 0 0;
}
.test article.pickup-area section:last-child {
  margin: 0 0 0 1rem;
}
.test .pickup ul li.flx-box {
  display: flex;
    align-items: center;
}
.test .box .item {
  width: auto;
  height: auto;
}
.test article.pickup-area .pickup {
    position: relative;
    border: solid 1px #FFBC00;
    border-radius: 25px;
}
.test article.pickup-area .pickup h3 {
  position: absolute;
    top: -16px;
    left: 16px;
  font-family: fot-tsukubrdgothic-std, sans-serif;
  font-style: normal;
  font-weight: 400;
    font-size: 21px;
    padding: 0 .7rem;
    background: #ffffff;
}
.test article.pickup-area .pickup ul {
  padding: 2rem 1.5rem;
}

.test article.pickup-area .pickup ul li:first-child {
  margin: 0 0 2rem 0;
}

.test article.pickup-area .pickup ul li .item:first-child {
    width: 60%;
    line-height: 24px;
    margin: 0 .5rem 0 0;
}
.test article.pickup-area .pickup ul li .item:last-child {
    width: 40%;
    margin: 0 0 0 .5rem;
}
.test article.pickup-area .pickup ul li .item img {
    width: 100%;
}

.test article.pickup-area .pickup ul li span:first-child {
    font-family: Hiragino Kaku Gothic ProN, sans-serif;
}

.test article.pickup-area .pickup ul li .ppop {
    display: inline-block;
    background: #DC143C;
    color: #fff;
    border-radius: 30px;
    font-weight: bold;
    padding: 0 .7rem;
    margin: 0 1rem;
}

.test article.pickup-area .pickup ul li h4 {
   margin: .5rem 0 .3rem;
    font-size: 15px;
}
.test article.pickup-area .pickup ul li .item p.txt {
    font-size: 12px;
    margin: 0 0 1rem 0;
}

.test article.pickup-area .pickup ul li p.btn {
    width: 80%;
}
.test article.pickup-area .pickup ul li p.btn a {
    padding: 6px 15px;
}

.test section.news {
  padding: 40px;
  background: #ffffff;
}
.test ul.news-list {}
.test ul.news-list li {}
.test ul.news-list li:last-child {
  margin: 0 auto;
}
.test ul.news-list li a:before {
  display: none;
}
.test ul.news-list li .txt {
  height: auto;
}
.test ul.news-list li .txt h4 {
  font-weight: bold;
  font-size: 15px;
}
.test ul.news-list li .txt span {
  display: inline-block;
  vertical-align: middle;
  font-size: 12px;
  font-weight: normal;
}
.test ul.news-list li .txt span.date {
  display: inline-block;
  margin: 0 5px 0 0;
}
.test ul.news-list li .txt span.cat {
  background: #599d37;
  color: #fff;
  padding: 0 5px;
  margin: 0 5px 0 0;
  text-align: center;
  line-height: 1.5;
}
.test ul.news-list li .txt span.cat:last-of-type {
  margin: 0 15px 0 0;
}
.test ul.news-list li .txt span.new {
  border: 1px solid #e88900;
  background: #fff;
  color: #e88900;
  padding: 0 5px;
  text-align: center;
  line-height: 1.5;
  margin: 0 0 0 10px;
}
.test ul.news-list li a:hover {
  opacity: 0.7;
  color: #599d37;
}
.test ul.news-list li a:hover span.date {
  color: #333;
}
/* セミナー更新エリア*/
ul.seminar-list {
  width: 100%;
  margin: 0 auto;
  height: auto;
}
ul.seminar-list li {
  width: calc(100%/4 - 20px);
  float: left;
  margin: 0 20px 0 0;
  height: auto;
  position: relative;
}
ul.seminar-list li:last-child {
  margin: 0;
}
ul.seminar-list li .thum {
  margin: 0 auto;
  width: 100%;
  height: 165px;
  overflow: hidden;
}
ul.seminar-list li .thum img {
  width: 100%;
  height: auto;
}
ul.seminar-list li a {
  display: block;
  width: 90%;
  position: relative;
  bottom: 30px;
  padding: 8px 10px;
  text-align: center;
  line-height: 1.5rem;
  color: #fff;
  border: 2px solid #599d37;
  background: #599d37;
  margin: 0 auto;
}
ul.seminar-list li a:hover {
  color: #599d37;
  background: #fff;
}
ul.seminar-list li a:after {
  content: "\f0da";
  font-family: FontAwesome;
  display: block;
  position: absolute;
  top: 8px;
  right: 15px;
  transition: all .2s;
  -webkit-transition: all .2s;
}
ul.seminar-list li a:hover:after {
  right: 10px;
}
/* アクセス */
section.access .item.fl_left {
  width: 55%;
}
section.access .item.fl_right {
  width: 40%;
}
#map {
  height: 350px;
  margin: 0 auto;
}
#map iframe {
  width: 100%;
  height: 100%;
}
section.access .logo {
  width: 360px;
  margin: 0 auto 20px;
}
section.access .address {
  width: 100%;
  line-height: 1.5rem;
  margin: 0 auto 20px;
}
section.access p.btn {
  font-size: 16px;
}
/* ------------------------------------------------------------ */
/* フッター */
/* ------------------------------------------------------------ */
footer {
  width: 100%;
  height: auto;
  z-index: 10;
  position: relative;
}
.page-top {
  position: absolute;
  top: -100px;
  right: 20px;
}
.page-top a {
  display: block;
  background: url(../img/pagetop.png) no-repeat center;
  color: #fff;
  text-align: center;
  width: 80px;
  height: 80px;
  /* line-height: 115px; */
  padding: 53px 0 20px;
  font-size: 13px;
  letter-spacing: 0.1em;
  transform-origin: center bottom;
}
@keyframes shake {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(5deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
/*@keyframes bound {
    0% { transform: translateY(0); }
    25% { transform: translateY(20px); }
    50% { transform: translateY(0); }
    75% { transform: translateY(10px); }
    100% { transform: translateY(0); }
} */
.page-top a:hover {
  animation: shake 0.25s linear infinite;
  -webkit-animation: shake 0.25s linear infinite;
}
footer .logo {
  position: absolute;
  bottom: 0;
  background: #fff;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
  width: 245px;
  height: 260px;
  text-align: center;
  z-index: 11;
}
footer .logo a {
  display: block;
  width: 100%;
  height: auto;
  padding: 30px;
}
footer .logo a:hover {
  opacity: 0.7;
}
.ft_top {
  background: #5c9c3e;
  color: #fff;
  padding: 20px 0;
  font-size: 15px;
}
.ft_btm {
  padding: 20px 0;
}
.ft_top span, .ft_top a {
  display: block;
  width: 100%;
  height: auto;
  color: #fff;
  margin: 0 auto;
}
.ft_top span {
  margin: 0 auto 10px;
}
.ft_top .item, .ft_btm .item {
  margin: 0 auto;
  display: table-cell;
  float: none;
  vertical-align: bottom;
  line-height: 1.8rem;
}
.ft_top .item.fl_left, .ft_btm .item.fl_left {
  width: 65%;
  padding: 0 0 0 300px;
}
.ft_top .item.fl_right, .ft_btm .item.fl_right {
  width: 35%;
  padding: 0 0 0 50px;
}
.ft_btm .item.fl_right {
  text-align: right;
}
.ft_btm .item.fl_right a {
  display: inline-block;
  margin: 0 10px;
  width: auto;
}
.ft_btm .item.fl_right a:hover {
  opacity: 0.7;
}
.ft_btm .item.fl_right img.ipet {
  width: 95px;
  height: auto;
}
p.copy {
  font-size: 12px;
}
@media screen and (max-width: 1023px) {
  /* 1023px以下用（タブレット用）の記述 */
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  /* コンテンツ幅 */
  .inner {
    width: 100%;
  }
  p.btn a {
    padding: 15px 10px;
  }
  /* ------------------------------------------------------------ */
  /* 全体格納 */
  /* ------------------------------------------------------------ */
  .wrapper:before {
    width: 65em;
    height: 65em;
    left: -50%;
    top: -10%;
  }
  /* ------------------------------------------------------------ */
  /* ヘッダー */
  /* ------------------------------------------------------------ */
  header {
    position: fixed;
    top: 0;
    left: 0;
    padding: 15px 20px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: -1px 1px 10px 0 rgba(0, 0, 0, 0.5);
  }
  header h1 {
    width: 30%;
  }
  /* ------------------------------------------------------------ */
  /* ナビ */
  /* ------------------------------------------------------------ */
  /* サイドバー */
  .sb-slidebar.sb-right {
    -webkit-overflow-scrolling: touch;
  }
  .sb-toggle-right {
    position: absolute;
    right: 20px;
    top: 20px;
  }
  /*ボタン*/
  #button {
    position: absolute;
    right: 0;
    top: 0;
    width: 35px;
    height: 25px;
    outline: none;
    border: none;
    background: none;
    cursor: pointer;
    z-index: 999;
  }
  #button span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #5c9c3e;
    border-radius: 3px;
  }
  #button span:nth-of-type(1) {
    top: 0;
  }
  #button span:nth-of-type(2) {
    top: 11px;
  }
  #button span:nth-of-type(3) {
    bottom: 0;
  }
  .sb-active #button span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
  }
  .sb-active #button span:nth-of-type(2) {
    opacity: 0;
  }
  .sb-active #button span:nth-of-type(3) {
    -webkit-transform: translateY(-12px) rotate(45deg);
    transform: translateY(-12px) rotate(45deg);
  }
  /* メニュー */
  .sb-right-inner {
    border: none;
    width: 100%;
    /*height: 100%;*/
    padding: 20px 20px 30px;
  }
  .sb-right-inner .logo {
    width: 90%;
    margin: 0 auto 8%;
  }
  .sb-slidebar ul {
    width: 100%;
    margin: 0 auto 20px;
  }
  .sb-slidebar li {
    margin: 0 auto 10px;
  }
  .sb-slidebar li a {
    display: block;
    width: 100%;
    padding: 3% 0;
    font-size: 1.2em;
    line-height: 1.4em;
  }
  .sb-slidebar li a:before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    background: url(../img/pagetop.png) no-repeat center bottom;
    background-size: contain;
    margin: 0 10px 0 0;
  }
  .sb-slidebar .contact {
    float: none;
    margin: 0 auto;
    width: 100%;
    padding: 20px 20px 10px;
    background: #edfbe7;
    text-align: center;
  }
  /*.sb-slidebar .contact br {
	display:none;
}*/
  .sb-slidebar .contact span {
    line-height: 1.6em;
    display: block;
    margin: 0 0 5px;
  }
  a.phone {
    font-size: 2em;
    display: block;
    margin: 0 0 5px;
  }
  a.phone:before {
    font-size: 0.8em;
    line-height: 1.2em;
    vertical-align: text-bottom;
  }
  /* ------------------------------------------------------------ */
  /* メインビジュアル */
  /* ------------------------------------------------------------ */
  .main-visual {
    width: 100%;
    margin: 0 auto 40px;
  }
  .mv_slide {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  #mainslider .bx-wrapper img {
    width: 100%;
  }
  .main-visual .bx-wrapper .bx-pager {
    bottom: 20px !important;
  }
  /* ------------------------------------------------------------ */
  /* コンテンツ */
  /* ------------------------------------------------------------ */
  .content {
    margin: 0 auto 12%;
    padding: 0 30px;
  }
  .content section {
    max-width: 100%;
    margin: 0 auto 5%;
  }
  .box .item {
    width: calc(100%/2 - 15px);
    height: auto;
  }
  section h2 {
    font-size: 1.6em;
    line-height: 2.5rem;
    padding: 0 0 0 40px;
  }
  section h3 {
    font-size: 1.3em;
  }
  section h3 span {
    font-size: 1.2em;
  }
  .item .caption {
    font-size: 1.1em;
    padding: 0 0 0 40px;
  }
  .timetable table th, .timetable table td {
    padding: 2%;
  }
    
    /* テスト */
.test article.pickup-area {
  display: flex;
    flex-direction: column-reverse;
}
    
    .test article.pickup-area section:first-child {
    margin: 1rem 0 0 0;
}
    .test article.pickup-area section:last-child {
    margin: 0 0 1rem 0;
}
    .test article.pickup-area .pickup ul li .item:first-child {
    width: 70%;
}
    .test article.pickup-area .pickup ul li .item:last-child {
    width: 30%;
}
    
  /* トピック エリア*/
  .topic-box .item {
    width: calc(100%/4 - 20px);
    float: left;
    margin: 0 20px 0 0;
    text-align: center;
    line-height: 1.5rem;
  }
  .topic-box .item:last-child {
    margin: 0;
  }
  .topic-box .item h3 {
    font-size: 1.8em;
  }
  .topic-box .item .thum {
    max-width: 100%;
  }
  .topic-box .item span.title {
    font-size: 1.2em;
  }
  /* 新着更新エリア*/
  section.news {
    padding: 30px;
  }
  section.news h3 a.all {
    font-size: 12px;
    line-height: 1.4rem;
  }
  ul.news-list li {
    width: calc(100%/4 - 15px);
    float: left;
    margin: 0 20px 0 0;
    height: auto;
  }
  ul.news-list li a:before {
    font-size: 8px;
    padding: 3px 5px;
  }
  ul.news-list li .thum {
    height: auto;
  }
  ul.news-list li .txt {
    line-height: 1.6em;
    height: auto;
  }
  ul.news-list li .txt .date {
    font-size: 10px;
  }
  /* テスト */
  .test ul.news-list li {
    padding: 15px 0;
  }
  .test ul.news-list li .txt h4 {
    font-size: 1em;
  }
  .test ul.news-list li .txt span {
    font-size: 10px !important;
  }
  .test ul.news-list li .txt .sp {
    display: none;
  }
  /* セミナー更新エリア*/
  ul.seminar-list li {
    width: calc(100%/4 - 15px);
    float: left;
    margin: 0 20px 0 0;
    height: auto;
    position: relative;
  }
  ul.seminar-list li:last-child {
    margin: 0;
  }
  ul.seminar-list li .thum {
    margin: 0 auto;
    width: 100%;
    height: auto;
  }
  ul.seminar-list li a {
    font-size: 0.9em;
    padding: 5px 10px;
    bottom: 15px;
  }
  ul.seminar-list li a:after {
    top: 5px;
    right: 10px;
  }
  /* アクセス */
  section.access .item.fl_left {
    width: 55%;
  }
  section.access .item.fl_right {
    width: 40%;
  }
  #map {
    height: 350px;
    margin: 0 auto;
  }
  #map iframe {
    width: 100%;
    height: 100%;
  }
  section.access .logo {
    width: 100%;
  }
  section.access .address {}
  section.access p.btn {
    font-size: 1em;
  }
  /* ------------------------------------------------------------ */
  /* フッター */
  /* ------------------------------------------------------------ */
  footer {
    width: 100%;
    height: auto;
    z-index: 10;
    position: relative;
  }
  footer .inner {
    padding: 0 30px;
  }
  .page-top {
    position: absolute;
    top: -80px;
    right: 20px;
  }
  .page-top a {
    background: url(../img/pagetop.png) no-repeat center;
    background-size: 100%;
    width: 60px;
    height: 60px;
    padding: 37px 0 20px;
    font-size: 11px;
  }
  footer .logo {
    width: 13%;
    height: auto;
    line-height: 0;
    box-shadow: none;
    background: none;
  }
  footer .logo a {
    padding: 20px;
  }
  /*フッター上部*/
  .ft_top {
    padding: 15px 0;
    font-size: 100%;
  }
  /*.ft_top span,
.ft_top a {
	display:block;
	width:100%;
	height:auto;
	color:#fff;
    margin: 0 auto;
}*/
  .ft_top span {
    margin: 0 auto;
  }
  .ft_top .item {
    margin: 0 auto;
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
  .ft_top .item.fl_left {
    width: 63%;
    padding: 0;
    text-align: center;
  }
  .ft_top .item.fl_right {
    width: auto;
    padding: 0; /*padding: 0 0 0 15px;*/
    /*max-width:50%;*/
  }
  .ft_btm {
    padding: 15px 0;
  }
  .ft_btm .item {
    margin: 0 auto;
    display: block;
    line-height: 1.8em;
    float: left;
  }
  .ft_btm .item.fl_left {
    width: 56%;
    padding: 0 0 0 15%;
  }
  .ft_btm .item.fl_right {
    width: 40%;
    padding: 0 0 0 15px;
    /* max-width: 35%; */
    text-align: center;
  }
  /*.ft_btm .item.fl_right a {
	display: block;
    margin: 0 10px 0 0;
    width: auto;
    float: left;
}

.ft_btm .item.fl_right a:last-child {
    margin: 0;
}*/
  .ft_btm .item.fl_right a img {
    width: 100%;
    height: auto;
  }
  p.copy {
    font-size: 10px;
  }
  p.copy.pc {
    display: block;
  }
  p.copy.sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  /* 767px以下用（タブレット／スマートフォン用）の記述 */
  p.btn a {
    padding: 10px;
  }
  /* ------------------------------------------------------------ */
  /* 全体格納 */
  /* ------------------------------------------------------------ */
  .wrapper:before {
    width: 65em;
    height: 65em;
    left: -50%;
    top: -10%;
  }
  /* ------------------------------------------------------------ */
  /* ヘッダー */
  /* ------------------------------------------------------------ */
  header {
    position: fixed;
    top: 0;
    left: 0;
    padding: 15px 20px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: -1px 1px 10px 0 rgba(0, 0, 0, 0.5);
  }
  header h1 {
    width: 30%;
  }
  /* ------------------------------------------------------------ */
  /* ナビ */
  /* ------------------------------------------------------------ */
  .sb-right-inner {
    padding: 15px 20px 30px;
  }
  .sb-slidebar li a {
    font-size: 1.05em;
  }
  .sb-slidebar .contact br {
    display: block;
  }
  a.phone {
    font-size: 2em;
  }
  a.phone:before {
    font-size: 0.8em;
    line-height: 1.2em;
    vertical-align: text-bottom;
  }
  /* ------------------------------------------------------------ */
  /* コンテンツ */
  /* ------------------------------------------------------------ */
  .content {
    margin: 0 auto 15%;
    padding: 0 20px;
  }
  .content section {
    max-width: 100%;
    margin: 0 auto 8%;
  }
  /*リニューアルオープン前の旧サイトリンク*/
  .box .preopen {
    width: 80%;
  }
  .box .item {
    width: 100%;
    height: auto;
  }
  .box .item.fl_left, .box .item.fl_right {
    float: none;
    margin: 0 auto 5%;
  }
  section h2 {
    font-size: 1.6em;
    line-height: 2.5rem;
    padding: 0 0 0 40px;
    margin: 0 auto 15px;
  }
  section h3 {
    font-size: 1.3em;
  }
  section h3 span {
    font-size: 1.2em;
  }
  .item .caption {
    font-size: 1.1em;
    padding: 0 0 0 40px;
  }
  .timetable table th, .timetable table td {
    padding: 2%;
  }
  /* トピック エリア*/
  .topic-box .item {
    width: calc(100%/2 - 10px);
    margin: 0 20px 40px 0;
  }
  .topic-box .item:nth-child(even) {
    margin: 0 0 40px;
  }
  /* 新着更新エリア*/
  section.news {
    padding: 30px 30px 0;
  }
  ul.news-list li {
    width: calc(100%/2 - 10px);
    margin: 0 20px 30px 0;
  }
  ul.news-list li:nth-child(even) {
    margin: 0 0 30px;
  }
  /* テスト */
  .test section.news {
    padding: 30px;
  }
  .test ul.news-list li:nth-child(even) {
    margin: 0 auto;
  }
  /* セミナー更新エリア*/
  ul.seminar-list li {
    width: calc(100%/2 - 10px);
    margin: 0 20px 30px 0;
  }
  ul.seminar-list li:nth-child(even) {
    margin: 0 0 30px;
  }
  ul.seminar-list li .thum {
    height: 200px;
  }
  /* アクセス */
  section.access .item.fl_left, section.access .item.fl_right {
    width: 100%;
  }
  #map {
    height: 300px;
    margin: 0 auto 5%;
  }
  #map iframe {
    width: 100%;
    height: 100%;
  }
  section.access .logo {
    width: 60%;
    margin: 0 0 15px;
  }
  /* ------------------------------------------------------------ */
  /* フッター */
  /* ------------------------------------------------------------ */
  footer {
    width: 100%;
    height: auto;
    z-index: 10;
    position: relative;
  }
  footer .inner {
    padding: 0 20px;
  }
  .page-top {
    position: absolute;
    top: -70px;
    right: 20px;
  }
  .page-top a {
    width: 50px;
    height: 50px;
    padding: 32px 0 20px;
    font-size: 10px;
  }
  footer .logo {
    /*width: 150px;
    height: 160px;
    line-height: 100%;;*/
    /*box-shadow: 6px -6px 10px 0 rgba(0,0,0,0.3);*/
    z-index: 20;
    bottom: 10%;
    width: 12%;
  }
  footer .logo a {
    padding: 0;
  }
  .ft_top, .ft_btm {
    padding: 15px 0;
    font-size: 0.9em;
  }
  .ft_btm {
    position: relative;
    /*z-index: 20;*/
    background: #fff;
  }
  /*.ft_top span,
.ft_top a {
	display:block;
	width:100%;
	height:auto;
	color:#fff;
    margin: 0 auto;
}
.ft_top span {
    margin: 0 auto;
}
*/
  /*.ft_top .item,
.ft_btm .item {
    float: none;
}*/
  .ft_top .item.fl_left {
    width: 60%; /* padding: 0; */
    /* margin: 0 auto 10px; */
    /* display: block; */
  }
  .ft_top .item.fl_right {
    width: auto; /* text-align: center; */
    /* display: block; */
  }
  .ft_btm .item.fl_left, .ft_btm .item.fl_right {
    /*width: auto;*/
    display: table-cell;
    /*padding: 0 20px;*/
    /*margin:0 auto;*/
    vertical-align: middle;
  }
  /*.ft_btm .item.fl_left {
    width: 45%;
    padding: 0 0 0 16%;
}*/
  .ft_btm .item.fl_right {
    /*max-width:inherit;*/
    /*width: 30%;*/
  }
  .ft_btm .item.fl_right a {
    display: block;
    margin: 0 10px 0 0;
    width: calc(100%/2 - 5px);
    float: left;
  }
  .ft_btm .item.fl_right a:last-child {
    margin: 0;
  }
  /*.ft_btm .item.fl_right a img {
	width:100%;
}*/
}
@media screen and (max-width: 479px) {
  /* 479px以下用（スマートフォン用）の記述 */
  .wrapper:before {
    width: 40em;
    height: 40em;
    left: -50%;
    top: -5%;
  }
  /*header {
    padding: 10px 20px;
}*/
  header h1 {
    width: 50%;
  }
  .sb-toggle-right {
    top: 13px;
  }
  .sb-right-inner {
    padding: 10px 20px 30px;
  }
  .sb-slidebar .contact {
    padding: 20px 10px;
  }
  .sb-slidebar .contact a.phone {
    font-size: 1.7em;
  }
  .main-visual .bx-wrapper .bx-pager {
    bottom: 10px !important;
  }
  .content {
    margin: 0 auto 100px;
  }
  .content section {
    margin: 0 auto 10%;
  }
  /*リニューアルオープン前の旧サイトリンク*/
  .box .preopen {
    width: 100%;
  }
  section h2 {
    font-size: 1.5em;
    line-height: 2.2rem;
    padding: 0 0 0 30px;
    margin: 0 auto 10px;
  }
  .item .caption {
    font-size: 1.1em;
    padding: 0;
    text-align: center;
  }
  .topic-box .item {
    margin: 0 20px 30px 0;
    line-height: 1.3rem;
  }
  .topic-box .item:nth-child(even) {
    /*width: 100%;
    margin: 0 auto 40px;*/
    margin: 0 0 30px;
    line-height: 1.3rem;
  }
  .topic-box .item h3 {
    margin: 0 auto;
  }
  /*.topic-box .item .thum {
    max-width: 230px;
}*/
  /*.topic-box .item span.title {
    font-size: 1.4em;
}*/
  section.news {
    padding: 20px 20px 0;
  }
  section.news h3 a.all {
    font-size: 11px;
    bottom: inherit;
    right: 0;
    top: -5px;
  }
  ul.news-list li {
    width: calc(100%/2 - 10px);
    margin: 0 20px 20px 0;
  }
  ul.news-list li:nth-child(even) {
    margin: 0 0 20px;
  }
  /* テスト */
    
.test article.pickup-area .pickup ul {
    padding: 2rem 1rem;
}
.test .pickup ul li.flx-box {
    display: flex;
    flex-direction: column-reverse;
}
    .test article.pickup-area .pickup ul li .item:first-child {
    width: 100%;
        margin: 0;
}
    .test article.pickup-area .pickup ul li .item:last-child {
    width: 50%;
        margin: 0 0 1rem 0;
}
    
    
    
  .test section.news {
    padding: 20px 15px;
  }
  .test section.news h3 {
    margin: 0 auto 8px;
  }
  .test ul.news-list li {
    padding: 10px 0;
  }
  .test ul.news-list li .txt span.date, .test ul.news-list li .txt span.cat {
    margin: 0 5px 5px 0;
  }
  .test ul.news-list li .txt span.cat:last-of-type {
    margin: 0 0 5px 0;
  }
  .test ul.news-list li .txt .sp {
    display: block;
  }
  ul.seminar-list li {
    margin: 0 20px 10px 0;
  }
  ul.seminar-list li:nth-child(even) {
    margin: 0;
  }
  ul.seminar-list li:nth-child(3) {
    margin: 0 20px 0 0;
  }
  ul.seminar-list li .thum {
    height: 100px;
  }
  footer .logo {
    width: 60px;
    bottom: 39%;
  }
  /*footer .logo a {
    padding: 10px;
}
footer .logo img {
    height: 100%;
	width:auto;
}*/
  .ft_top .item.fl_left {
    width: 100%;
    display: block;
    line-height: 1.3em;
  }
  .ft_top .item.fl_right {
    width: auto;
    display: block;
    text-align: center;
    line-height: 1.6em;
  }
  .ft_btm .item.fl_left {
    width: 100%;
    padding: 10px 0 0 24%;
    margin: 0 auto 7%;
    display: block;
    float: none;
  }
  .ft_btm .item.fl_right {
    width: 70%;
    padding: 0;
    text-align: center;
    margin: 0 auto 10px;
    display: block;
    float: none;
  }
  .ft_btm .item.fl_right:after {
    content: "";
    display: block;
    clear: both;
  }
  .ft_btm .item.fl_right a {
    margin: 0 10px;
    width: auto;
  }
  p.copy.pc {
    display: none;
  }
  p.copy.sp {
    display: block;
    padding: 10px 0 0;
    text-align: center;
  }
  /*.ft_top {
    text-align: center;
}
.ft_btm {
    padding: 0 0 15px;
}
.ft_top .item,
.ft_btm .item {
    float: none;
}

.ft_top .item.fl_left {
	width: 100%;
    padding: 0;
	margin:0 auto 10px;
}
.ft_top .item.fl_right {
	width: auto;
    padding: 0;
    max-width: 100%;
}

.ft_btm .item.fl_left,
.ft_btm .item.fl_right {
	display:block;
	width: 100%;
}
.ft_btm .item.fl_left {
    padding: 5% 0 0 30%;
	margin:0 auto 30px;
    height: 80px;
}

.ft_btm .item.fl_right {
    display: table;
    padding: 0;
	margin:0 auto 10px;
}
.ft_btm .item.fl_right a {
    display: table-cell;
    margin: 0;
    width: 50%;
    float: none;
    padding: 0 10px;
    text-align: right;
    vertical-align: middle;
}
.ft_btm .item.fl_right a:last-child {
    text-align: left;
}
.ft_btm .item.fl_right a img {
    width: auto;
    height: 100%;
}*/
}
@media screen and (max-width: 360px) {
  /* 360px以下用（スマートフォン用）の記述 */
  .wrapper:before {
    width: 35em;
    height: 35em;
  }
  .sb-right-inner {
    padding: 10px 15px 30px;
  }
  .sb-slidebar li a {
    font-size: 1em;
  }
  .sb-slidebar .contact span {
    margin: 0 auto 5px;
    font-size: 0.9em;
    text-align: center;
  }
  section h2 {
    font-size: 1.4em;
    line-height: 2rem;
  }
  .item .caption {
    font-size: 1em;
    line-height: 1.5rem;
  }
  ul.seminar-list li .thum {
    height: 85px;
  }
  ul.seminar-list li a {
    padding: 0 10px 0 0;
  }
  ul.seminar-list li a:after {
    top: 0;
    right: 5px;
  }
  footer .logo {
    width: 55px;
    bottom: 40%;
  }
  .ft_btm .item.fl_right {
    width: 85%;
  }
}