@charset "utf-8";
/*
theme Name: kogumanookeiko-template
Author: 株式会社トータルヘルスコンサルティング
Description: THC original theme
version： 1.0.0
*/

body {
font-family: "Montserrat", "Noto Sans JP", sans-serif;
font-optical-sizing: auto;
font-weight: 500;
font-style: normal;
line-height: 1.8;
margin: 0;
padding: 0;
color: #3e3a39;
position: relative;
word-wrap: break-word;
overflow-wrap: break-word;
word-break: break-all;
font-feature-settings: "palt";
letter-spacing: 0.12em;
text-align: justify;
box-sizing: border-box;
}
img {
max-width: 100%;
height: auto;
display: block;
vertical-align: top;
}
form{
margin:0;
padding:0;
}
a{
  text-decoration: none;
}
.wrap {
margin: 0 auto;
padding: 40px 0 50px;
}
.blue{
  color: #116fa1;
}
.koguma_blue{
  color: #003b83;
}
.orange{
  color: #ED6C00;
}
.s_blue{
  color: #3dafd6;
}
.orange_bg{
  background-color: #ED6C00;
}
/* SP */ @media only screen and (max-width: 767px){
  .wrap {
  width: 100%;
  padding: 3rem 0 4rem;
  }
}

/*コンテンツのサイズ指定*/
.container {
/* box-sizing: border-box; */
max-width: 1100px;
margin-right: auto;
margin-left: auto;
}
.container:after {
display: block;
clear: both;
content: '';
}
.container.dekibis_container {
width: auto;
max-width: 100%;
padding: 0;
}
.wrapper{
  max-width: 950px;
  margin-right: auto;
  margin-left: auto;
}

.contents_full {width: 100%;}

/* SP */ @media only screen and (max-width: 767px){
  .wrapper{
    padding-right: 5%;
    padding-left: 5%;
  }
}

/*---------------------------------------------------------
固定ページフリーデザイン用
---------------------------------------------------------*/
.free_cont {
width: 100%;
margin: 0;
padding: 0;
}

/* SP */ @media only screen and (max-width: 767px){
  .container {
  padding: 1rem 5%;
  }
}


/*---------------------------------------------------------
header-CSS ヘッダー
---------------------------------------------------------*/
.home_on {display: none;}
.home_off{display: block;}
body.home .home_on {display: block;}
body.home .home_off {display: none;}

/*pc */ @media print, screen and (min-width: 768px){
body , html{min-width: 1200px;}
header{
width: 100%;
height: 120px;
background-color: #fff;
position: sticky;
top: 0;
left: 0;
z-index: 9999;
transition: all 0.3s ease;
}
header.is-animation{
/* height: 55px; */
height: 120px;
box-shadow:0 2px 5px 0 #dbdbdb;
transition: all 0.3s ease;
/* transform: translateY(-80px); */
transform: translateY(0px);
}
header .header-inner {
width: 1100px;
height: 85px;
line-height: 85px;
padding-top: 10px;
padding-right: 135px;
margin: 0 auto;
/* background-color: #fff; */
display: block;
}
header .header-inner .flex{
  align-items: center;
}
.head-logo {
width: 465px;
transition: all 0.3s ease;
justify-content: flex-start;
}
.head-logo a{
  margin-right: 20px;
  display: inline-block;
}
.head-logo img{
  display: inline-block;
}
.logo_koguoke{
  width: 205px;
  padding-top: 4px;
  height: auto;
}
.logo_kogumakai{
  padding-top: 32px;
  width: 120px;
  height: auto;
}

header .container{
  position: relative;
}
header .header-contact-btn{
  position: absolute;
  top: 0;
  right: 0;
  width: 120px;
  height: 120px;
  background-color: #F6AC19;
  color: #fff;
}
header .header-contact-btn a{
  color: #fff;
  text-decoration: none;
}
header .contact-icon {
  padding-top: 25px;
  padding-bottom: 10px;
}
header .contact-icon img{
  margin: 0 auto;
}

header .contact-txt{
  font-size: 14px;
  line-height: 1.4;
  font-weight: 600;
}

#global-nav {
width: 100%;
/* background: #fff; */
}
header.is-animation #global-nav {
/* margin-top: 15px; */
background: #fff;
}
#global-nav ul.first_nav {
width: 1100px;
margin: 0 auto;
padding-right: 135px;
/* display: table; */
}

/* アニメーション */
/* #global-nav ul.first_nav > li {
display: table-cell;
position: relative;
} */

#global-nav ul.first_nav .g_nav_btn {
width: 100%;
height: 30px;
line-height: 30px;
color: #000;
text-align: center;
text-decoration: none;
display: block;
position: relative;
}
#global-nav ul.first_nav .g_nav_btn.home_on {display: none;}
body.home #global-nav ul.first_nav .g_nav_btn.home_on {display: block;}
body.home #global-nav ul.first_nav .g_nav_btn.home_off {display: none;}
#global-nav ul.first_nav .g_nav_btn img:hover {opacity: 1;}
#global-nav ul.first_nav > li > .g_nav_btn > span {font-size: 1.35rem;}
#global-nav ul.first_nav > li:hover > .g_nav_btn > span {
color: #000;
transition: 0.5s;
}
#global-nav ul li {
/* width: 200px; */
position: relative;
line-height: 2.5rem;
text-align: center;
font-weight: 600;
letter-spacing: 0.18em;
}
#global-nav ul li a {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
display: block;
}
#global-nav ul li a:hover {
opacity: 1;
}
#global-nav ul.first_nav li:hover a .g_nav_sub,
#global-nav ul.first_nav ul.pc > li a:hover {
color: #3dafd6;
opacity: 1;
transition: unset;
}


/* .menu_second-level li {
color: #fff;
background: rgba(14,52,105,1);
opacity: 0;
transform-origin: bottom;
animation: enter 0.2s ease forwards;
border-bottom: 1px solid #e6aa6e;
}
.menu_second-level li:last-child {
border-bottom: none;
}
.menu_second-level li:nth-child(1) {
animation-duration: 0.2s;
animation-delay: 0s;
}
.menu_second-level li:nth-child(2) {
animation-duration: 0.3s;
animation-delay: 0.1s;
}
.menu_second-level li:nth-child(3) {
animation-duration: 0.4s;
animation-delay: 0.2s;
}
.menu_second-level li:nth-child(4) {
animation-duration: 0.5s;
animation-delay: 0.3s;
}
.menu_second-level li:nth-child(5) {
animation-duration: 0.6s;
animation-delay: 0.4s;
}
.menu_second-level li:nth-child(6) {
animation-duration: 0.7s;
animation-delay: 0.5s;
}
.menu_second-level li:hover {background:rgba(14,52,105,0.8);}
#global-nav ul.menu_second-level li:hover a {color: #e6aa6e;opacity:1;}
.menu_second-level li a {
padding: .8em;
text-decoration: none;
color: #fff;
}
.menu_second-level {
position: absolute;
width: 100%;
top: 100%;
left: -8%;
display: none;
z-index: 1;
}
#global-nav ul.menu_second-level > li a.scl-01 {
color: #fff;
background: #006036;
}
#global-nav ul.menu_second-level > li a.scl-02 {
color: #fff;
background: #0e3469;
border-bottom: 1px solid #e6aa6e;
}
#global-nav ul.menu_second-level > li a.scl-03 {
color: #fff;
background: #862040;
}
#global-nav ul.menu_second-level > li a.scl-01:hover {
  opacity: .6;
  transition: .3s;
}
#global-nav ul.menu_second-level > li a.scl-02:hover {
  opacity: .6;
  transition: .3s;
}
#global-nav ul.menu_second-level > li a.scl-03:hover {
  opacity: .6;
  transition: .3s;
}
#global-nav > ul > li:hover > .menu_second-level {
  display: block;
} */
@keyframes enter {
  from {
    opacity: 0;
    transform: scaleY(0.98) translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

 /*--  PC一番右端のメニューは右端に揃える --*/
/* .first_nav > li:nth-last-child(3) > ul.menu_second-level {
position: absolute;
right: 0;
}
.first_nav > li:hover ul.menu_second-level {
visibility: visible;
opacity: 1;
} */
/* メニューをホバー時のナビゲーションメニューの動作 */
#global-nav ul.first_nav li:hover .g_nav_btn a span {
opacity: .8;
transition: 0.3s;
}
}

/* 【追加】ここからメニューをホバーしたときの設定 */
#global-nav ul.first_nav ul.pc {
  display: none;
}
#global-nav ul.first_nav > li:hover ul.pc {
  display: block;
  height: auto;
  position: absolute;
  left: -38px;
  background-color: #fff;
  padding: 5px 15px;
  box-shadow: 0 2px 5px 0 #dbdbdb;
}
 
#global-nav ul.first_nav ul.pc > li {
  display: block;
  padding: 5px;
}
#global-nav ul.first_nav ul.pc > li a {
  font-size: 1.4rem;
  font-weight: 500;
  color: #3c3c3c;
  text-decoration: none;
}

#global-nav .arrow_r:after {
  content: '';
  width: 5px;
  height: 5px;
  border: 0;
  border-top: solid 2px #003B83;
  border-left: solid 2px #003B83;
  transform: rotate(225deg);
  position: absolute;
  top: -3px;
  right: -5px;
  bottom: 0;
  margin: auto;
}
.insta-btn{
  display: none;
}

/* header-SP */ @media only screen and (max-width: 767px){
	body{padding-top: 60px;}
  .container{	/*overflow: hidden;*/	}
	header{padding: 10px 0 0 10px;}
	header.is-animation{	box-shadow:0 2px 5px 0 #dbdbdb;}
	.head-animation {transform: translateY(-100%); transition: 2s;}
	.head-logo{
  width: 465px;
  padding-top: 5px;
  padding-left: 15px;
	}
  .head-logo a {
  margin-right: 15px;
	}
  .head-logo img {
  display: inline-block;
  width: 140px;
  height: auto;
  padding-top: 5px;
  }
  .head-logo img.logo_koguoke{
    width: 145px;
    padding-top: 2px;
  }
	.inner:after {
	content: "";
	clear: both;
	display: block;
	}
  .head-logo .logo_kogumakai{
  width: 85px;
  height: auto;
  padding-top: 22px;
  }
  /* メニュー開封時のHTMLの動作 */
  .scroll-prevent {
  /*動き固定*/
  position: fixed;
  /*奥行きを管理*/
  z-index: -1;
  /*下2つで背景を元のサイズのまま表示することができる*/
  width: 100%;
  height: 100%;
  }
	/* header MENU */
	#top-head {
	top: -100px;
	position: absolute;
	width: 100%;
	margin: 100px auto 0;
	padding: 30px 0 0;
	line-height: 1;
	z-index: 1200;
	transition: .5s;
	}
	#top-head.hide{
  transform: translateY(-100%);
	}
	#top-head a{
	color: #323232;
	text-decoration: none;
	}
  #top-head .container{
    padding: 0;
  }
	#top-head .inner {
	position: relative;
	}

	/* Fixed */
	#top-head.fixed {
	margin-top: 0;
	top: 0;
	position: fixed;
	padding-top: 10px;
	height: 55px;
	background: rgba(23,89,27,.7);
	}

	/* Toggle Button */
	.nav-toggle {
	display: none;
	position: absolute;
	}
	.nav-toggle div {
  width: 30px;
  height: 23px;
  display: inline-block;
  -webkit-transition: all .4s;
  transition: all .4s;
  box-sizing: border-box;
  position: fixed;
  top: 17px;
  right: 10px;
  z-index: 10;
	}
	.nav-toggle span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  border-radius: 50px;
  background-color: #003b83;
  z-index: 10;
	}
  .nav-toggle span:nth-of-type(1) {
  top: 0px;
  transition: .3s;
  }
  .nav-toggle span:nth-of-type(2) {
  top: 10px;
  transition: .3s;
  }
  .nav-toggle span:nth-of-type(3) {
  bottom: 0px;
  transition: .3s;
  }
  .nav-toggle.active span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(45deg);
  transform: translateY(10px) rotate(45deg);
  transition: .3s;
  }
  .nav-toggle.active span:nth-of-type(2) {
  opacity: 0;
  transition: .3s;
  }
  .nav-toggle.active span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(-45deg);
  transform: translateY(-10px) rotate(-45deg);
  transition: .3s;
  }
  #global-nav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-color: #fff;
  transition: all 0.3s ease-in-out;
  visibility: hidden;
  }
  #global-nav.active {
  right: 0;
  opacity: 1;
  -moz-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
  overflow: auto;
  }
  #global-nav ul li a {
  display: block;
  padding: 20px 0;
  transition: all 0.2s ease-in-out;
  text-align: center;
  text-decoration: none;
  }
  #global-nav ul li a.scl-01, #global-nav ul li a.scl-02{
    display: inline-block;
    padding-top: 12px;
    padding-bottom: 12px;
    width: 220px;
    background-color: #eaf0f2;
    border-radius: 50px;
    color: #003b83;
    font-size: 1.4rem;
  }
  #global-nav ul li a .g_nav_sub {
  color: #003b83;
  font-weight: 600;
  letter-spacing: 0.3em;
  }
  li.close .nav-toggle {
	width: 90%;
  height: auto;
  margin: 1rem auto;
  padding: 1rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
	cursor: pointer;
  background: #0e3469;
	z-index: 15;
  display: block;
  position: relative;
  right: auto;
  top: auto;
	}

	#top-head, .inner {
	width: 100%;
	padding: 0;
	}
	#top-head {
	top: 0;
	position: fixed;
	margin-top: 0;
	}
	/* Fixed reset */
	#top-head.fixed {
	padding-top: 0;
	background: transparent;
	}
	#mobile-head {
	width: 100%;
	height: 60px;
	z-index: 999;
	position: relative;
	background: #fff;
	}
	#global-nav > ul.first_nav {
  padding-top: 55px;
	list-style: none;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	}
	#global-nav ul.first_nav > li {
	float: none;
	position: static;
  width: 100%;
	}

	#global-nav ul.first_nav > li:last-child {
	float: none;
	position: static;
	}
	#global-nav ul.first_nav > li:last-child {
	border-bottom: none;
	}
  #global-nav ul.first_nav > li .menu_second-level{
    margin-bottom: 20px;
  }
	#top-head #global-nav ul.first_nav > li > a,
	#top-head.fixed #global-nav ul.first_nav > li > a {
	width: 90%;
  margin: 0 auto;
  padding: 15px 0 15px;
  font-weight: bold;
  line-height: 1.4;
  border-top: 2px dotted #e6e6e6;
	display: block;
	}
  #top-head #global-nav ul.first_nav > li:first-child > a{
    border-top: none;
  }
  #top-head #global-nav ul.first_nav .g_nav_btn.home_on {display: none;}
  body.home #top-head #global-nav ul.first_nav .g_nav_btn.home_on {display: block;}
  body.home #top-head #global-nav ul.first_nav .g_nav_btn.home_off {display: none;}

  /* #global-nav ul.menu_second-level {
  width: 90%;
  margin: 1rem auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
	}
  #global-nav ul.menu_second-level > li {
  width: 100%;
  margin-bottom: 1rem;
	}
  #global-nav ul.menu_second-level > li a {
  width: 100%;
  height: 100%;
  padding: 1.6rem 2%;
  font-size: 1.6rem;
  background: #fff4e9;
  border-radius: 8px;
  display: block;
	}
  #global-nav ul.menu_second-level > li a.scl-01 {
  color: #006036;
  background: #e3efe1;
  }
  #global-nav ul.menu_second-level > li a.scl-02 {
  color: #0e3469;
  background: #d5e3f5;
  }
  #global-nav ul.menu_second-level > li a.scl-03 {
  color: #862040;
  background: #f8dfe0;
  }
  #global-nav ul.sub-menu.menu_second-level > li {
  width: 32%;
  margin-right: 2%;
  float: left;
  } */
  #global-nav ul.sub-menu li:last-child {
  margin-right: 0;
  }
  .sp-insta-btn {
    display: none;
  /* width: 30px;
  height: 30px;
  position: absolute;
  right: 50px;
  top: 14px; */
  }
  .sp-nav-btn {
  width: 60px;
  height: 60px;
  position: absolute;
  right: 0;
  top: 0;
  }
	.nav-toggle {
	display: block;
	}
	/* .nav-toggle 切り替えアニメーション */
	.open .nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
	}
	.open .nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
	}
	.open .nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
	}
	/* #global-nav スライドアニメーション */
	.open #global-nav {
	height: 100%;
	display:  block;
	background: rgba(23,89,27,0.9);
	text-align: center;
	}
	.open #global-nav ul.first_nav > li:last-child {
	padding-bottom: 300px;
	}
  #global-nav .arrow_r:after{
    display: none;
  }
  .header-contact-btn{
    padding: 10px 5%;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .header-contact-btn p{
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff;
    background-color: #ed6c00;
    border-radius: 10px;
    height: 60px;
    line-height: 60px;
    display: flex;
    justify-content: center;
  }
  .header-contact-btn p img{
    display: inline-block;
    padding-right: 15px;
  }
}


/*---------------------------------------------------------
footer-contact-Include CSS
---------------------------------------------------------*/
#inc_contact {
width: 100%;
padding: 50px 0 0;
}
.acce_title {
/* border-bottom: 2px solid #eec182; */
border-bottom: 2px solid #F6AC19;
}
.acce_num a {
width: 300px;
display: block;
}
.map iframe {
width: 660px;
height: 410px;
border-radius: 15px;
}
/* SP */ @media only screen and (max-width: 767px){
  #inc_contact {
  /* padding: 3rem 5%; */
    padding: 0;
  }
  .acce_num a {
  width: 100%;
  }
  .map iframe {
  width: 100%;
  height: 400px;
  }
}


/*---------------------------------------------------------
footer-CSS フッター
---------------------------------------------------------*/
footer {
width: 100%;
}
.border-bc {
border-bottom: 1px solid #ddd;
}
.footer-logo {
width: 1200px;
margin: 0 auto;
}
.footer-title {
width: 25%;
margin-right: 1%;
display: inline-block;
vertical-align: middle;
}
.footer-subtitle {
width: 70%;
display: inline-block;
}
.johnan-g-logo {
width: 160px;
height: auto;
position: absolute;
right: 0;
top: 0;
}
.footer-js-box {
border-bottom: 1px #003B83 solid;
padding: 20px 0 15px;
}
.f_jag_logo {
width: 100%;
background-color: #fff;
}
.f_jag_logo a {
width: 205px;
margin: 10px 0;
display: block;
}
.f_jag_logo img {
width: 100%;
height: auto;
}
.accordion_icon {
padding: 10px 0;
}
.f_accoBox {
padding: 0 0 20px;
}
.f_group02 {
padding-left: 40px;
border-left: 1px dashed #0066b3;
}
.f_accoBox .flex{
  justify-content: flex-start;
}
.f_link {
width: 25%;
padding-left: 22px;
display: inline-block;
position: relative;
}
.f_link::before {
content: url(/uploads/images/link_arrow01.png);
position: absolute;
top: 3px;
left: 0;
}
.footer-nav {
padding: 0.5em 0;
color: #fff;
background-color: #4d4d4d;
text-align: center;
}
.footer-nav li {
padding: 0 0.5em;
display: inline-block;
border-right: 1px solid #fff;
line-height: 1.0;
}
.footer-nav li:nth-child(1) {
border-left: 1px solid #fff;
}
.footer-nav li a {
color: #fff;
font-size: 1.4rem;
}
address{
  font-size: 10px;
  font-style: normal;
}
.recaptcha{
  font-size: 10px;
  padding: 10px 0;
}
/*-- ▼Footer フッター ▼ --*/
/* sp */
@media only screen and (max-width: 767px){
  footer {
    padding: 0 0 50px;
  }
  .footer-title {
  width: 100%;
  padding: 1em 0;
  background-color: #fff;
  border-bottom: none;
  }
  .footer-title img {
  width: 80%;
  margin: 0 auto;
  display: block;
  }
  .footer-subtitle {
  text-align: center;
  margin: 0 auto;
  display: block;
  }
  .footer-grlogo a {
  width: 50%;
  margin: 25px auto 0;
  display: block;
  }
  .footer-grlogo img {
  width: 100%;
  }
  .footerlogo {
  width: 100%;
  margin: 0 auto;
  background: none;
  }
  .f_jag_logo {
  text-align: center;
  color: #fff;
  background-color: #003b83;
  display: block;
  }
  .footer-js-box {
  padding: 0;
  }
  .footer-js-box .container{
    padding-top: 0;
  }
  .accordion_icon {
  padding: 0;
  }
  .f_jag_logo img {
  width: 70%;
  margin: 0 auto;
  }
  .f-title {
  font-weight: 1000;
  color: #026dba;
  }
  .f_group01 li.fL {
  width: 100%;
  margin: 15px 0;
  }
  .f_group01 li.fL > ul > li {
  width: 100%;
  margin: 20px 0 0;
  }
  .f_group02 {
  padding-left: 0;
  padding-bottom: 20px;
  border: none;
  background: none;
  }
  .f_group02 > li {
  margin: 15px 1% 15px;
  }
  .f_group02 li > ul > li {
  margin: 20px 0 0;
  }
  .f_link {
  margin-top: 10px!important;
  padding-left: 0;
  }
  .f_link::before {content: "";}
  .f_link a {
  padding: 15px 5px 15px 15px;
  color: #0e3469;
  background-color: #f5f5f5;
  display: block;
  position: relative;
  }
  .f_link .nolink {
  padding: 15px 5px 15px 15px;
  background-color: #f5f5f5;
  display: block;
  position: relative;
  }
  .mt0sp {
  margin-top: 0px!important;
  }
  .f_accordionbox {
  padding: 1.5em 5%;
  }
  .f_accoBox {
  padding: 0 5% 1em;
  border-bottom: none!important;
  background-color: #fff;
  }
  .f_jag_logo .accordion_icon {
  background-image: url(/uploads/images/toggle_arrow01.gif);
  background-position: right center;
  background-size: 7%;
  background-repeat: no-repeat;
  }
  .f_jag_logo .active-i {
  background-image: url(/uploads/images/toggle_arrow02.gif);
  background-position: right center;
  background-size: 7%;
  background-repeat: no-repeat;
  }
  .footer-nav li a {
  font-size: 1.2rem;
  }
  .recaptcha{
    font-size: 10px !important;
    padding: 10px 15% 10px 0;
    text-align: left;
    line-height: 1.5;
  }
}


/*---------------------------------------------------------
パンくず
---------------------------------------------------------*/
.breadcrumbs span {
margin-right: 3px;
font-size: 1.3rem;
}
/* sp */
@media only screen and (max-width: 767px){
  .breadcrumbs span {
  font-size: 1.2rem;
  }
}

 

/*---------------------------------------------------------
sidebar-CSS サイドバー
---------------------------------------------------------*/
/* CSS分離 差込01 */
@charset "utf-8";
/* CSS Document */


/* CSS分離 差込01 */
/*---------------------------------------------------------
sidebar-CSS サイドバー
---------------------------------------------------------*/
/* SP サイドバーお問い合わせバナーはSPで非表示 */
.sidebar {
width: 240px;
margin-top: 15px;
float: left;
}
.sidebar-title {
font-size: 1.8rem;
box-sizing: border-box;
margin: 1.5rem 0 0;
padding: .85rem;
color: #116fa1;
text-align: center;
}
/* 検索ボックスの「検索」テキスト非表示 */
.widget_search input {
height: 40px;
padding: .3em;
border: 2px solid #f9da3e;
border-radius: 5px;
}
.widget_search input::placeholder {
color: #ccc;
}
/* Edge */
.widget_search input::-ms-input-placeholder {
color: #ccc;
}
.widget_search .wp-block-search__button {
width: 5em;
margin-left: 5px;
font-weight: bold;
color: #fff;
background-color: #ed6c00;
border-top: none;
border-right: 3px solid #85450f;
border-bottom: 3px solid #85450f;
border-left: none;
border-radius: 5px;
}
.widget_search .wp-block-search__button:active {
border:none;
transform: rotateY(-5px);
}

#sidebar .screen-reader-text {display: none;}
#sidebar .search-form input {
padding: 5px;
border-radius: 5px;
}
#sidebar .search-form .search-submit {
background-color: #116fa1;
color: #fff;
font-weight: bold;
padding: 7px 10px;
}
/*デフォルトウィジェット*/
.widget_block {
padding-left: .85rem;
padding-right: .85rem;
}
.widget_recent_entries ul,
.widget_meta ul,
.widget_recent_comments ul,
.widget_pages ul,
.widget_meta ul,
.widget_categories ul,
.widget_archive ul,
.widget_nav_menu ul,
.calendar_wrap,
.tagcloud {
list-style: none;
}
.widget_recent_entries li,
.widget_meta li,
.widget_recent_comments li,
.widget_pages li,
.widget_meta li,
.widget_archive li,
.widget_nav_menu li {
position: relative;
margin-bottom: .85rem;
}
.widget_recent_entries a,
.widget_meta a,
.widget_recent_comments a,
.widget_pages a,
.widget_meta a,
.widget_categories a,
.widget_archive a,
.widget_nav_menu a {
text-decoration: none;
color: #323232;
}
.sidebar .wp-block-heading {
font-size: 1.8rem;
text-align: center;
color: #116fa1;
}
.widget_archive {
margin-top: 2rem;
padding: 0 1em 0.5em;
border: 1px solid #e6aa6e;
background: #fff4e9;
border-radius: 3px;
}
.widget_archive .sidebar-title {
margin-top: 0;
color: #e6aa6e;
}
.widget_archive li {
margin-left: 1em;
}
.widget_archive a:hover {
color: #e6aa6e;
opacity: 1;
}
.sidebar-wrapper a:hover {
opacity: .6;
}

/*カテゴリウィジェット*/
.widget_categories .sidebar-title {
font-size: 1.8rem;
box-sizing: border-box;
margin: 0;
padding: .85rem;
color: #116fa1;
text-align: center;
}
.widget_categories ul.wp-block-categories {
padding: 0.85rem;
border-bottom: 4px dotted #f9da3e;
}
.widget_categories li {
display: block;
}
.widget_categories li a {
padding: 1.5rem;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
border-top: 4px dotted #f9da3e;
position: relative;
display: block;
}
/*.widget_categories li a::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
position: absolute;
top: 50%;
right: 2rem;
content: "\f105";
transform: translateY(-50%);
color: #fff;
display: none;
}
.widget_categories li a:hover::before {
transform: translate(10px, -50%);
transition: .3s;
}*/
.widget_categories .children {
margin-bottom: .85rem;
padding: 0;
}
.widget_categories .children li {
margin-bottom: 0;
}
.widget_categories .children li a {
width: 90%;
margin: 0 auto;
padding: 0.4em .5em;
font-size: 1.5rem;
color: #fff;
border: none;
border-radius: 100vh;
background-color: #f6ac19;
display: block;
}

/*カテゴリウィジェットとアーカイブウィジェットのドロップダウン表示*/
.widget_categories .screen-reader-text {display: none;}
.widget_archive .screen-reader-text {
position: relative;
display: block;
height: 0;
text-indent: -9999999px;
}
.widget_categories form {position: relative;}
.widget_categories form::after {
position: absolute;
top: 50%;
right: 1rem;
content: '▼';
transform: translateY(-50%);
pointer-events: none;
}
.widget_categories .postform,
.widget_archive select {
font-size: 1.6rem;
width: 100%;
padding: 4px 10px;
cursor: pointer;
border: 1px solid #e0e3ef;
border-radius: 0;
background-color: #f4f5f9;
-webkit-appearance: none;
-moz-appearance: none;
}
.widget_archive label::after {
position: absolute;
top: .85rem;
right: 1.7rem;
content: '▼';
text-indent: 0;
pointer-events: none;
}

/*タグウィジェット*/
.tagcloud a {
font-size: .9rem !important;
line-height: 1;
position: relative;
display: inline-block;
margin-bottom: .85rem;
padding: 3.4rem .85rem;
text-decoration: none;
color: #116fa1;
border: 1px solid #116fa1;
background-color: #fff;
}

/*メインメニューデザイン*/



/*カテゴリウィジェット*/
.widget_nav_menu .sidebar-title {
font-size: 1.8rem;
box-sizing: border-box;
margin: 0;
padding: .85rem;
color: #116fa1;
text-align: center;
}
.widget_nav_menu ul#menu-side {
padding: 0.85rem;
border-bottom: 4px dotted #f9da3e;
}
.widget_nav_menu li {
margin-bottom: 0;
display: block;
}
.widget_nav_menu li a {
padding: 1.5rem;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
border-top: 4px dotted #f9da3e;
position: relative;
display: block;
}
.widget_nav_menu .sub-menu {
margin-bottom: .85rem;
padding: 0;
}
.widget_nav_menu .sub-menu li {
margin-bottom: 0;
}
.widget_nav_menu .sub-menu li a {
width: 90%;
margin: 0 auto .8em;
padding: 0.4em .5em;
font-size: 1.5rem;
color: #fff;
border: none;
border-radius: 100vh;
background-color: #f6ac19;
display: block;
}


/*最近の投稿*/
.widget_recent_entries {
margin-top: .5em;
}
.widget_recent_entries li {
padding-bottom: .6rem;
border-bottom: 1px solid #ddd;
}
.widget_recent_entries li a:before {
font-family: 'Font Awesome 5 Free';
font-weight: bold;
font-weight: 900;
position: absolute;
left: 5px;
content: '\f303';
color: #000;
}
.widget_recent_entries li a {
padding-left: 2.6rem;
font-size: 1.4rem;
display: block;
}
.widget_recent_entries li a:hover {
color: #f6ac19;
opacity: 1;
}
.widget_recent_entries li a:hover:before {
color: #f6ac19;
transition: .3s;
}
.widget_recent_entries .post-date {
font-size: .8rem;
display: block;
}

/*カレンダーウィジェット*/
.calendar_wrap {
padding: 1rem;
border: 1px solid #ddd;
}
.calendar_wrap table {
width: 100%;
}
.calendar_wrap tbody {
text-align: center;
}
.calendar_wrap caption {
font-weight: bold;
margin-bottom: 1rem;
}
.calendar_wrap td {
padding: .3rem 0;
}
.calendar_wrap tfoot td {
padding-top: .7rem;
}
.calendar_wrap tfoot td:last-child {
text-align: right;
}


/*---------------------------------------------------------
記事一覧
---------------------------------------------------------*/
.archive-top {
padding: 55px 0 60px;
text-align: center;
background-image: url(/uploads/images/pagetitle-bg.png);
background-size: 100% auto;
background-position: center;
background-repeat: no-repeat;
}
.archive-top h1 {
margin-left: auto;
margin-right: auto;
padding: 2rem 4rem;
font-size: 3.5rem;
font-weight: bold;
color: #116fa1;
text-align: center;
line-height: 1;
font-weight: bold;
border-radius: 10px;
display: inline-block;
letter-spacing: 0.2em;
}
.archive-top p {
margin-left: auto;
margin-right: auto;
padding: 2rem 4rem;
font-size: 3rem;
font-weight: bold;
text-align: center;
line-height: 1;
font-weight: bold;
background-color: rgba(255, 255, 255, 0.5);
border-radius: 10px;
display: inline-block;
}
.archive-kuz {
margin-bottom: 2em;
}
.article-list {
padding: 1rem;
}
.article-list a {
display: block;
text-decoration: none;
color: #323232;
background-color: #fff;
border-radius: 15px;
}
.article-list a:after {
display: block;
clear: both;
content: '';
}
.article-list .img-wrap {
position: relative;
float: left;
line-height: 1;
}
.article-list .img-wrap img {
width: 240px;
height: 160px;
border-radius: 15px 0 0 15px;
object-fit: cover;
}
.article-list .img-wrap .cat-data {
font-size: 1.3rem;
position: absolute;
top: 0;
left: 0;
padding: .6em 1em;
color: #fff;
background-color: #9bc936;
border-radius: 15px 0 15px 0;
}
.article-list.category-news .img-wrap .cat-data {background-color: #3dafd6;}
.article-list.category-pressrelease .img-wrap .cat-data {background-color: #e8887e;}
.article-list.category-koguma_column .img-wrap .cat-data,
.article-list.category-thinking-ability .img-wrap .cat-data,
.article-list.category-yoji-education .img-wrap .cat-data,
.article-list.category-homeschooling .img-wrap .cat-data,
.article-list.category-parenting .img-wrap .cat-data,
.article-list.category-kunomethod .img-wrap .cat-data,
.article-list.category-studyhabit .img-wrap .cat-data{
background-color: #f7ca11;
}

.article-list .img-wrap .blogcat .cat-data {
background-color: #f00;
}
.article-list .text {
margin-left: 260px;
padding: 1em 1em 0 0;
}
.article-list .text h2 {
font-size: 1.6rem;
line-height: 1.6;
}
.article-list .article-date,
.article-list .article-author {
font-size: 1.2rem;
font-weight: bold;
display: inline-block;
color: #888;
}
.article-list .text .article-date {
margin-right: .5rem;
}
.article-list .text .article-author i {
margin-right: .3rem;
}
.article-list .text p {
font-size: 1.4rem;
line-height: 1.7;
}
/* sp */ @media only screen and (max-width: 767px){
  .archive .contents {
  padding: 1em;
  background-color: #fff;
  border-radius: 12px;
  }
  .cat_title .cat-data a {
  font-size: 2.8rem;
  }
  .archive-top {
  padding: 2em 0;
  background-image: url(/uploads/images/pagetitle-bg_sp.jpg);
  background-size: cover;
  background-position: center;
  }
}
  

/*---------------------------------------------------------
ページネーション
---------------------------------------------------------*/
.pagination {
margin: 2rem 0;
text-align: center;
}
.pagination ul {
font-size: 0;
}
.pagination ul li {
font-size: 2.0rem;
margin-right: 1rem;
vertical-align: middle;
display: inline-block;
}
.pagination ul li:last-child {
border: 0;
}
.pagination ul li a,
.pagination .current {
width: 50px;
height: 50px;
line-height: 50px;
text-align: center;
border-radius: 100vh;
display: block;
}
.pagination ul li .prev,
.pagination ul li .next {
width: 50px;
height: 50px;
line-height: 50px;
font-size: 3.0rem;
font-weight: bold;
text-align: center;
background: none;
border: 0;
border-radius: 100vh;
}
.pagination ul li a {
text-decoration: none;
color: #f6ac19;
background-color: #fff;
}
.pagination ul li a:hover {
opacity: .6;
}
.pagination .current {
color: #fff;
background-color: #f6ac19;
}


/*---------------------------------------------------------
検索結果ページ
---------------------------------------------------------*/
.search-txt {
  padding: 1em;
}
.search-txt p {
  width: 100%;
  padding: 3px 1em;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  color: #ed6c00;
  display: block;
  border-top: 4px dotted #f9da3e;
  border-bottom: 4px dotted #f9da3e;
}
/* SP */ @media only screen and (max-width: 767px){
  .search-page .contents {
  padding: 1em;
  background-color: #fff;
  border-radius: 12px;
  box-sizing: border-box;
  }
  .search-txt {
  padding: 0 0 2em;
  }
  .search-txt p {
  line-height: 1.5;
  margin-top: .5em;
  padding: .7em .5em .5em;
  font-size: 1.6rem;
}
}


/*---------------------------------------------------------
投稿・固定ページ
---------------------------------------------------------*/
.article-content {
margin-bottom: 2rem;
}

/* コンテンツ幅指定　戻し時注意 */
.cont-wrap {
padding: 1.5em 0 4em;
}
.page-kuz {
padding-top: 1em;
}
.contents {
width: 730px;
margin-right: 30px;
float: left;
}
.contents .cont-box {
width: 100%;
margin-top: 1.5rem;
padding: 2.4em 40px 4rem;
background-color: #fff;
box-sizing: border-box;
border-radius: 30px;
}
/* SP */ @media only screen and (max-width: 767px){
  .page-kuz {
  padding-top: 0;
  line-height: 1.4;
  }
  .contents {
  margin-top: 1.5rem;
  padding: 0;
  }
  .contents .cont-box {
  margin-top: 1rem;
  margin-bottom: 2em;
  padding: 1.5em 7% 2em;
  }
  .cont-wrap {
  padding: 1.5em 0 2em;
  }
}


  .article-content .article-info {
  margin-bottom: 1.5rem;
  }
  .article-content .cat-data a {
  font-size: 1.4rem;
  margin-right: .5rem;
  padding: .1rem .5rem;
  text-decoration: none;
  color: #fff;
  background-color: #116fa1;
  }
  .cat_title .cat-data a {
  width: 100%;
  font-size: 3.4rem;
  font-weight: bold;
  margin-right: 0;
  padding: .5em 2em;
  text-align: center;
  text-decoration: none;
  color: #116fa1;
  background-color: #d8f3ff;
  pointer-events: none;
  display: block;
  }
  .article-content .article-info .article-date,
  .article-content .article-info .article-author {
  font-size: 1.4rem;
  display: inline-block;
  margin-right: .5rem;
  color: #888;
  }
  .article-content .article-info .article-author i {
  margin-right: .3rem;
  }
  .article-content p,
  .article-content b,
  .article-content table,
  .article-content ul,
  .article-content ol {
  font-size: 1.6rem;
  line-height: 1.8;
  }
  .article-content p,
  .article-content img,
  .article-content table,
  .article-content ul,
  .article-content ol {
  margin-bottom: 2rem;
  }
  .article-content h1 {
  padding: 0 1em .5em 0;
  font-size: 2.8rem;
  line-height: 1.4;
  }
  .article-content h2 {
  margin: 0 0 2rem;
  padding: 15px 0 .5em;
  font-size: 2.6rem;
  line-height: 1.4;
  color: #36b0d6;
  background-image: repeating-linear-gradient(90deg, #f9da3e, #f9da3e 6px, transparent 6px, transparent 11px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 3px;
  }
  .article-content h3 {
  width: 100%;
  line-height: 1.6;
  margin-bottom: 2rem;
  padding: 0.5em .8em;
  font-size: 2rem;
  background: #fff4c5;
  border-radius: 10px;
  }
  .article-content h4 {
  line-height: 1.5;
  margin: 2em 0 1em;
  padding-bottom: 0.6em;
  font-size: 2rem;
  border-bottom: 2px solid #F6AC19;
  }
  .article-content h5 {
  margin: 2em 0 .5em;
  font-size: 1.8rem;
  color: #ed6c00;
  }
  .article-content h6 {
  margin: 2em 0 .5em;
  font-size: 1.8rem;
  }
  .article-content .article-img {
  margin-bottom: 2rem;
  }
  .article-content .article-img img {
  display: block;
  margin: 0 auto;
  }
  .size-full img {
  width: 100%;
  }
  .article-content ul {
  margin-left: 2rem;
  list-style: disc;
  }
  .article-content ol {
  margin-left: 2rem;
  list-style: decimal;
  }
  .article-content .table {
  border-collapse: collapse;
  }
  .article-content .table {
  width: 100%;
  border-bottom: 1px solid #ededed;
  font-size: 1.3rem;
  line-height: 2;
  margin: 0 0 24px;
  margin: 0 0 1.8rem;
  }
  .article-content th,
  .article-content td {
  padding: .6rem;
  vertical-align: middle;
  border: 1px solid #ddd;
  }
  .article-content figure {
  max-width: 100%;
  }
  .article-tag {
  text-align: right;
  }
  .article-tag ul {
  font-size: 0;
  margin-bottom: 0;
  }
  .article-tag ul li {
  font-size: .9rem;
  display: inline-block;
  margin-right: .5rem;
  vertical-align: middle;
  }
  .article-tag ul li:last-child {
  margin-right: 0;
  }
  .article-tag ul li a {
  padding: .2rem .5rem;
  text-decoration: none;
  color: #000;
  border: 1px solid #000;
  }
  .article-tag ul li a:hover {
  opacity: .6;
  }
  .nav-previous {float: left;}
  .nav-next {float: right;}
  .article-content p.case_postcat {
  margin-bottom: 0;
  padding: 0 1em;
  display: inline-block;
  font-size: 1.3rem;
  color: #116fa1;
  font-weight: bold;
  border-radius: 5px;
  background-color: #d8f3ff;
  }
  
  /* 投稿ページヘッド */
  .single_head {
  margin-top: 2rem;
  position: relative;
  }
  .single_head ul.post-categories {
  max-width: 600px;
  margin: 0;
  list-style: none;
  text-align: left;
  }
  .single_head ul.post-categories li {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 5px;
  }
  .single_head ul.post-categories a {
  margin-bottom: 0;
  padding: .2em 1.5em;
  display: inline-block;
  font-size: 1.3rem;
  color: #fff;
  font-weight: bold;
  border-radius: 100vh;
  background-color: #9bc936;
  text-decoration: none;
  }
  .category-homeschooling .single_head ul.post-categories a {
  background-color: #36b0d6;
  }
  .category-news .single_head ul.post-categories a {background-color: #3dafd6;}
  .category-pressrelease .single_head ul.post-categories a {background-color: #e8887e;}
  .category-koguma_column .single_head ul.post-categories a,
  .category-thinking-ability .single_head ul.post-categories a,
  .category-yoji-education .single_head ul.post-categories a,
  .category-homeschooling .single_head ul.post-categories a,
  .category-parenting .single_head ul.post-categories a,
  .category-kunomethod .single_head ul.post-categories a,
  .category-studyhabit .single_head ul.post-categories a{
  background-color: #f7ca11;
  }
  .single_head .single-time {
  position: absolute;
  right: 0;
  top: 0;
  }
  /* sp */ @media only screen and (max-width: 767px){
  .article-content p,
  .article-content b,
  .article-content table,
  .article-content ul,
  .article-content ol {
  font-size: 1.5rem;
  }
  .article-content .article-info .article-date,
  .article-content .article-info .article-author {
  font-size: 1.2rem;
  }
  .single_head .single-time {
  margin-top: 5px;
  position: relative;
  right: unset;
  top: unset;
  }
}



/*---------------------------------------------------------
sub-TOPページ
---------------------------------------------------------*/
.home-top .article-top .img-wrap img {
  width: 600px;
  height: 400px;
}
.home-top .article-top .text {
  margin-left: 630px;
}
.home-top .article-top .new-post {
  font-weight: bold;
  display: block;
  margin-bottom: .5rem;
  color: #f00;
}
.home-top .article-top .text h2 {
  font-size: 1.6rem;
  margin-bottom: 1rem;
}
.home-top .article-top .text .article-date,
.home-top .article-top .text .cat-data {
  margin-bottom: 1rem;
}

@media(max-width: 1024px) {
  .home-top .article-top .img-wrap img {
    width: 420px;
    height: 280px;
  }
  .home-top .article-top .text {
    margin-left: 440px;
  }
}

@media(max-width: 800px) {
  .contents,
  .contents_full,
  #sidebar.sidebar {
  float: none;
  width: 100%;
  margin-right: 0;
  }
  .contents {
  margin-bottom: 1.5rem;
  }
}

@media(max-width: 600px) {
  html {
    font-size: .65rem;
  }
  .contents {
    margin-bottom: 1rem;
  }

  /*---------------------------------------------------------
  記事一覧
  ---------------------------------------------------------*/
  .archive-top h1 {
    max-width: 90%;
    line-height: 1.4;
    font-size: 2.4rem;
  }
  .archive-top p {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .article-list {
  margin-bottom: 1em;
  padding: 0;
  }
  .article-list .img-wrap img {
    width: 132px;
    height: 88px;
    border-radius: 8px;
  }
  .article-list .img-wrap .cat-data {
    padding: .4em .5em;
    font-size: 1rem;
    border-radius: 8px 0 12px 0;
  }
  .article-list .text {
    margin-left: 140px;
    padding: 0;
  }
  .article-list .text h2 {
    font-size: 1.4rem;
    margin-bottom: 0;
    padding: 0;
  }
  .article-list .text p {
    display: none;
  }
  .article-list .article-date,
  .article-list .article-author {
    font-size: 1rem;
    margin-bottom: 0;
  }
  .article-list .article-date {
    margin-right: .2rem;
  }

  /*---------------------------------------------------------
  投稿・固定ページ
  ---------------------------------------------------------*/
  .article-content h1 {
    font-size: 2.0rem;
  }
  .article-content h2 {
    margin: 0 0 2rem;
    font-size: 2.0rem;
    line-height: 1.5;
  }
  .article-content h3 {
    font-size: 1.8rem;
  }
  .article-content h4 {
    font-size: 1.8rem;
  }
}


/*---------------------------------------------------------
こぐまコラム・記事一覧
---------------------------------------------------------*/
.koguma-column_wrap .page-title .page-title-post {
margin-left: auto;
margin-right: auto;
padding: 2rem 4rem;
font-size: 3.6rem;
font-weight: bold;
line-height: 1;
letter-spacing: 0.2em;
}
.koguma_column .contents {
width: 100%;
padding: 3em 0 2em;
}
.koguma_column .contents .column_archive_list {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: flex-start;
}
.koguma_column .column_archive_list > article:nth-child(3n) {
margin-right: 0;
}
.koguma_column .article-list {
width: 32%;
margin-right: 2%;
margin-bottom: 2em;
padding: 0 .5em;
}
.koguma_column .article-list a {
height: 100%;
padding-bottom: 1.2em;
display: flex;
flex-direction: column;
}
.koguma_column .article-list .img-wrap {
float: unset;
}
.koguma_column .article-list .img-wrap img {
width: 100%;
height: auto;
border-radius: 15px 15px 0 0;
}
.koguma_column .article-list .text {
margin-left: 0;
padding: 1em 1em 0;
}
.koguma_column .article-list .text .article-date {
display: inline-block;
}
.koguma_column .article-list .text .text-cont {
line-height: 1.6;
margin: .5em 0;
font-size: 1.5rem;
overflow: hidden;
}
.koguma_column .article-list .article-datebox {
margin-top: auto;
padding: .5em 1em;
}
.koguma_column .article-list .column-more {
text-align: center;
}
.koguma_column .article-list .column-more p {
padding: 4px 3em;
font-size: 1.4rem;
text-align: center;
color: #fff;
background-color: #F6AC19;
border-radius: 100px;
display: inline-block;
}
/* 著作情報 */
.koguma-column_wrap .column_profbox {
margin-top: 3em;
padding: 30px 30px 20px;
background-color: #f2f7f9;
border-radius: 20px;
}
.koguma-column_wrap .column_profimg img {
border-radius: 15px;
}
.koguma-column_wrap .prof_author_title {
padding-bottom: 3px;
border-bottom: 2px dotted #3dafd6;
}
.koguma-column_wrap .prof_author_title01 {
width: 9em;
margin-bottom: 8px;
padding: 0 .8em;
font-size: 1.4rem;
font-weight: bold;
text-align: center;
color: #fff;
border-radius: 100vh;
background-color: #3dafd6;
display: block;
}
.koguma-column_wrap .prof_author_text {
margin-bottom: 0;
font-size: 1.4rem;
}
/* PC */ @media(min-width: 768px) {
  .koguma-column_wrap .column_profbox.flexPc .column_profimg {
  width: 180px;
  margin-bottom: 0;
  }
  .koguma-column_wrap .column_profbox.flexPc .prof_author {
  width: 390px;
  }
}
/* SP */ @media only screen and (max-width: 767px){
  .koguma-column_wrap .page-title .page-title-post {
  width: 90%;
  font-size: 2.4rem;
  line-height: 1.4;
  padding: 2rem 1.5rem;
  }
  .koguma_column .contents {
  margin-bottom: 0;
  padding: 50px 0 40px;
  background-color: unset;
  }
  .koguma_column .container {
  padding: 0;
  }
  .koguma_column .article-list {
  width: 100%;
  margin-right: auto;
  }
  .koguma_column .column_archive_list > article:nth-child(3n) {
  margin-right: auto;
  }
  .columnbox .article-list .img-wrap {
  float: unset;
  }
  .koguma_column .article-list .img-wrap .cat-data {
  font-size: 1.3rem;
  padding: .6em 1em;
  border-radius: 15px 0 15px 0;
  }
  .koguma-column_wrap .column_profbox {
  margin: 1.5em 0 0;
  padding: 1.5em 8%;
  }
  .koguma-column_wrap .column_profbox.flexPc .column_profimg {
  width: 70%;
  margin: 0 auto;
  }
  .koguma-column_wrap .column_profimg img {
  border-radius: 100vh;
  }
}


/* google recaptcha non */
.grecaptcha-badge { visibility: hidden; }



  
/*---------------------------------------------------------
固定ページ共通スタイル
---------------------------------------------------------*/
.page-title {
color: #116fa1;
padding: 60px 0;
text-align: center;
background-image: url(/uploads/images/pagetitle-bg.png);
background-size: 100% auto;
background-position: center;
background-repeat: no-repeat;
}
.page-title h1 {
margin-left: auto;
margin-right: auto;
padding: 2rem 4rem;
font-size: 3.6rem;
line-height: 1;
letter-spacing: 0.2em;
}
.page-title .cat-data {
margin-left: auto;
margin-right: auto;
padding: 2rem 4rem;
font-size: 3.5rem;
line-height: 1;
font-weight: bold;
/* background-color: rgba(255, 255, 255, 0.5); */
border-radius: 10px;
display: inline-block;
}
.page-title .cat-data a {
/* color: #0e3469; */
text-decoration: none;
pointer-events: none;
letter-spacing: 0.2em;
}

/* sp */ @media only screen and (max-width: 767px){
  .page-title {
  padding: 2em 0;
  background-image: url(/uploads/images/pagetitle-bg_sp.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  }
  .page-title h1 {
  width: 90%;
  font-size: 2.4rem;
  line-height: 1.4;
  padding: 2rem 1.5rem;
  }
  .page-title .cat-data {
  width: 90%;
  font-size: 2.4rem;
  }
}

/*PC*/ @media only screen and (min-width: 768px){
  .page-title h1 span.sub_title_txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  }
}

/*sp*/ @media only screen and (max-width: 767px){
  .page-title h1 span.sub_title_txt {
  padding: 3em 5%;
  display: block;
  font-size: 1.7rem;
  }
}

/* --------------dekibis_contentデザインテンプレート ------------------*/
#dekibis_content .cont_title {
padding: 0 20px;
margin: 0;
border-left: 5px solid #69b5f0;
}
#dekibis_content .cont_title02 {
}
.contents_full .bg_wh {
padding-bottom: 4rem;
}
.main_title {
margin: 0 0 2rem;
position: relative;
padding: 1rem 2rem 2rem 1rem;
font-size: 2.4rem;
line-height: 1.6;
}
.main_title:after {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 6px;
content: '';
border-radius: 3px;
background-image: -webkit-gradient(linear, right top, left top, from(#d8f3ff), to(#009efd));
background-image: -webkit-linear-gradient(right, #d8f3ff 0%, #009efd 100%);
background-image: linear-gradient(to left, #d8f3ff 0%, #009efd 100%);
}

/*sp*/ @media only screen and (max-width: 767px){
  .contents_full .bg_wh {
  padding-bottom: 2rem;
  }
}



/*---------------------------------------------------------
Index(front-page)-CSS トップページ
---------------------------------------------------------*/

/* スライダーの初期表示を修正 */
.slider {
opacity: 0;
transition: opacity .25s ease;
}
.slider.slick-initialized {
opacity: 1;
}
/* スライダーの初期表示を修正 */

/* ---------- トップ：スライダー ---------- */
.slide_wrap {
padding-bottom: 5px;
}
/* .slide_wrap::after {
content: " ";
width: 100%;
height: 55px;
display: block;
position: absolute;
bottom: 0;
left: 0;
} */
.top_slider {
width: 100%;
margin: 0 auto;
display: block;
position: relative
}
.top_slider .slick-list {
max-width: 1100px;
width: 100%;
height: auto;
margin: 0 auto;
}
.top_slider .slick-slide {
float: left;
height: auto;
min-height: 1px;
margin: 0;
opacity: .6;
}
.top_slider .slick-list .slick-current {
opacity: 1;
}
.top_slider .slick-slide .slide-box {
width: 1100px;
}
.top_slider .slick-slide .slide-box img {
width: 100%;
}
.top_slider .slick-dots {
margin-top: 20px;
position: relative;
z-index: 99;
}
.top_slider .slick-dots li button::before {
color: #323232;
}
.top_slider .slick-dots li.slick-active button::before {
color: #323232;
}

@media print, screen and (min-width: 768px){
  .top_slider .slide_inlink {
  width: 100%;
  height: 100%;
  display: block;
  }
  .top_slider .slide_inlink:hover {
  opacity: 0.8;
  transition: .3s;
  }
  .slider01_txt01 {
  margin: 180px 0 0 620px;
  font-size: 4rem;
  }
  .slider01_txt02 {
  margin: 25px 0 0 620px;
  font-size: 4rem;
  line-height: 2.2;
  }
  .top_slider li img {
  width: 100%;
  }
  li.top_slider01 {
  position: relative;
  }
}

/* sp */ @media only screen and (max-width: 767px){
  .top_slider {
  width: 100%;
  padding: 0;
  }
  .top_slider .slick-slider {
  width: 100%;
  height: auto;
  margin: 0 auto;
  }
  .top_slider .slick-list {
  max-width: 100%;
  }
  .top_slider .slick-slide .slide-box {
  width: 100%;
  }
  .top_slider .slider-box {
  position: relative;
  }
  .top_slider .sliderbgSp{
  background-repeat: no-repeat !important;
  background-size: 100% auto!important;
  height: auto;
  margin: 0;
  padding: 0;
  width: 100%;
  display: block;
  border-radius: 10px;
  position: relative;
  }
  .slider01_txt01 {
  margin: 0;
  font-size: 2.4rem;
  position: absolute;
  bottom: 0;
  left: 0;
  }
  .slider01_txt02 {
  width: 90%;
  margin: 10px auto 30px;
  text-align: center;
  font-size: 2.2rem;
  }
  li.top_slider01 {
  position: relative;
  }
}

/*---------------------------------------------------------
共通スタイル
---------------------------------------------------------*/

/* タイトル */
.sec_ttl {
  font-size: 5rem;
  font-weight: 700;
  text-align: center;
  line-height: 1em;
  letter-spacing: 0.08em;
}

/* 英語＋日本語のタイトル */
.sec_ttl_ej {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
}
.sec_ttl_ej h2{
  color: #116fa1;
  font-size: 2.8rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding-left: 5px;
}
.sec_ttl_ej span{
  font-size: 1.4rem;
  font-weight: 650;
  padding-left: 15px;
  letter-spacing: 0.15em;
}
/* ボタン */
.btn_orange {
  display: inline-block;
  text-decoration: none;
  font-size: 1.6rem;
  width: 280px;
  height: 45px;
  line-height: 45px;
  color: #fff;
  background-color: #ED6C00;
  border-radius: 30px;
  text-align: center;
}
/* ボタン用 白矢印 */
.arrow_r {
  position: relative;
  display: inline-block;
  padding-right: 10px;
  color: #ffffff;
}
.arrow_r:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #ffffff;
  border-left: solid 2px #ffffff;
  transform: rotate(135deg);
  position: absolute;
  top: 0;
  right: 30px;
  bottom: 0;
  margin: auto;
}
/* 青いマーカーに白い文字 */
.txt_blue_bg{
  /* display: inline-block;
  font-size: 2.2rem;
  line-height: 1.1em;
  color: #fff;
  background-color: #3dafd6;
  padding: 9px 15px;
  margin-top: 10px;
  letter-spacing: 0.14em; */

  display: inline-block;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.1em;
  color: #fff;
  background-color: #3dafd6;
  padding: 8px 15px 7px;
  margin-top: 9px;
  margin-right: 5px;
  letter-spacing: 0.14em;
}
.txt_blue_bg.ml5{
  margin-left: 5px;
}
/* 白いマーカーに青い文字 */
.txt_white_bg{
  display: inline-block;
  line-height: 1.1em;
  color: #116fa1;
  background-color: #fff;
  padding: 5px;
  margin-top: 5px;
}
/* 文字の上に点 */
.dots{
  background: top left / 1em 0.5em repeat-x radial-gradient(circle, #ED6C00 .08em, rgba(0,0,0,0) .06em);
  padding-top: 0.7em;
}
/* 黄色の点線 */
.dotted_line_y{
  background-image: repeating-linear-gradient(90deg, #f9da3e, #f9da3e 6px, transparent 6px, transparent 11px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 3px;
  padding-bottom: 2px;
}
/* 黄色の矢印 */
.arrow_y{
  position: relative;
  margin-left: 35px;
}
.arrow_y::after{
  content: url(/uploads/images/arrow_y.png);
  position: absolute;
  top: 0px;
  left: -35px;
}
/* 水色の四角 */
.shikaku_b{
  position: relative;
  padding-left: 0;
  display: inline-block;
  z-index: 1;
}
.shikaku_b::after{
  content: url(/uploads/images/shikaku_b.png);
  position: absolute;
  top: -25px;
  left: -35px;
  z-index: -1;
}
/* 黄色の四角 */
.shikaku_y{
  position: relative;
  padding-left: 0;
  display: inline-block;
  z-index: 1;
}
.shikaku_y::after{
  content: url(/uploads/images/shikaku_y.png);
  position: absolute;
  top: -25px;
  left: -35px;
  z-index: -1;
}

/* 3つのアーチの飾り */
.three-color_arch{
  position: relative;
}
.three-color_arch::before {
  content: url(/uploads/images/three-color_arch.png);
  position: absolute;
  top: -42px;
  left: 50%;
  transform: translateX(-50%);
}

/* ドット背景 */
.dot_bg{
  background-color: #ffffff;
  background-image: radial-gradient(circle, #fff195 1.5px, transparent 1.5px), radial-gradient(circle, #fff195 1.5px, transparent 1.5px);
  background-position: -1px 15px, 17px 24px;
  background-size: 36px 18px;
}
/* ストライプ背景 */
.stripe_bg{
  background-image: repeating-linear-gradient(45deg, #fff6d1, #fff6d1 2px, transparent 2px, transparent 7px);
}

/* sp */ @media only screen and (max-width: 767px){
  .sec_ttl {
    font-size: 3.8rem;
  }
  .sec_ttl_ej h2{
    font-size: 2.4rem;
  }
  .txt_blue_bg{
    font-size: 1.5rem;
    padding: 9px 9px;
  }
  .txt_blue_bg.ml5{
    margin-left: 1em;
    margin-top: 5px;
  }
}


/*---------------------------------------------------------
トップ：sec01
---------------------------------------------------------*/
.sec01 {
padding-bottom: 90px;
}
.top_info {
padding: 30px 40px 35px;
background-color: #f2f7f9;
border-radius: 15px;
position: relative;
}
.info_box {
padding: 0;
}
.top_info table {
width: 100%;
}
.news-list th, .news-list td {
padding: 0 15px 10px 0;
}
.news-list th {
width: 7em;
}
.news-list th p {
font-weight: normal;
}
.news-list .news_cat {
width: 8em;
}
.news-list .news_cat p {
width: 130px;
height: 22px;
line-height: 22px;
padding: 0 1em;
font-size: 1.3rem;
text-align: center;
border-radius: 50px;
color: #fff;
letter-spacing: 0.22em;
}
.news-list .news_cat p.experiencescat {
font-size: 1.2rem;
}
.news-list .news_cat p.pastpapercat {
font-size: 1.2rem;
}
.news-list .news_title a {
font-size: 1.5rem;
font-weight: 500;
color: #323232;
text-decoration: none;
}
.news-list time{
  font-weight: 500;
}
/* 各カテゴリーのカラーを変更する */
.news-list .news_cat p{
  background-color: #9bc936;
}
.news-list .news_cat p.newscat{
  background-color: #3dafd6;
}
.news-list .news_cat p.pressreleasecat{
  background-color: #e8887e;
}
.news-list .news_cat p.koguma_columncat{
  background-color: #f7ca11;
}
.news-list .news_cat p.studyhabitcat {
  background-color: #f7ca11;
}
.news-list .news_cat p.homeschoolingcat {
  background-color: #f7ca11;
}
.news-list .news_cat p.thinking-abilitycat {
  background-color: #f7ca11;
}
.news-list .news_cat p.yoji-educationcat {
  background-color: #f7ca11;
}
.news-list .news_cat p.parentingcat {
  background-color: #f7ca11;
}
.news-list .news_cat p.kunomethodcat {
  background-color: #f7ca11;
}
.top_infobtn a {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #fff;
  width: 190px;
  height: 35px;
  line-height: 35px;
  letter-spacing: 0.2em;
  border-radius: 15px 0 15px 0;
}


/* sp */ @media only screen and (max-width: 767px){
  .sec01 {
  padding-bottom: 30px;
  }
  .top_info {
  /* margin-top: 10px; */
  padding: 0 0 1em;
  }
  .info_box {
  width: 100%;
  padding: 2rem 5%;
  }
  .top_info .top_infotitle{
  width: 30%;
  padding-left: 5%;
  }
  .top_info table {
  margin: 0 auto;
  }
  .news-list th, .news-list td {
  padding: 1rem 1rem;
  display: block;
  }
  .news-list th {
  width: 7em;
  padding-right: 0;
  border-bottom: 0;
  display: inline-block;
  }
  .news-list .news_cat {
  width: auto;
  padding-left: 0;
  display: inline-block;
  border-bottom: 0;
  }
  .news-list .news_cat p{
    width: 125px;
    font-size: 1.2rem;
  }
  .news-list .news_title {
  width: 100%;
  padding-top: 0;
  }
  .top_infobtn {
  width: 100%;
  }
  
}


/*---------------------------------------------------------
トップ：sec02　
---------------------------------------------------------*/
.sec02{
  background-image: url(/uploads/images/bg_paper.png);
  /* background-size: cover; */
  padding-top: 60px;
  padding-bottom: 50px;
}
.sec02 .wrapper{
  max-width: 1000px;
}
.top_about{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.top_about_ttl{
  /* width: 40%; */
  width: 38%;
}
.top_about_txt{
  /* width: 57%;
  font-size: 1.9rem;
  font-weight: 600;
  line-height: 1.7em;
  letter-spacing: 0.13em; */
  width: 60%;
  font-size: 1.9rem;
  font-weight: 600;
  line-height: 1.7em;
  letter-spacing: 0.13em;
}

/* sp */ @media only screen and (max-width: 767px){
  .sec02{
    padding-top: 10px;
    padding-bottom: 50px;
    margin-top: 40px;
  }
  .top_about{
    margin-top: 30px;
    flex-wrap: wrap;
    flex-direction: column;
  }
  .top_about_ttl{
    width: 80%;
  }
  .top_about_txt{
    width: 100%;
    font-size: 1.6rem;
    text-align: center;
    line-height: 1.8em;
    margin-top: 10px;
  }
}


/*---------------------------------------------------------
トップ：sec03
---------------------------------------------------------*/
.shikumi{
  background-color: #F9F7EF;
  padding-top: 60px;
  padding-bottom: 60px;
}
.shikumi .sec_ttl .orange{
  position: relative;
  z-index: 10;
}
.shikumi .sec_ttl .orange::before{
  content: url(/uploads/images/exclamation.png);
  position: absolute;
  bottom: -5px;
  left: -27px;
  z-index: -1;
}
.shikumi .shikumi_txt{
  font-weight: 600;
}
.shikumi_box{
  background-color: #fff;
  border-radius: 30px;
  padding: 60px 70px 50px 70px;
}
.teikei{
  border: 5px solid #a8d3e2;
  background-color: #fff;
  border-radius: 30px;
  text-align: center;
  padding: 45px 90px 40px;
  /* box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.2); */
}
.teikei p:last-child{
  text-align: justify;
}
.teikei img{
  display: inline-block;
}
/* sp */ @media only screen and (max-width: 767px){
  .shikumi{
    padding-top: 50px;
    padding-bottom: 30px;
  }
  .shikumi .sec_ttl .blue::before{
    left: -23px;
  }
  .shikumi_box{
    background-color: #fff;
    border-radius: 30px;
    padding: 40px 5%;
  }
  .shikumi_box_ttl{
    font-weight: 700;
  }
  .shikumi_box_ttl span{
    position: relative;
    display: inline-block;
  }
  .shikumi_box_ttl01 span::before{
    content: url(/uploads/images/img_shiku01.png);
    position: absolute;
    bottom: 0;
    left: -35px;
  }
  .shikumi_box_ttl01 span::after{
    content: url(/uploads/images/img_shiku01.png);
    position: absolute;
    bottom: 0;
    right: -30px;
  }
  .shikumi_box_ttl02 span::before{
    content: url(/uploads/images/img_shiku02.png);
    position: absolute;
    bottom: 0;
    left: -35px;
  }
  .shikumi_box_ttl02 span::after{
    content: url(/uploads/images/img_shiku02.png);
    position: absolute;
    bottom: 0;
    right: -30px;
  }
  .shikumi_box_ttl03 span::before{
    content: url(/uploads/images/img_shiku03.png);
    position: absolute;
    bottom: 0;
    left: -35px;
  }
  .shikumi_box_ttl03 span::after{
    content: url(/uploads/images/img_shiku03.png);
    position: absolute;
    bottom: 0;
    right: -30px;
  }
  .teikei{
    padding: 40px 20px 30px;
  }
  .teikei p{
    text-align:justify;
  }
  .img_teikei img{
    width: 90%;
    display: block;
    margin: 0 auto;
    padding-bottom: 5px;
  }
}


/*---------------------------------------------------------
トップ：sec04
---------------------------------------------------------*/
/* pc */ @media only screen and (min-width: 768px){
  .sec04{
    background-color: #F0F6F7;
    padding-top: 60px;
    padding-bottom: 60px;
    background-image: url(/uploads/images/bg_deco_blueL.png), url(/uploads/images/bg_deco_blueR.png);
    background-repeat: no-repeat;
    background-position: top left, top right;
    background-size:auto 100%;
  }
}
.sec04 .sec_ttl{
  font-size: 3.6rem;
  letter-spacing: 0.1em;
}
.recommend_box{
  background-color: #fff;
  border-radius: 15px;
  padding-top: 40px;
  padding-bottom: 40px;
  padding-left: 110px;
  position: relative;
}
.reco01{
  position: absolute;
  top: -90px;
  left: 10px;
}
.reco02{
  position: absolute;
  top: 10px;
  left: -180px;
}
.reco03{
  position: absolute;
  top: 165px;
  left: -110px;
}
.reco04{
  position: absolute;
  bottom: 0px;
  left: -140px;
}
.reco05{
  position: absolute;
  top: -80px;
  right: 30px;
}
.reco06{
  position: absolute;
  top: -10px;
  right: -150px;
}
.reco07{
  position: absolute;
  top: 140px;
  right: -120px;
}
.reco08{
  position: absolute;
  bottom: 10px;
  right: -140px;
}
.recommend_box li{
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 20px;
  position: relative;
  display: flex;
  align-items: center;
  letter-spacing: 0.13em;
}
/* .recommend_box li span{
  background-image: repeating-linear-gradient(90deg, #f9da3e, #f9da3e 6px, transparent 6px, transparent 11px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 3px;
} */
.recommend_box li::before{
  content: '';
  background-image: url(/uploads/images/check.png);
  display: inline-block;
  width: 29px;
  height: 29px;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 20px;
}
/* sp */ @media only screen and (max-width: 767px){
  .sec04{
    background-color: #F0F6F7;
    padding-top: 50px;
    padding-bottom: 50px;
    background-image: url(/uploads/images/bg_deco_blueL_sp.png), url(/uploads/images/bg_deco_blueR_sp.png);
    background-repeat: no-repeat;
    background-position: top left -20px, top right -20px;
    background-size: 29vw auto, 35vw auto;
  }
  .sec04 .sec_ttl{
    font-size: 2.6rem;
    line-height: 1.4em;
  }
  .recommend_box{
    padding: 30px 20px;
  }
  .recommend_box li{
    font-size: 1.5rem;
    line-height: 1.4em;
  }
  .recommend_box li span{
    width: 100%;
    padding-bottom: 8px;
  }
}


/*---------------------------------------------------------
トップ：sec05
---------------------------------------------------------*/
.sec05{
  background-color: #f9f7ef;
  padding-top: 50px;
  padding-bottom: 50px;
}
details {
  background-color: #fff;
  border-radius: 15px;
  padding: 25px 25px 25px 30px;
}
details summary {
  cursor: pointer;
  list-style-type: none;
  transition: ease .2s;
  position: relative;
}
/* Safari特有のデフォルトマーカーを非表示にする */
details summary::-webkit-details-marker { 
  display: none;
}
details[open] > summary {
  margin-bottom: 1em;
}
details + details {
  margin-top:1em;
}
.faq_q{
  font-size: 2.2rem;
  font-weight: 600;
  padding-right: 15px;
  color: #116fa1;
}
.faq_a{
  font-size: 2.2rem;
  font-weight: 600;
  padding-right: 15px;
  color: #ED6C00;
}

summary .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 24%;
  right: 1%;
  width: 60px;
  height: 60px;
  /* border: 1px solid #fff; */
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
}
summary .i_box .one_i {
  display: block;
  width: 24px;
  height: 24px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
  background-color: #116fa1;
  border-radius: 50%;
}
summary .i_box .one_i:before, summary .i_box .one_i:after {
  display: flex;
  content: '';
  background-color: #fff;
  border-radius: 10px;
  width: 16px;
  height: 3px;
  position: absolute;
  top: 10px;
  left: 4px;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
}
summary .i_box .one_i:before {
    width: 3px;
    height: 16px;
    top: 4px;
    left: 10px;
}
details[open] summary .i_box {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
details[open] summary .i_box .one_i:before{
  display: none;
}

/* sp */ @media only screen and (max-width: 767px){
  .sec05{
    padding-top: 40px;
  }
  details{
    padding: 20px 50px 20px 25px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  summary .i_box{
    top: 16%;
    right: -20%;
  }
}

.instagram_top{
  background-color: #f9f7ef;
  padding: 100px 0 50px !important;
}
.instagram_top .sec_ttl{
  font-size: 3.4rem;
  letter-spacing: 0.12em;
  display: inline-block;
  position: relative;
}


/*---------------------------------------------------------
体験レッスン 共通ボタン
---------------------------------------------------------*/
.lesson_box{
  background-image:url(/uploads/images/bg_lesson_btn.png);
  background-size:cover;
  padding-top: 60px;
  padding-bottom: 50px;
}
.lesson_box_txt{
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}
.lesson_box_txt .naname{
  position: relative;
  display: inline-block;
}
.lesson_box_txt .naname::before{
  content: url(/uploads/images/naname.png);
  position: absolute;
  bottom: -7px;
  left: -40px;
}
.lesson_box_txt .naname::after{
  content: url(/uploads/images/naname.png);
  position: absolute;
  bottom: -7px;
  right: -40px;
  transform: scaleX(-1);
}

.lesson_box_btn a{
  display: inline-block;
  font-size: 3.2rem;
  font-weight: 600;
  width: 80%;
  height: 90px;
  line-height: 90px;
  color: #fff;
  background-color: #ED6C00;
  border-radius: 15px;
  text-align: center;
  letter-spacing: 0.2em;
}

/* sp */ @media only screen and (max-width: 767px){
  .lesson_box{
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .lesson_box_btn a{
    font-size: 2.4rem;
    width: 100%;
  }
  .lesson_box_txt{
    font-size: 1.6rem;
  }
  .lesson_box_txt .naname::before{
    left: -22px;
  }
  .lesson_box_txt .naname::after{
    right: -22px;
  }
}


/*---------------------------------------------------------
トップ：sec06
---------------------------------------------------------*/
.sec06{
  /* background-color: #F9F7EF; */
  padding: 100px 0 50px;
}
.sec06 .sec_ttl{
  font-size: 3.6rem;
  letter-spacing: 0.12em;
  display: inline-block;
  position: relative;
}
.sec06 .three-color_arch::before{
  top: -45px;
}
/* タイトル横の装飾 */
/* .sec06 .sec_ttl::before{
  content: url(/uploads/images/img_col01.png);
  position: absolute;
  bottom: -15px;
  left: -220px;
}
.sec06 .sec_ttl::after{
  content: url(/uploads/images/img_col02.png);
  position: absolute;
  bottom: -20px;
  right: -220px;
} */

.sec06 .column_archive_list{
  justify-content: space-between;
}
.sec06 .columnbox .article-list{
  width: 32%;
  column-gap: 20px;
}
.sec06 .columnbox .article-list a{
  padding-bottom: 20px;
  background-color: #fff;
  border-radius: 15px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.sec06 .columnbox .article-list .img-wrap{
  position: relative;
}
.sec06 .columnbox .article-list .img-wrap::after {
  content: "教育コラム";
  padding: 10px 25px;
  font-size: 1.2rem;
  color: #fff;
  background-color: #3dafd6;
  border-radius: 15px 0 15px 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.sec06 .columnbox .article-list .img-wrap img{
  border-radius: 15px 15px 0 0;
  width: 100%;
  height: auto;
  object-fit: cover;
  aspect-ratio: 3 / 2;
}
.sec06 .columnbox .news_title {
  display: inline-block;
  margin: 1em 0;
  padding: 0 20px;
  font-size: 1.5rem;
}
.sec06 .column-more {
  /* display: none; */
  margin-top: auto;
  text-align: center;
}
.sec06 .column-more p {
  padding: 4px 3em;
  font-size: 1.4rem;
  text-align: center;
  color: #fff;
  background-color: #F6AC19;
  border-radius: 100px;
  display: inline-block;
}

/* sp */ @media only screen and (max-width: 767px){
  .sec06{
    padding: 80px 0 40px;
  }
  .sec06 .container{
    padding: 0;
  }
  .sec06 .sec_ttl{
    font-size: 3.6rem;
  }
  .sec06 .columnbox .article-list{
    width: 100%;
    padding: 0;
    margin-bottom: 3rem;
  }
  .sec06 .columnbox .article-list:last-child{
    margin-bottom: 0;
  }
}

/*---------------------------------------------------------
よくあるご質問ページ
---------------------------------------------------------*/
.faq_box{
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: #f9f7ef;
}
.faq details{
  background-color: #fff;
}



/*---------------------------------------------------------
左右コンテンツ用テンプレート
---------------------------------------------------------*/
.textonimg_right{
margin: -5px 20px -30px 5px;
position: relative;
display: inline-block;
}
.textonimg_right > a{
font-size: 200%;
display: block;
font-weight: bold;
padding: 0.25em 1em;
text-decoration: none;
color: #fff;
background: #34AAB4;
border-radius: 8px;
border-bottom: 5px solid #066;
}
.textonimg_right2{
margin: -10px 10px 0 -20px;
position: relative;
display: inline-block;
}
.textonimg_right2 > a {
font-size: 200%;
display: block;
font-weight: bold;
padding: 0.25em 1em;
text-decoration: none;
color: #fff;
background: #34AAB4;
border-radius: 8px;
border-bottom: 5px solid #066;
}
.textonimg_right3{
margin: 15px 20px 0 0;
position: relative;
display: inline-block;
}
.textonimg_right3 > a {
font-size: 200%;
display: block;
font-weight: bold;
padding: 0.25em 1em;
text-decoration: none;
color: #fff;
background: #34AAB4;
border-radius: 8px;
border-bottom: 5px solid #066;
}
.textonimg_right3 > a {
color:#fff;
text-decoration: none;
}

/* sp */ @media only screen and (max-width: 767px){
	#inquiry_form_area{
	width:95%;
	height:auto;
	margin-top: 0;
	padding:15px;
	}
	#form_inner{
	width:100%;
	padding:15px 5%;
	}
	#inquiry_ttl{
	margin:auto;
	width:100%;
	height:auto;
	}
	#contactus{
	width:100%;
	height:auto;
	margin:auto;
	padding-left:0;
	}
	.textonimg_right{
	margin: 15px auto;
	display: block;
	}
	.textonimg_right > a{
	width: 55%;
	margin: 0 auto;
	padding: 6px 0.25em;
	font-size: 2rem;
	text-align: center;
	display: block;
	}
	.textonimg_right2{
	margin: 15px auto;
	display: block;
	}
	.textonimg_right2 > a {
	width: 55%;
	margin: 0 auto;
	padding: 6px 0.25em;
	font-size: 2rem;
	text-align: center;
	display: block;
	}
	.textonimg_right3{
	margin: 15px auto;
	display: block;
	}
	.textonimg_right3 > a {
	width: 55%;
	margin: 0 auto;
	padding: 6px 0.25em;
	font-size: 2rem;
	text-align: center;
	display: block;
	}
	.textonimg_right3 > a {
	color:#fff;
	text-decoration: none;
	}
}



/* 固定ページ共通テンプレート */
.link_block {
width: 100%;
text-align: center;
justify-content: flex-start;
gap: 20px;
}
.link_block li {
display: inline-block;
}
.link_block li:last-child {
margin-right: 0;
}

.link_block li a {
min-width: 300px;
display: block;
font-weight: bold;
padding: .6em 1em;
border-radius: 30px;
text-decoration: none;
font-size: 15px;
color: #116fa1;
border: 2px solid #116fa1;
background-color: #f0f6f7;
}
/* .link_block li a {
min-width: 300px;
display: block;
font-weight: bold;
padding: .6em 1em 1.3em;
border-radius: 6px;
text-decoration: none;
font-size: 15px;
color: #fff;
border: 2px solid #0e3469;
background-color: #0e3469;
position: relative;
} */
/* .link_block li a::after {
content: "";
position: absolute;
width: 6px;
height: 6px;
border-bottom: 1px solid #fff;
border-right: 1px solid #fff;
transform: translateX(-50%) rotate(45deg);
left: 50%;
bottom: 12px;
transition: 0.3s;
} */
.link_block li a:hover {
color: #fff;
background-color: #116fa1;
border: 2px solid #116fa1;
opacity: 1;
}
/* .link_block li a:hover::after {
border-bottom: 1px solid #0e3469;
border-right: 1px solid #0e3469;
bottom: 8px;
} */


/* sp */ @media only screen and (max-width: 767px){
  .link_block {
  padding: 2em 5%;
  }
  .link_block li {
  width: 100%;
  margin: 0;
  }
  .link_block li.full_btn {
  width: 95%;
  margin: 0 auto 0.8em;
  }
  .link_block li a {
  min-width: auto;
  }
}
  


/*---------------------------------------------------------
コースの特長ページ
---------------------------------------------------------*/
.feat_top {
padding: 0.5em 0 6em;
background-image: url(/uploads/images/features/features_headbg.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.feat_title {
width: 63%;
margin: 3em 0 0;
padding: 2rem;
/*background-color: rgba(255, 255, 255, 0.8);
background: linear-gradient(-90deg, rgba(255,230,140,.5), rgba(220,170,90,.2));*/
border-radius: 6px;
}
.feat_title .feat_title_txt01 {
font-size: 3rem;
}
.feat_title .feat_title_txt02 {
width: 8em;
margin: 0 0 15px;
padding: 0;
font-size: 6rem;
line-height: 1.4;
text-align: center;
display: block;
}
.feat02 {
padding: 80px 0;
background: url(/uploads/images/features/feat02_bg.jpg) center / cover no-repeat;
}
.feat02_read {
padding: 50px;
background-image: url(/uploads/images/features/mes-whbg.jpg);
background-size: 150px auto;
background-position: left top;
background-repeat: repeat;
border-radius: 6px;
}
/* sp */ @media only screen and (max-width: 767px){
  .feat_top {
  padding: 0.5em 0 3em;
  background-image: url(/uploads/images/features/features_headbg_sp.jpg);
  background-size: cover;
  background-position: center;
  }
  .feat02 {
  padding: 2em 0;
  }
  .feat_title {
  width: 85%;
  margin: 12px 0 0;
  padding: 1.5rem;
  }
  .feat_title .feat_title_txt01 {
  font-size: 7vw;
  }
  .feat_title .feat_title_txt02 {
  font-size: 8vw;
  }
  .feat_title .feat_title_txt03 {
  font-size: 5.8vw;
  display: block;
  padding-right: 43%;
  }
  .feat02_read {
  padding: 23px 8%;
  }
}


.fea_method {
padding: 60px 0 20px;
/*background: url(/uploads/images/features/fea_method_bg.jpg) center / cover no-repeat;*/
background-color: #eef4fd;
}
.fea_method li.method_li {
margin-bottom: 80px;
padding-right: 520px;
position: relative;
}
.fea_method li.method_li:nth-child(even) {
padding-left: 500px;
padding-right: 0;
}
.fea_method li.method_li:nth-child(4) {
padding-left: 0;
padding-right: 0;
}
.fea_method li.method_li .feat_txt {
position: relative;
}
.fea_method .feat_txt .feat_no {
width: 100px;
position: absolute;
left: 15px;
top: 0;
}
.fea_method li.method_li .feat_txt h4 {
padding-left: 135px;
color: #0e3469;
}
.fea_method .feat_txt .feat_no img {
width: 100%;
}

.fea_method li.method_li .feat_img {
position: absolute;
right: 0;
top: 0;
}
.fea_method li.method_li:nth-child(even) .feat_img {
position: absolute;
left: 0;
right: auto;
top: 0;
}
.fea_method li.method_li .feat_img img {
border-radius: 10px;
}
.fea_method ul.alpha_point > li {
width: 48%;
}
.fea_method ul.alpha_point li h5 {
width: 100%;
line-height: 1.5;
padding: 5px 1em;
font-size: 2rem;
color: #fff;
text-align: center;
border-radius: 6px;
background-color: #e6aa6e;
}
.fea_method .alpha_point01 ul li  {
width: 48%;
margin-bottom: 20px;
}
.fea_method .alpha_point01 ul li img  {
border-radius: 5px;
}
/* sp */ @media only screen and (max-width: 767px){
  .fea_method li.method_li {
  margin-bottom: 80px;
  padding-right: 0;
  }
  .fea_method li.method_li:nth-child(even) {
  padding-left: 0;
  padding-right: 0;
  }
  .fea_method .feat_txt .feat_no {
  width: 88px;
  position: absolute;
  left: 15px;
  top: 0;
  }
  .fea_method li.method_li .feat_txt h4 {
  padding-left: 115px;
  }
  .fea_method .feat_txt .feat_no img {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
  }
  
  .fea_method li.method_li .feat_img {
  width: 100%;
  margin: 1.5em auto .5em;
  position: relative;
  right: auto;
  top: 0;
  }
  .fea_method li.method_li:nth-child(even) .feat_img {
  position: relative;
  }
  .fea_method ul.alpha_point > li {
  width: 100%;
  }
  .fea_method ul.alpha_point li h5 {
  width: 100%;
  line-height: 1.5;
  padding: 5px 1em;
  font-size: 2rem;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  background-color: #e6aa6e;
  }
  .fea_method .alpha_point01 ul li  {
  width: 48%;
  margin-bottom: 20px;
  }
}


.sec01 {
padding: 40px 0 70px;
position: relative;
}
.sec01_c02box {
width: 100%;
margin: 0;
padding-left:280px;
}
.sec01_img02 {
width: 330px;
height: auto;
position: absolute;
top: 0;
left: 0;
}
.sec01_img02 img {
border:6px solid #e6aa6e;
border-radius: 100%;
}
.prof-box {
width: 640px;
margin-left: auto;
padding-bottom: 2em;
}
.name_txt {
padding: 8px 0 2px 85px;
border-bottom: 6px double #e6aa6e;
position: relative;
}
.name_txt::before {
content: "講師";
padding: 15px;
font-size: 1.8rem;
font-weight: bold;
color: #fff;
background-color: #e6aa6e;
position: absolute;
left: 0;
top: 0;
}
.prof-masbox {
width: 640px;
margin-left: auto;
padding: 30px 30px 35px 30px;
background: #fff4e9;
border-radius: 15px;
position: relative;
z-index: 10;
}
.mass-title {
border-bottom: 4px dotted #e6aa6e;
}
/* sp */ @media only screen and (max-width: 767px){
  .sec01 {
    padding-top: 10px;
  padding-bottom: 0;
  }
  .sec01_c02box {
  padding-left:0;
  }
  .feat_list ul {
  padding: 0;
  }
  .feat_list li {
  padding-top: 0;
  }
  .feat_list li h4 {
  padding-left: 30%;
  }
  .feat_list li .feat_txt {
  width: 90%;
  margin-top: -2em;
  margin-left: 4%;
  padding: 1.5em 5%;
  }
  .feat_list li .feat_no {
  width: 30%;
  left: -3%;
  top: -1em;
  }
  .feat_list li .feat_img {
  width: 80%;
  margin: 0 0 0 auto;
  position: relative;
  right: auto;
  top: auto;
  }
  .feat_list li:nth-child(2) .feat_txt {
  margin-left: auto;
  }
  .feat_list li:nth-child(2) .feat_img {
  margin: 0 auto 0 0;
  left: auto;
  }
  .feat_kub {
  background-position: left -50px top, left -50px bottom;
  }
  .kub_box {
  padding: 2em 5%;
  }
  .kublogo {
  width: 30%;
  }
  .sec01_img02 {
  width: 65%;
  height: auto;
  margin: 1em auto;
  position: relative;
  top: auto;
  left: auto;
  display: block;
  }
  .sec01_c02box {
  width: 100%;
  }
  .prof-box {
  width: 100%;
  padding-bottom: 1.5em;
  }
  .prof-masbox {
  width: 100%;
  margin-left: auto;
  margin-bottom: 3em;
  padding: 25px 8%;
  }
  .sec01 .last-prof .prof-masbox {
  margin-bottom: 0;
  }
  .name_txt::before {
  padding: 12px 15px;
  }
}
  

/*---------------------------------------------------------
こぐまのおけいことはページ
---------------------------------------------------------*/
.about .sec02{
  padding-top: 70px;
  padding-bottom: 70px;
}
.about .top_about_ttl{
  width: 49%;
}
.about .top_about_txt{
  width: 47%;
}
.about .top_about_ttl img{
  width: 100%;
  border-radius: 15px;
  box-shadow: 0px 0px 20px 0px rgba(159, 181, 188, 0.4);
}
.about .txt_blue_bg{
  font-size: 2.2rem;
}

.mission_bg{
  max-width: 1400px;
  margin: 0 auto;
}
.mission_box {
  padding-top: 80px;
  padding-bottom: 80px;
  background-image: url(/uploads/images/bg_mission_student.png), url(/uploads/images/bg_mission_teacher.png);
  background-size: 50vw, 50vw;
  background-repeat: no-repeat;
  background-position: bottom right, top left;
}
.mission .sec_ttl_ej{
  flex-direction: column;
  align-items: center;
}
.mission .sec_ttl_ej h2 {
  font-size: 4rem;
  letter-spacing: 0.1em;
  padding-left: 0;
  line-height: 1;
}
.mission .sec_ttl_ej span {
  font-size: 1.8rem;
  padding-left: 0;
  letter-spacing: 0.12em;
}
.mission_txt{
  line-height: 2.4em;
}
.mission_logo {
  max-width: 650px;
  margin: 30px auto 0;
  padding: 30px 60px;
  border-radius: 100px;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
  background-color: #fff;
}
.kogumakai_box{
  display: flex;
  height: auto;
  font-size: 3rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.2em;
}
.kogumakai_box img{
  display: inline-block;
}
.kogumakai_01 {
  width: 50%;
  color: #fff;
  background-color: #003b83;
}
.kogumakai_01_box{
  max-width: 560px;
  margin: 80px 60px 80px auto;
}
.kogumakai_01_box a img{
  width: 300px;
}
.deco_method img{
  max-width: 350px;
}
/* .kogumakai_01 img{
  width: 310px;
} */
.kogumakai_detail{
  padding: 40px 50px;
  background-color: #fff;
  border-radius: 15px;
  line-height: 1.8;
  letter-spacing: 0.14em;
  text-align: justify;
}
.kogumakai_detail .koguma_blue{
  letter-spacing: 0.2em;
}

.kogumakai_02 {
  width: 50%;
  color: #fff;
  background-color: #3492db;
}
.kogumakai_02_box{
  max-width: 560px;
  margin: 80px auto 80px 60px;
}
.kogumakai_02 .kunoshi{
  width: 125px;
}

.kunoshi_profile{
  background-color: #f2f7f9;
  border-radius: 15px;
  padding: 20px;
}
.kunoshi_img{
  width: 27%;
}
.kunoshi_img p{
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.kunoshi_txt{
  width: 65%;
}

.kogumakai_box_txt{
  display: inline-block;
  position: relative;
}
.kogumakai_box_txt::before{
  content: url(/uploads/images/img_kogumakai01.png);
  position: absolute;
  top: -10px;
  left: -25px;
}
.kogumakai_box_txt::after{
  content: url(/uploads/images/img_kogumakai02.png);
  position: absolute;
  bottom: -4px;
  right: -20px;
}



.jonangroup_box{
  /* background-color: #f9f7ef; */
  background-image: url(/uploads/images/bg_paper.png);
  background-size: cover;
  padding-top: 60px;
  padding-bottom: 50px;
}
.jonangroup_box_ttl {
  letter-spacing: 0.1em;
}
.jonangroup_box ul{
  align-items: end;
  justify-content: center;
  gap: 50px;
}
.jonangroup_box li{
  width: 30%;
  line-height: 1.3;
  position: relative;
}
.jonangroup_box li img{
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
}
.jonangroup_box li::after{
  content: url(/uploads/images/arrow_g.png);
  position: absolute;
  top: 75px;
  right: -30px;
}
.jonangroup_box li:last-child::after{
  display: none;
}

.jg_age span{
  display: inline-block;
  padding: 0.4em 2em;
  font-size: 1.3rem;
  text-align: center;
  border-radius: 50px;
  color: #fff;
  background-color: #3dafd6;
  letter-spacing: 0.22em;
}
.thought{
  background-color: #F9F7EF;
  padding-top: 70px;
  padding-bottom: 70px;
}

.thought .sec_ttl {
  margin: 0 auto;
  width: 440px;
  background-image: url(/uploads/images/light.png);
  background-repeat: no-repeat;
  background-position: top right;
}

.thought .sec_ttl .orange{
  font-size: 5.5rem;
}
/* .thought .sec_ttl span:first-child{
  position: relative;
} */
/* .thought .sec_ttl span:first-child::after {
  content: url(/uploads/images/light.png);
  position: absolute;
  bottom: -65px;
  right: -30px;
  z-index: -1;
} */



.thought ul{
  row-gap: 50px;
}
.thought li{
  width: 18.5%;
  line-height: 1.3;
  flex-direction: column;
  align-items: center;
  text-align: center;
  row-gap: 10px;
}
.thought_reason{
  background-color:#fff;
  border-radius: 15px;
  padding: 30px 60px;
  align-items: center;
}
.thought_reason_img{
  width: 24%;
}
.thought_reason_txt{
  width: 72%;
}
.point{
  background-color:#F0F6F7;
  padding-top: 120px;
  padding-bottom: 60px;
  background-image: url(/uploads/images/bg_deco_blueT.png), url(/uploads/images/bg_deco_blueB.png);
  background-repeat: no-repeat;
  background-position: top left, bottom right;
  background-size: 30vw;
}
.point .sec_ttl{
  font-size: 3.6rem;
  letter-spacing: 0.12em;
}
.point .three-color_arch::before {
  top: -47px;
}
.point h3{
  letter-spacing: 0.12em;
}
.point ul{
  row-gap: 20px;
}
.point li{
  width: 47%;
}
.point li:nth-child(2n){
  margin-top: 80px;
}
.point li img{
  border-radius: 15px;
}
   
/* sp */ @media only screen and (max-width: 767px){
  .about .sec02{
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .top_about{
    margin-top: 0;
  }
  .about .top_about_ttl{
    width: 90%;
  }
  .about .top_about_txt{
    width: 100%;
  }
  .about .top_about_ttl img{
    width: 100%;
    border-radius: 15px;
    box-shadow: 0px 0px 20px 0px rgba(159, 181, 188, 0.4);
  }
  .about .txt_blue_bg{
    font-size: 1.5rem;
    padding: 9px 12px;
  }
  .mission_box{
    padding-bottom: 120px;
    background-position: bottom right, top left;
    background-size: 75vw, 70vw;
  }
  .mission_logo{
    margin-top: 20px;
    padding: 30px;
  }
  .mission .sec_ttl_ej h2{
    font-size: 3rem;
  }
  .kogumakai_box{
    font-size: 1.3rem;
    flex-direction: column;
  }
  .kogumakai_detail{
    padding: 30px;
  }
  .kogumakai_01{
    width: 100%;
  }
  .kogumakai_01_box{
    max-width: 100%;
    margin: 50px 15px;
  }
  .kogumakai_02{
    width: 100%;
  }
  .kogumakai_02_box{
    max-width: 100%;
    margin: 50px 15px;
  }
  .kogumakai_01 img{
    width: 180px;
  }
  .kogumakai_02 img{
    width: 55px;
  }
  .kogumakai_box_txt{
    font-size: 2rem;
  }
  .kogumakai_box_txt::before{
    top: -10px;
    left: -20px;
  }
  .kogumakai_box_txt::after{
    bottom: -5px;
    right: -15px;
  }
  .kogumakai_01_box a img{
    width: 80%;
  }
  .kunoshi_profile{
    flex-direction: column;
  }
  .kunoshi_img{
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .kunoshi_img img{
    margin-right: 10px;
  }
  .kunoshi_txt{
    width: 100%;
  }
  .jonangroup_box{
    background-image: url(/uploads/images/bg_paper_sp.png);
    padding-top: 40px;
    padding-bottom: 30px;
  }
  .jonangroup_box ul{
    row-gap: 40px;
  }
  .jonangroup_box li{
    width: 100%;
  }
  .jonangroup_box li::after{
    content: url(/uploads/images/arrow_g.png);
    position: absolute;
    bottom: -31px;
    top: inherit;
    right: 50%;
    transform: rotate(90deg);
  }
  .thought{
    padding-top: 40px;
    padding-bottom: 30px;
  }
  .thought li{
    width: 47%;
  }
  .thought_reason_img{
    width: 100%;
  }
  .thought_reason_txt{
    width: 100%;
  }
  .thought_reason{
    padding: 30px;
  }
  /* .thought .sec_ttl .orange{
    font-size: 5.5rem;
  } */
  .thought .sec_ttl {
    width: 100%;
   }
  .thought .sec_ttl span:first-child::after{
    right: -15px;
  }
  .thought ul{
    row-gap: 40px;
  }
  .point {
    background-size: 45vw;
    padding-top: 90px;
    padding-bottom: 30px;
  }
  .point ul{
    row-gap: 50px;
  }
  .point li{
    width: 100%;
  }
  .point li:nth-child(2n){
    margin-top: 0;
  }
  .point .sec_ttl{
    font-size: 3.2rem;
  }
}
  

/*---------------------------------------------------------
コース＆料金
---------------------------------------------------------*/
.course{
  background-color: #f9f7ef;
  padding-top: 60px;
  padding-bottom: 40px;
}
.course_box{
  align-items: center;
  position: relative;
  z-index: 1;
}
.course_box::after{
  content: url(/uploads/images/img_kuma.png);
  position: absolute;
  bottom: -50px;
  right: 80px;
  z-index: -1;
}
.course_img{
  width: 38%;
}
.course_img img{
  border-radius: 15px;
}
.course_txt{
  width: 57%;
  padding-bottom: 20px;
}
.course_list{
  background-color: #fff;
  border-radius: 15px;
  padding: 4vh 5vw;
  line-height: 1.5;
  z-index: 10;
}
.course_list dt{
  width: 15%;
}
.course_list span{
  background-color: #116fa1;
  color: #fff;
  width: 120px;
  height: 25px;
  line-height: 25px;
  display: inline-block;
  border-radius: 20px;
  text-align: center;
}
.course_list dd{
  width: 80%;
  font-size: 18px;
  padding-bottom: 15px;
}
.course_list dd:last-child{
  padding-bottom: 0;
}
.curriculum{
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #f2f7f9;
}
.curriculum_txt {
  width: 72%;
}
.curriculum_img {
  /* padding-right: 30px;
  padding-left: 30px; */
    width: 25%;
    padding-right: 20px;
    padding-left: 20px;
}
.curriculum_box{
  padding: 60px;
  border-radius: 15px;
  background-color: #fff;
}
.curriculum_box h3 span{
  color: #fff;
  background-color: #116fa1;
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.1em;
  padding: 10px 30px 8px;
  letter-spacing: 0.14em;
}
.curriculum_box h4{
  padding-top: 8px;
  padding-bottom: 5px;
  background-color: #f2f7f9;
}
.curriculum_box ul{
  row-gap: 30px;
}
.curriculum_box li{
  width: 30%;
}
.curriculum_box li img{
  border-radius: 15px;
}
.curriculum_box h5.arrow_y{
  margin-left: 30px;
}
.curriculum_box h5.arrow_y::after{
  top: 1px;
  left: -30px;
}

.three_shape{
  position: relative;
  margin-left: 80px;
}
.three_shape::after {
  content: url(/uploads/images/three_shape.png);
  position: absolute;
  top: -2px;
  left: -80px;
}
.two_shape{
  position: relative;
  margin-left: 75px;
}
.two_shape::after {
  content: url(/uploads/images/two_shape.png);
  position: absolute;
  top: 3px;
  left: -75px;
}
.three-color{
  position: relative;
}
.three-color::before {
  content: url(/uploads/images/three-color.png);
  position: absolute;
  top: -7px;
  left: -80px;
}
.three-color::after {
  content: url(/uploads/images/three-color_r.png);
  position: absolute;
  top: -7px;
  right: -75px;
}
.class{
  padding-top: 60px;
  padding-bottom: 50px;
}
.class ul{
  row-gap: 60px;
}
.class li{
  width: 30%;
}
.class li img{
  border-radius: 15px;
}
.class_flow_box .class_flow_01{
  position: relative;
}
.class_flow_box .class_flow_01::after {
  content: url(/uploads/images/arrow_dot.png);
  position: absolute;
  top: 105px;
  right: -67px;
  transform: rotate(270deg);
}
.class_flow_box img{
  border-radius: 15px;
}

.price{
  padding-top: 60px;
  padding-bottom: 70px;
  /* background-color: #ebf2f4; */
  background-color: #fff;
}

/* テーブル */
.price_table {
  width: 85%;
  border-collapse: separate;
  border-spacing: 2px;
  text-align: center;
  margin: 0 auto;
}
/* ヘッダー部分（青背景） */
.price_table th {
  background-color: #3dafd6; /* 濃い青 */
  color: #ffffff;
  padding: 20px 10px;
  font-size: 1.8rem;
  text-align: center;
}
.price_table th:first-child{
  border-top-left-radius: 15px;
}
.price_table th:last-child{
  border-top-right-radius: 15px;
}
/* コンテンツ部分（薄グレー背景） */
.price_table td {
  background-color: #f2f2f2; /* 薄いグレー */
  color: #333333;
  padding: 25px 10px;
  font-size: 2.4rem;
  font-weight: 600;
}
.price_table td:first-child{
  border-bottom-left-radius: 15px;
}
.price_table td:last-child{
  border-bottom-right-radius: 15px;
}

/* ここからインスタグラム */
.instagram{
  padding-top: 60px;
  padding-bottom: 60px;
}
.insta_box ul{
  gap: 20px;
}
.insta_box li{
  width: 23%;
}

/* sp */ @media only screen and (max-width: 767px){
.course{
  padding-top: 40px;
}
.course_img{
  width: 100%;
}
.course_txt{
  width: 100%;
}
.course_box::after{
  right: 13vw;
  bottom: -18px;
}
.course_list dt{
  width: 100%;
}
.course_list dd{
  width: 100%;
  padding-top: 10px;
  padding-left: 1em;
  font-size: 1.5rem;
}
.course_list span{
 font-size: 1.5rem;
}
.curriculum{
  padding-top: 30px;
}
.curriculum_txt{
  width: 100%;
}
.curriculum_img{
  width: 90%;
  padding-right: 50px;
  padding-left: 50px;
  margin: 0 auto;
}
.curriculum_box{
  padding: 50px 20px 30px;
}
.curriculum_box h3 span{
  font-size: 2rem;
  padding: 10px 20px 8px;
}
.curriculum_box li{
  width: 100%;
}
.class{
  padding-top: 30px;
  padding-bottom: 0;
}
.class li{
  width: 100%;
}
.class_flow_box {
  row-gap: 60px;
}
.class_flow_box .class_flow_01::after {
  top: auto;
  bottom: -50px;
  right: 50%;
  transform: translateX(50%);
}

.price{
  padding-top: 20px;
  padding-bottom: 70px;
}
.price_table{
  border-spacing: 0;
}
.price_table tr {
  display: block;
  float: left;
}
.price_table td, .price_table th {
  display: block;
  height: 50px;
}
.price_table thead {
  display: block;
  float: left;
  width: 50%;
}
.price_table thead tr {
  width: 100%;
}
.price_table tbody {
  display: block;
  float: left;
  width: 50%;
}
.price_table tbody tr {
  width: 100%;
}
.price_table th{
  font-size: 1.6rem;
  padding: 10px;
  margin-bottom: 1px;
}
.price_table td{
  font-size: 1.8rem;
  padding: 10px;
  margin-bottom: 1px;
}
.price_table th:last-child{
  margin-bottom: 0;
}
.price_table td:last-child{
  margin-bottom: 0;
}
.price_table th:first-child{
  border-top-left-radius: 15px;
}
.price_table th:last-child{
  border-top-right-radius: 0;
  border-bottom-left-radius: 15px;
}
.price_table td:first-child{
  border-top-right-radius: 15px;
  border-bottom-left-radius: 0;
}
.price_table td:last-child{
  border-bottom-right-radius: 15px;
}

.instagram{
  padding-top: 20px;
}
.insta_box li{
  width: 47%;
}
}

/*---------------------------------------------------------
入会までの流れ
---------------------------------------------------------*/
.flow_box{
  padding-top: 60px;
  padding-bottom: 10px;
}
.flow_item{
  background-color: #fff7da;
  border-radius: 15px;
  padding: 95px 65px 75px;
  margin-bottom: 100px;
  position: relative;
}
.flow_item .btn_orange{
  width: 310px;
}
.flow_item::after{
  content: url(/uploads/images/arrow_dot.png);
  position: absolute;
  bottom: -70px;
  left: 50%;
  transform: translateX(-50%);
}
.flow_item:last-child::after{
  display: none;
}
.flow_item_last{
  position: relative;
}
.flow_item_last .img_flow_01{
  position: absolute;
  top: -160px;
  right: -90px;
}
.flow_item_last .img_flow_02{
  position: absolute;
  bottom: -140px;
  left: -100px;
}
.flow_tel_box, .flow_mail_box{
  background-color: #fff;
  padding: 5px 20px;
  display: inline-block;
}

/* sp */ @media only screen and (max-width: 767px){
  .flow_box{
    padding-top: 40px;
  }
  .flow_item{
    padding: 80px 20px 40px;
    margin-bottom: 85px;
  }
  .flow_item .btn_orange {
    width: 100%;
  }
  .flow_item .arrow_r:after{
    right: 20px;
  }
  .flow_mail_box .orange{
    font-size: 1.4rem;
    letter-spacing: 0.02em;
  }
  
  .flow_item_last .img_flow_01 {
    width: 40vw;
    position: absolute;
    top: auto;
    bottom: -105px;
    right: -30px;
  }
  .flow_item_last .img_flow_02 {
    width: 30vw;
    position: absolute;
    top: -105px;
    left: -34px;
  }
}


/*---------------------------------------------------------
教室一覧
---------------------------------------------------------*/
.access .container{
  padding-bottom: 40px;
}

/*---------------------------------------------------------
成城教室
---------------------------------------------------------*/
.class_detail {
  padding-top: 60px;
  padding-bottom: 40px;
  border-top: 2px solid #F6AC19;
  border-bottom: 2px solid #F6AC19;
}
.class_detail_box{
  gap: 30px;
  justify-content: flex-start;
}
.class_detail_img{
  width: 50%;
}
.class_detail_img img{
  width: 100%;
  border-radius: 15px;
}
.class_detail iframe{
  border-radius: 15px;
}
.class_intro {
  background-color: #F9F7EF;
  padding-top: 60px;
  padding-bottom: 60px;
}
.class_intro ul {
  row-gap: 60px;
}
.class_intro li{
  width: 30%;
}
.class_intro li img {
  border-radius: 15px;
}
.timetable{
  background-color: #ebf2f4;
  padding-top: 60px;
  padding-bottom: 60px;
}
.img_timetable {
  width: 90%;
  margin: 0 auto;
}

/* sp */ @media only screen and (max-width: 767px){
  .class_detail{
    padding-top: 40px;
  }
  .class_detail_box{
    gap: 30px;
  }
  .class_detail_img{
    width: 100%;
  }
  .class_intro {
    padding-top: 50px;
    padding-bottom: 40px;
  }
  .class_intro ul {
    row-gap: 30px;
  }
  .class_intro li {
    width: 100%;
  }
  .timetable {
    padding-top: 40px;
    padding-bottom: 50px;
  }
  .img_timetable {
    width: 100%;
  }
}


/*---------------------------------------------------------
お問い合わせフォーム共通
---------------------------------------------------------*/
.contact_box{
  background-color: #f9f7ef;
  padding-top: 30px;
  padding-bottom: 30px;
}
.contact_tel{
  font-size: 4rem;
  line-height: 1;
}
.contact-form {
border-radius: 6px;
padding: 2em;
}
.contact-table th{
width: 32%;
font-size: 1.6rem;
padding: 2.3rem 0 2.3rem 5.5rem;
vertical-align: top;
border-bottom: 1px dotted #6c5b19;
}
.contact-table td{
width: 70%;
padding: 2.3rem 1rem 2.3rem 5%;
vertical-align: top;
border-bottom: 1px dotted #6c5b19;
}
.contact-table tr:last-child th, .contact-table tr:last-child td {border-bottom: none;}
.contact-table th.must{
position: relative;
}
.contact-table th.must:before{
content: "必須";
width: 2.8em;
font-size: 1.3rem;
text-align: center;
background: #cf0b15;
color: #fff;
font-weight: bold;
display: inline-block;
position: absolute;
top: 26px;
left: 1rem;
}
.contact-table th.any{
position: relative;
}
.contact-table th.any:before{
content: "任意";
width: 2.8em;
font-size: 1.3rem;
text-align: center;
background: #0e3469;
color: #fff;
font-weight: bold;
display: inline-block;
position: absolute;
top: 26px;
left: 1rem;
}
.contact-table td input,
.contact-table td textarea,
.contact-table td select
{
width: 100%;
padding: 6px 12px;
line-height: 1.42857143;
font-size: 1.6rem;
color: #555;
background-color: #fff;
background-image: none;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
display: block;
}
.contact-table input:focus {
box-shadow: 0 0 4px #e6aa6e;
border: 1px solid #e6aa6e;
}
.contact-table td.select-service select {
width: auto;
}
.contact-table td.ininp input {
width: auto;
display: inline-block;
}
.contact-table td.selectbox span {
margin-bottom: 1rem;
margin-right: 1rem;
}
/*--各入力フォームサイズ--*/
.contact-table .wid-min {width: 10em; display: inline-block;}
.contact-table .wid-mid {width: 15em; display: inline-block;}
.contact-table .wid-lag {width: 20em; display: inline-block;}
.contact-table td.selectbox span.your-grade {margin-right: 0;}
.contact-table td.selectbox span.your-grade > span {margin-right: 0;}
.contact-table .your-grade .wpcf7-radio span:nth-child(4) {display: block; margin-right:0;}
.contact-table td.ininp input[name="c-age"] {width: 5em; display: inline-block;}
.contact-table td.ininp input[name="c-month"] {width: 5em; display: inline-block;}
.contact-table input[name="your-address"] {display: inline-block;}
.contact-table textarea[name="your-message"] {height: 16rem!important;}
.contact-btn input{width: 240px; cursor: pointer;}
.contact-table td.ininp input[name="agree"] span {margin-bottom: 0;}
/* エラー表示 */
.wpcf7 form.invalid div.wpcf7-response-output {
margin: 1.5rem 0 0;
padding: 1rem;
text-align: center;
color: #fff;
font-weight: bold;
border: 0;
background-color: red;
}
/* ----問合せリンクボタン ----*/
input.btn-green {
display: inline-block;
padding: .8em 1em;
text-decoration: none;
color: #fff;
background-color: #ED6C00;
border-radius: 5px;
letter-spacing: 0.2em;
}
input.btn-greenaaaaaaaa:active {
-webkit-transform: translateY(2px);
transform: translateY(2px);
box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
border-bottom: none;
}
/* ---- その他を選んだ人のみ記入 ----*/
.contact-table td.ininp input.other-txt{
  width: 250px;
}
  
  /* sp */ @media only screen and (max-width: 767px){
  .contact_tel{
    font-size: 3.2rem;
    display: flex;
    align-items: baseline;
  }
  .contact-form {
  padding: 1em;
  }
  .form{
  width: 90%;
  margin: 0 auto;
  }
  .contact-table th{
  width: 100%;
  display: block;
  padding: 2rem 0 10px 0;
  border: none;
  }
  .contact-table td{
  width: 100%;
  display: block;
  padding: 0 0 2rem 0;
  }
  .contact-table th.must{
  padding-left: 4.5rem;
  }
  .contact-table th.must:before{
  position: absolute;
  top: 2.1rem;
  left: 0px;
  }
  .contact-table th.any{
  padding-left: 4.5rem;
  }
  .contact-table th.any:before{
  position: absolute;
  top: 2.1rem;
  left: 0px;
  }
  .form-control{
  height: auto !important;
  }
  .inp input{
  height: 25px;
  line-height: 25px;
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
  }
  .inp02 input{
  height: 25px;
  line-height: 25px;
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
  }
  .contact-table .wid-min {width: 100%; display: inline-block;}
  .contact-table .wid-mid {width: 100%; display: inline-block;}
  .contact-table .wid-lag {width: 100%; display: inline-block;}
  .contact-table input[name="your-address"] {width:100%; display: inline-block;}
  .contact-table textarea[name="your-message"] {height: 100%!important;}
  .contact-table td.ininp input[name="c-age"] {margin-left: 2em;}
  .inpT textarea{
  height: 8em;
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
  }
  .contact-btn{
  width: 80%;
  margin: 30px auto 0;
  }
  .contact-btn input{
  padding: 0.5em 0;
  font-size: 17px;
  display: block;
  width: 100%;
  }
  .contact-table td.ininp input.other-txt{
    width: 260px;
  }
}


/*---------------------------------------------------------
お問い合わせフォーム完了
---------------------------------------------------------*/
.thanks_box{
  background-color: #f9f7ef;
  padding-top: 40px;
  padding-bottom: 40px;
}

/*---------------------------------------------------------
よくあるご質問
---------------------------------------------------------*/
/* Acordeon styles */
.faq_list .tab {
position: relative;
margin-bottom: 2rem;
width: 100%;
color: #0066b3;/* アコーディオン タブ文字色 */
overflow: hidden;
-webkit-transition: max-height .5s;
-o-transition: max-height .5s;
transition: max-height .5s;
}
.faq_list input {
position: absolute;
opacity: 0;
z-index: -1;
}
.faq_list label {
position: relative;
display: block;
padding: 1em 0 0 1em;
background: #fff;/* アコーディオン タブ背景色 */
color: #323232;
font-size: 1.8rem;
font-weight: bold;
line-height: 3;
border-radius: 6px 6px 0 0;
cursor: pointer;
}
.faq_list label::before {
width: 1.5em;
height: 1.5em;
margin-right: 1em;
line-height: 1.5;
content: "Q";
font-size: 3.2rem;
text-align: center;
transform: rotate(0.03deg);
color: #fff;
border-radius: 50%;
background-color: #7aa4de;
display: inline-block;
vertical-align: middle;
}
.faq_list .tab-content {
padding-bottom: 15px;
max-height: 0;
overflow: hidden;
background: #fff;/* タブ内背景色 */
border-radius: 0 0 6px 6px;
-webkit-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
}
.faq_list .tab-content .cont-box {
width: 900px;
margin: 15px auto 30px;
padding: 20px;
background-color: #fff;
border-radius: 6px;
}
.faq_list .tab-content .cont-box::before {
width: 1.5em;
height: 1.5em;
margin-right: 0.8em;
line-height: 1.5;
content: "A";
font-size: 3.2rem;
text-align: center;
transform: rotate(0.03deg);
color: #fff;
border-radius: 50%;
background-color: #e6aa6e;
display: inline-block;
float: left;
}
.faq_list .blue .tab-content {
background-color: #7aa4de;
}
.faq_list .tab-content p {
margin: 1em;
color: #323232;/* タブ内文字色 */
padding-left: 60px;
}
/* :checked */
.faq_list input:checked ~ .tab-content {
max-height: 100em;
background-color: #7aa4de;
-webkit-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
}
.faq_list input:checked ~ label {
color: #fff;
border-radius: 5px 5px 0 0;
background-color: #7aa4de;
-webkit-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
}
.faq_list input:checked ~ label::before {
color: #7aa4de;
background-color: #fff;
}
/* Icon */
.faq_list label::after {
position: absolute;
right: 0;
top: 8px;
display: block;
width: 3em;
height: 3em;
line-height: 3;
text-align: center;
-webkit-transition: all .5s;
-o-transition: all .5s;
transition: all .5s;
}
.faq_list input[type=checkbox] + label::after {
content: "+";
font-size: 25px;
color: #69b5f0;
}
.faq_list input[type=radio] + label::after {
content: "\25BC";
}
.faq_list input[type=checkbox]:checked + label::after {
transform: rotate(45deg);
color: #fff;
}
.faq_list input[type=radio]:checked + label::after {
transform: rotateX(180deg);
}

/* sp */ @media only screen and (max-width: 767px){
  .faq_list label {
  padding-right: 3em;
  padding-left: 3.2em;
  font-size: 1.6rem;
  line-height: 1.4;
  position: relative;
  }
  .faq_list label::before {
  margin-right: .5em;
  font-size: 2.4rem;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-32%);
  }
  .faq_list .tab-content .cont-box {
  width: 90%;
  margin: 15px auto 5px;
  }
  .faq_list .tab-content .cont-box::before {
  margin-right: .5em;
  font-size: 2.4rem;
  }
  .faq_list label::after {
  width: 2em;
  height: 2em;
  line-height: 2.3;
  top: 0;
  }
  .faq_list .tab-content p {
  padding-left: 0;
  }
}
  

/*---------------------------------------------------------
コース案内
---------------------------------------------------------*/
.page-service .couse_block {
width: 100%;
padding: 50px;
background-color: #f4f4f4;
border-radius: 10px;
}
.page-service .couse_block .service_img {
width: 334px;
margin-right: 50px;
border-radius: 10px;
}
.page-service .couse_block .service_box {
width: 570px;
}
.numberling li {
padding-left: 40px;
background:url(/uploads/images/img_no1.gif) top left / 27px auto no-repeat;
}
.numberling li:nth-child(2) {
background:url(/uploads/images/img_no2.gif) top left / 27px auto no-repeat;
}
.new::after {
content: "";
display: inline-block;
width: 80px;
height: 20px;
margin-left: 2rem;
vertical-align: middle;
background:url(/uploads/images/img_new.gif) top left / 100% auto no-repeat;
}
.service_kubota {
padding: 4em 0;
background: #fff2f7;
}
.service_kubotalogo img {
width: 300px;
border-radius: 10px;
}
.page-service #inc_contact {margin-bottom: 0;}
.service_kubota .couse_block {background: #fff;}
.service_kubota .couse_block .service_box {width: 100%;}
.service_kubota .couse_block .service_txt {width: 68%;}
.service_kubota .couse_block .service_img {
width: 32%;
margin-right: 0;
border-radius: 0;
}
.service_kubota .doctor_info {
width: 650px;
margin: 1em auto 0;
padding: 2em;
background: #f4f4f4;
border-radius: 10px;
}
.service_kubota .doctor_info .fLPc {
width: 30%;
margin-right: 3%;
}
.service_kubota .doctor_info .fRPc {
width: 67%;
}

/*sp*/ @media only screen and (max-width: 767px){
  .page-service .couse_block {
  width: 100%;
  padding: 2rem 5% 3rem;
  }
  .page-service .couse_block .service_img {
  width: 100%;
  margin-right: 0;
  }
  .page-service .couse_block .service_box {
  width: 100%;
  }
  .numberling li {
  padding-left: 10%;
  background-size: 8% auto;
  }
  .numberling li:nth-child(2) {
  background: 8% auto;
  }
  .new::after {
  width: 4em;
  height: auto;
  margin-left: 2rem;
  padding-top: 6%;
  }
  .service_kubota .couse_block .service_txt {width: 100%;}
  .service_kubota .couse_block .service_img {width: 100%;}
  .service_kubota .doctor_info {
  width: 95%;
  padding: 1em;
  background: #f4f4f4;
  border-radius: 10px;
  }
  .service_kubotalogo img {
  width: 85%;
  border-radius: 10px;
  }
  .service_kubota .doctor_info .fLPc {
  width: 80%;
  margin: 0 auto;
  }
  .service_kubota .doctor_info .fRPc {
  width: 100%;
  }
}
  

/*pc*/ @media only screen and (min-width: 768px){
}
.annual_events .fLPc {
width: 38%;
}
.event_month {
width: 55%;
margin-left: 5%;
}
.event_month th, .event_month td {
padding: 0.5em;
border-bottom: 1px solid #fff;
font-size: 1.4rem;
}
.event_month th {
width: 4em;
text-align: center;
font-weight: bold;
color: #75b348;
background: #c5dda5;
}
.event_month td {
background-color: #d8f3ff;
}
.price00 {
width: 100%;
border: 5px solid #75b348;
border-radius: 10px;
}
.price01, .price02 {
width: 45%;
border: 5px solid #75b348;
border-radius: 10px;
}
.price01 {
margin-right: 5%;
}
.service_class_title {
width: 100%;
padding: 1em 0.5em;
background: #75b348;
color: #fff;
}
.service_class table { width: 100%; }
.service_class table th, .service_class table td {
padding: 0.5em;
border-bottom: 1px dotted #aaa;
text-align: center;
vertical-align: middle;
}
.service_class table tr:last-child th, .service_class table tr:last-child td {border-bottom: none;}
.service_class table tr:last-child th {border-radius: 0 0 0 5px;}
.service_class table tr:last-child td {border-radius: 0 0 5px 0;}
.service_class table th {
text-align: center;
background: #e5e5e5;
font-size: 1.5rem;
}
.service_class table td { background-color: #fbfbfb; }
.service_class table { width: 100%; }
.service_class .price00 table td {
padding: 0.5em 2em;
text-align: center;
}
.borderR {
border-right: 1px solid #aaa;
}
.service_option table {
display: inline-block;
}
.service_option td li {
margin-right: 2em;
display: inline-block;
}
.service_option td li span {
margin-right: 0.5em;
padding: 0 0.5em;
font-size: 1.5rem;
font-weight: bold;
text-align: center;
color: #75b348;
background: #d8f3ff;
border-radius: 50px;
display: inline-block;
}
.service_option td li span.op02 {
color: #eb9e22;
background: #fcf2c3;
}
.service_option td li span.op03 {
color: #dd6b9d;
background: #fbe6ef;
}
.trial_lesson ul li {
width: 100%;
padding: 0.5em 3em;
color: #dd6b9d;
border-radius: 10px;
background: #fbe6ef;
}

/*sp*/ @media only screen and (max-width: 767px){
  .cont01_img {width: 100%; margin-right: 0; margin-bottom: 1em;}
  .service_cont01_box {width: 100%;}
  .service_feature li.couse_block .service_img {
  width: 80%;
  margin-top: 1.2rem;
  margin-left: auto;
  margin-right: auto;
  float: none;
  }
  /* 2つ画像がある場合 */
  .service_feature li.couse_block.twoimg_block .service_img {
  width: 47%;
  margin-left: 1%;
  margin-right: 1%;
  display: inline-block;
  }
  .service_feature li.couse_block .service_box {
  width: 100%;
  padding: 1em 0 2em;
  float: none;
  }
  .page-after .service_feature li.couse_block .service_box {padding: 1em 0 2em;}
  .annual_events .fLPc {width: 100%;}
  .event_month {
  width: 100%;
  margin-left: 0;
  }
  .service_class table th, .service_class table td {
  padding: 0.3em;
  }
  .service_class table th {
  width: 7.5em;
  }
  .service_class .price00 table td {
  padding: 0.3em;
  }
  .price01, .price02 { width: 100%; }
  .service_option th { width: 7em; }
  .service_option td li {
  width: 100%;
  display: block;
  }
}
  