@charset "utf-8";
/*
theme Name: LINGOLLCtemplate
Author: LINGO L.L.C.
Description: LINGO L.L.C. original theme
version： 1.0.0
*/

body {
font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
line-height: 1.6;
margin: 0;
padding: 0;
color: #333;
background-color: #f6f3ec;
position: relative;
word-wrap: break-word;
overflow-wrap: break-word;
}
img {
max-width: 100%;
height: auto;
display: block;
}
form{
margin:0;
padding:0;
}
.wrap {
width: 1000px;
margin: 0 auto;
padding: 30px 0 50px;
background-color:#fef9ed;
}

/*----------sp ------------*/
@media only screen and (max-width: 767px){
  .wrap {
  width: 95%;
  padding: 3rem 0 4rem;
  }
}

/*コンテンツのサイズ指定*/
.container {
/*padding: 2rem 1.25rem;*/
padding: 1rem 40px 5rem;
box-sizing: border-box;
max-width: 1000px;
margin-right: auto;
margin-left: auto;
background-color:#fef9ed;
}
.container:after {
display: block;
clear: both;
content: '';
}

.container.llc_container {
padding: 0;
}
.contents {
width: 650px;
margin-top: 1.5rem;
margin-right: 30px;
padding: 4rem 30px;
float: left;
/*width: 70%;
margin-right: 3%;*/
background-color: #fff;
box-sizing: border-box;
}
.contents_full {width: 100%;}

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

.sidebar {
width: 240px;
margin-top: 15px;
float: left;
/*width: 27%;*/
}

/*----------sp ------------*/
@media only screen and (max-width: 767px){
  .container {
  /*padding: 2rem 1.25rem;*/
  padding: 1rem 2%;
  }
  .contents {
  margin-top: 1.5rem;
  padding: 3rem 5%;
  }
}

.post-template-sub-page-bnr-side {}

/*---------------------------------------------------------
header-CSS ヘッダー
---------------------------------------------------------*/
/*pc */
@media print, screen and (min-width: 768px){
body , html{min-width: 1000px;}
html {overflow:auto;}
body {padding-top:115px;}

header{
width: 100%;
background-color: #17591b;
position: fixed;
top: 0;
left: 0;
z-index: 9999;
/*transition: 1s cubic-bezier(.4, 0, .2, 1);*/
}
header.is-animation{
/*box-shadow:0 2px 5px 0 #dbdbdb;*/
padding: 0;
}
header .header-inner {
width: 1000px;
height: 70px;
margin: 0 auto;
background-color: #17591b;
display: block;
}
.head-logo{
width: 190px;
margin: 12px 0 0;
}
header .header-inner .top_links01 a {
margin-top: 12px;
margin-left: 10px;
display: block;
}
header .header-inner .top_links02 {
margin-right: 1rem;
}
header .header-inner .top_links02 a {
margin: 3.8rem 0 0 15px;
padding-left: 25px;
color: #fff;
font-size: 1.5rem;
}
.is-animation .ani_head-logo{
width: 187px;
margin-right: 0;
}
/*.head-tel{
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
width: 223px;
}
.is-animation .head-tel{
width: 190px;
}
.head-contact{
-moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
width: 179px;
background:url(https://www.siawase-fairy.com/wp-content/uploads/images/img-head-contact-on.gif) no-repeat top left;
background-size: 100%;
}
.head-contact a:hover img{
opacity:0;
}
.is-animation .head-contact{
width: 155px;
}*/
#global-nav {
width: 100%;
background-color: #267d2b;
}
#global-nav ul.first_nav {
width: 1000px;
margin: 0 auto;
display: table;
background-color: #267d2b;
position: relative;
}
#global-nav ul.first_nav > li {
display: table-cell;
position: relative;
}
#global-nav ul.first_nav .g_nav_btn {
width: 100%;
height: 45px;
padding: 12px 15px 10px;
text-align: center;
text-decoration: none;
display: block;
position: relative;
}
 /* メニュー区切り線*/
#global-nav ul.first_nav .g_nav_btn::after {
content: '';
position: absolute;
right: 0;
top: 50%;
display: inline-block;
width: 1px;
height: 35px;
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: rotateY(-50%);
background-color: #225225;
}
 /*メニュー区切り線*/
#global-nav ul.first_nav li:first-child .g_nav_btn::before {
content: '';
position: absolute;
left: 0;
top: 50%;
display: inline-block;
width: 1px;
height: 35px;
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: rotateY(-50%);
background-color: #225225;
}
#global-nav ul.first_nav .g_nav_btn img:hover {opacity: 1;}
#global-nav ul.first_nav > li > .g_nav_btn > span {
line-height: 1.5;
color: #fff;
font-weight: bold;
/*position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);*/
}
 /*--  プルダウンメニュー設定  --*/
ul.menu_second-level , ul.menu_third-level , ul.menu_fourth-level {
visibility: hidden;
opacity: 0;
}
ul.first_nav > li:hover {
-webkit-transition: all .5s;
transition: all .5s;
}
.menu_second-level li {
border-bottom: 1px dotted #fff;
display: block;
}
.menu_second-level li:last-child {border-bottom: 0;}
ul.menu_second-level a {
min-width: 245px;
padding: 12px 0.5rem;
font-size: 1.4rem;
color: #fff;
text-align: center;
text-decoration: none;
display: block;
}
ul.menu_second-level li:hover {background-color: #17591b; transition: 0.3s;}
ul.menu_second-level li:hover a {text-decoration: none; opacity: 1;}
.menu_third-level li {}
.menu_second-level li a:hover {}
.menu_third-level li a:hover {}
.menu_fourth-level li a:hover {}
.first_nav > li > ul.menu_second-level {
position: absolute;
top: 45px;
background: rgba(38, 125, 43, 0.95);
-webkit-transition: all .2s ease;
transition: all .2s ease;
z-index: 10;
}
 /*--  PC一番右端のメニューは右端に揃える --*/
.first_nav > li:nth-last-child(3) > ul.menu_second-level {
position: absolute;
right: 0;
}
.first_nav > li:hover ul.menu_second-level {
top: 45px;
visibility: visible;
opacity: 1;
}
/* メニューをホバー時のナビゲーションメニューの動作 */
#global-nav ul.first_nav li:hover .g_nav_btn {
opacity: .9;
transition: 0.3s;
background-color: #77b47b;
}
/* 現在のページのとき背景色を設定 */
#Non-global-nav ul.first_nav > li.current > .g_nav_btn {background-color: #77b47b;}
}

/*----------header sp ------------*/
@media only screen and (max-width: 767px){
	body{padding-top: 56px;}
  .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{
  max-width: 40%;
	}
  .head-logo a {
  margin: 12px 0 0 10px;
  display: block;
	}
  .head-logo img {
  width: auto;
  height: 32px;
  }
	.inner:after {
	content: "";
	clear: both;
	display: block;
	}
  header .header-inner .top_links01 {
  margin-right: 48px;
  margin-top: 10px;
  }
  header .header-inner .top_links01 li {
  width: auto;
  height: 37px;
  margin-right: 5px;
  }
  header .header-inner .top_links01 li:first-child {
  }
  header .header-inner .top_links01 a img {
  width: auto;
  height: 100%;
  }
  /* メニュー開封時の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: 999;
	transition: .5s;
	}
	#top-head.hide{
  transform: translateY(-100%);
	}
	#top-head a{
	color: #333;
	text-decoration: none;
	}
	#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: 35px;
  height: 22px;
  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: 2px;
  background-color: #fff;
  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: #267d2b;
  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;
  color: #333;
  }
  li.close .nav-toggle {
	width: 90%;
  height: auto;
  margin: 1rem auto;
  padding: 1rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
	cursor: pointer;
  border: 1px solid #77b47b;
  background-color: #60a864;
	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: 56px;
	z-index: 999;
	position: relative;
	background: #17591b;
	}
	#global-nav > ul.first_nav {
  padding-top: 50px;
	list-style: none;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	}
	#global-nav ul.first_nav > li {
	float: none;
	position: static;
	border-bottom: 1px dotted #fff;
	}
	#global-nav ul.first_nav > li:last-child {
	float: none;
	position: static;
	border-bottom: 1px dotted #fff;
	}
	#global-nav ul.first_nav > li:last-child {
	border-bottom: none;
	}
	#top-head #global-nav ul.first_nav > li > a,
	#top-head.fixed #global-nav ul.first_nav > li > a {
	width: 90%;
  margin: 1rem auto;
  padding: 18px 0;
  font-weight: bold;
  border: 1px solid #77b47b;
  background-color: #eee;
	display: block;
	}
  #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: 48%;
  border: 1px solid #77b47b;
  margin-bottom: 0.5rem;
	}
  #global-nav ul.menu_second-level > li a {
  width: 100%;
  height: 100%;
  padding: 1rem 2%;
  font-size: 1.2rem;
  background-color: #d1edd3;
  display: block;
	}
  #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;
  }
  #global-nav ul.sub-menu.menu_second-level > li a {
  }
	.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%;
	/* #global-nav top + #mobile-head height
	-moz-transform: translateY(200%);
	-webkit-transform: translateY(200%);
	transform: translateY(200%); */
	display:  block;
	background: rgba(23,89,27,0.9);
	text-align: center;
	}
	.open #global-nav ul.first_nav > li:last-child {
	padding-bottom: 300px;
	}
}

/*---------------------------------------------------------
footer-contact-Include CSS
---------------------------------------------------------*/
#inc_contact {
width: 100%;
padding: 70px 0 25px;
background-image: url(./images/contact_bg.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
#inc_contact .conlink_btn {
width: 800px;
margin: 0 auto;
}
#inc_contact .conlink_btn a {
width: 360px;
padding: 0;
line-height: 50px;
background-color: #db7a00;
}
#inc_contact .conlink_btn a.conlink02 {
background-color: #17591b;
}
#inc_contact .concall_txt01 {
width: 290px;
margin: 0 auto;
line-height: 1.6;
border-radius: 20px;
border: 1px solid #17591b;
display: block;
}
#inc_contact .concall_freeimg a {
width: 290px;
margin: 15px auto 5px;
display: block;
}
/* SP */
@media only screen and (max-width: 767px){
  #inc_contact {
  padding: 3rem 5%;
  }
  #inc_contact .conlink_btn {
  width: 100%;
  }
  #inc_contact .conlink_btn a {
  width: 95%;
  margin: 0 auto 1.5rem;
  line-height: 50px;
  }
  #inc_contact .conlink_btn a.conlink02 {
  }
  #inc_contact .concall_txt01 {
  width: 290px;
  margin: 0 auto;
  line-height: 1.6;
  border-radius: 20px;
  border: 1px solid #17591b;
  display: block;
  }
}

/*---------------------------------------------------------
footer-CSS フッター
---------------------------------------------------------*/
footer {
width: 100%;
padding: 40px 0 110px;
background-color: #17591b;
}
#footer {
width: 1000px;
margin: 0 auto;
}
#footer .footer_compinfo {
width: 350px;
}
#footer .footer_logo a {
width: 252px;
display: block;
}
#footer .sns_follow {
width: 365px;
margin: 15px 0 0;
padding: 5px 10px;
background-color: #fff;
border-radius: 10px;
display: block;
}
#footer .sns_follow span {
margin-top: 3px;
}
#footer .sns_follow a {
width: 50px;
display: block;
margin-top: 2px;
margin-left: 10px;
}
#footer .footer_menubox1 > li {
width: 110px;
font-size: 1.3rem;
color: #fff;
}
#footer .footer_menubox1 > li a {
font-size: 1.3rem;
color: #fff;
line-height: 1.8;
text-decoration: none;
}
#footer .footer_menubox1 a.sublink {
text-indent: -0.5em;
padding-left: 0.5em;
display: block;
}
.footer_menubox2 {
width: 900px;
margin: 45px auto 25px;
}
.footer_menubox2 ul {
display: inline-block;
}
.footer_menubox2 li {
padding: 0 0.5em;
display: inline-block;
border-left: 1px solid #fff;
}
.footer_menubox2 li:last-child {
border-right: 1px solid #fff;
}
.footer_menubox2 li a {
font-size: 1.3rem;
color: #fff;
text-decoration: none;
}

/*pc*/
@media print, only screen and (min-width: 768px){
  #footer .footer_menubox1 > li:nth-child(2) {width: 140px;}
  #footer .footer_menubox1 > li:nth-child(3) {width: 100px;}
  #footer .footer_menubox1 > li:nth-child(4) {width: 150px;}
  #footer .footer_menubox1 > li:nth-child(5) {width: 125px;}
}

/* SP */
@media only screen and (max-width: 767px){
	footer {padding: 2.5rem 0 10rem;}
	#footer {width: 95%;}
  #footer .footer_compinfo {width: 100%;}
  #footer .footer_logo a {
	width: 70%;
	margin: 0 auto 1.5rem;
	}
  #footer .footer_compinfo p {
  line-height: 1.8;
  text-align: center;
  }
  #footer .sns_follow {
  width: 90%;
  margin: 1.5rem auto 3rem;
  padding: 1rem 5%;
  }
  #footer .sns_follow span {
  width: 100%;
  margin-top: 0;
  line-height: 1.5;
  }
  #footer .sns_follow a {
  width: 20%;
  margin-top: 1rem;
  margin-left: 10%;
  }
  #footer .footer_menubox1 {
  width: 90%;
  margin: 0 auto;
  }
  #footer .footer_menubox1 > li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px dotted #fff;
  }
  #footer .footer_menubox1 > li:nth-child(odd) {margin-right:0;}
  #footer .footer_menubox1 a.sublink {
  text-indent: -1em;
  padding-left: 1em;
  }
  .footer_menubox2 {
  width: 100%;
  margin: 2rem auto;
  }
  .footer_menubox2 li {
  margin-bottom: 0.5rem;
  }
  #copyright {
  padding-right: 25%;
  }
}


/*---------------------------------------------------------
sidebar-CSS サイドバー
---------------------------------------------------------*/

/* SP サイドバーお問い合わせバナーはSPで非表示 */
@media only screen and (max-width: 767px){
#media_image-3 {display: none;}
}

.sidebar-wrapper {
margin-bottom: 2rem;
}

.sidebar-title {
font-size: 1.8rem;
box-sizing: border-box;
margin: 0 0 2rem;
padding: .85rem;
color: #000;
border-bottom: 4px solid #17591b;
}
.widget_nav_menu .sidebar-title {
margin: 0;
padding: .5rem;
font-size: 2.2rem;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Sawarabi Mincho", serif;
text-align: center;
color: #fff;
border-bottom: 0;
background-color: #267d2b;
box-sizing: border-box;
}
/* 検索ボックスの「検索」テキスト非表示 */
#sidebar .screen-reader-text {display: none;}
#sidebar .search-form input {
padding: 5px;
border-radius: 5px;
}
#sidebar .search-form .search-submit {
background-color: #17591b;
color: #fff;
font-weight: bold;
padding: 7px 10px;
}
/* 検索結果ページ */
.search-res .serchform {
margin-bottom: 15px;
}


/*デフォルトウィジェット*/
.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: #333;
}
.sidebar-wrapper a:hover {
opacity: .6;
}

/*カテゴリウィジェット*/
.widget_categories li {
display: block;
margin-bottom: .85rem;
}
.widget_categories li a {
font-size: 1.4rem;
position: relative;
display: block;
padding: 1.5rem 1rem 1.5rem 3.2rem;
color: #fff;
background-color: #17591b;
}
.widget_categories li a::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
position: absolute;
top: 50%;
left: .6rem;
content: '\f02b';
transform: translateY(-50%);
color: #fff;
}
.widget_categories .children {
margin-bottom: .85rem;
padding: 0;
padding-left: 1.7rem;
background-color: #267d2b;
}
.widget_categories .children li {
margin-bottom: 0;
}
.widget_categories .children li a {
font-size: 1.5rem;
background-color: transparent;
}
.widget_categories .children li a::before {
position: absolute;
top: 50%;
left: 1.5rem;
content: '∟';
transform: translateY(-50%);
color: #fff;
}

/*カテゴリウィジェットとアーカイブウィジェットのドロップダウン表示*/
.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: #17591b;
border: 1px solid #000;
background-color: #fff;
}

/*メニューウィジェット*/
.widget_nav_menu li {
margin-bottom: 0;
border-bottom: 1px solid #e1f4e1;
}
.widget_nav_menu li a {
font-size: 15px;
position: relative;
padding: 1rem 25px 1rem 1rem;
background-color: #f7fff7;
display: block;
}
.widget_nav_menu li a:hover {
opacity: 1;
background-color: #dbf0dd;
}
.widget_nav_menu li a::before,
.widget_nav_menu li a::after{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
margin: auto auto auto 8px;
content: "";
vertical-align: middle;
}
.widget_nav_menu li a::before{
width: 12px;
height: 12px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #17591b;
}
.widget_nav_menu li a::after{
box-sizing: border-box;
width: 3px;
height: 3px;
border: 3px solid transparent;
border-left: 5px solid #fff;
}

/*.widget_nav_menu li a::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
position: absolute;
top: 50%;
left: 0;
content: '\f105';
transform: translateY(-50%);
color: #17591b;
}*/

/*最近の投稿*/
.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 {
display: block;
margin-bottom: .3rem;
padding-left: 2.6rem;
}
.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 h1 {
font-size: 2.6rem;
margin-bottom: 1.5rem;
color: #267d2b;
}
.archive-top p {
font-size: 1.5rem;
line-height: 1.7;
margin-bottom: 1.5rem;
}
.article-list {
margin-bottom: 1.5rem;
padding: 1rem;
border: 1px solid #ddd;
}
.article-list:hover {
background-color: #eee;
}
.article-list a {
display: block;
text-decoration: none;
color: #333;
}
.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;
object-fit: cover;
}
.article-list .img-wrap .cat-data {
font-size: 1.5rem;
position: absolute;
top: 0;
right: 0;
padding: .3rem .5rem;
color: #fff;
background-color: #17591b;
}
.article-list .img-wrap .blogcat .cat-data {
background-color: #f00;
}
.article-list .text {
margin-left: 260px;
}
.article-list .text h2 {
font-size: 1.6rem;
margin-bottom: .5rem;
}
.article-list .text .article-date,
.article-list .text .article-author {
font-size: 1.2rem;
font-weight: bold;
display: inline-block;
margin-bottom: .5rem;
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;
}

/*ページネーション*/
.pagination {
margin: 2rem 0;
text-align: center;
}
.pagination ul {
font-size: 0;
}
.pagination ul li {
font-size: 1.5rem;
display: inline-block;
margin-right: .5rem;
}
.pagination ul li:last-child {
border: 0;
}
.pagination ul li a,
.pagination .current {
display: block;
padding: .5rem .8rem;
border: 1px solid #ccc;
}
.pagination ul li .prev,
.pagination ul li .next {
border: 0;
}
.pagination ul li a {
text-decoration: none;
color: #333;
}
.pagination ul li a:hover {
opacity: .6;
}
.pagination .current {
color: #fff;
background-color: #17591b;
}
/* sp */
@media only screen and (max-width: 767px){
  .pagination ul li {
  margin-right: 1rem;
  }
  .pagination ul li a,
  .pagination .current {
  padding: .5rem 1.2rem;
  }
}


/*---------------------------------------------------------
投稿・固定ページ
---------------------------------------------------------*/
.article-content {
margin-bottom: 2rem;
}
.article-content .article-info {
margin-bottom: .5rem;
}
.article-content .cat-data a {
font-size: 1.4rem;
margin-right: .5rem;
padding: .1rem .5rem;
text-decoration: none;
color: #fff;
background-color: #17591b;
}
.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.5rem;
line-height: 1.7;
}
.article-content p,
.article-content img,
.article-content table,
.article-content ul,
.article-content ol {
margin-bottom: 2rem;
}
.article-content h1 {
margin: 0 0 2rem;
padding: 1rem 2rem;
font-size: 2.8rem;
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Sawarabi Mincho", serif;
color: #17591b;
background-color: #e1f4e1;
}
.article-content h2 {
font-size: 2.0rem;
margin: 2.5rem 0 2rem;
padding: 0.5rem 0 0.5rem 1.5rem;
line-height: 1.6;
color: #17591b;
border-left: solid 5px #17591b;
}
.article-content h3 {
font-size: 1.8rem;
margin: 2.5rem 0 1rem;
background: transparent;
}
.article-content h4 {
font-size: 2.0rem;
margin: 2rem 0 1rem;
}
.article-content h4.title {
color: #267d2b;
border-bottom: 1px solid #267d2b;
}
.article-content h5 {
font-size: 1.8rem;
margin: 0 0 .3rem;
}
.article-content h6 {
font-size: 1.6rem;
}
.article-content .article-img {
margin-bottom: 2rem;
}
.article-content .article-img img {
display: block;
margin: 0 auto;
}
.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;}

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

/* ---------- トップ：トップスライダー ---------- */
.top_slider .slick-slide {
height: 430px;
}
.top_slider .slide-arrow {
top: 40%;
}
.top_slider .slick-dots li button::before {
color: #17591b;
}
.top_slider .slick-dots li.slick-active button::before {
color: #17591b;
}

@media print, screen and (min-width: 768px){
  .top_slider {
  position: relative;
  }
  .top_slider .slide_inlink:hover {
  opacity: 0.8;
  transition: .3s;
  }
  .top_slider .top_slider01 {
  margin: 0 auto;
  }
  .top_slider .slider01_wrap {
  width: 1000px;
  margin: 0 auto;
  display: block;
  position: relative;
  }
  .top_slider .slider02_wrap {
  width: 1000px;
  margin: 0 auto;
  display: block;
  position: relative;
  }
  .top_slider .slider03_wrap {
  width: 1000px;
  margin: 0 auto;
  display: block;
  position: relative;
  }
  .top_slider .top_slider01 img {
  width: 100%;
  margin: 0 auto;
  }
  .top_slider .top_slider02 img {
  width: 100%;
  margin: 0 auto;
  }
  .top_slider .top_slider03 img {
  width: 100%;
  margin: 0 auto;
  }
  .top_slider01 .top_title {
  position: absolute;
  left: 70px;
  top: 135px;
  }
  .top_slider01 .top_title_txt {
  font-size: 2.8rem;
  line-height: 1.2;
  }
  .top_slider01 .top_title_txt2 {
  margin: 1.2rem 0 .3rem;
  font-size: 3.0rem;
  display: inline-block;
  }
  .top_slider01 .top_title_txt3 {
  font-size: 4.5rem;
  line-height: 1.2;
  }
  .top_slider .slick-slider {
  overflow: hidden;
  display: block;
  width: 100%;
  height: 430px;
  z-index:10;
  }
  .top_slider .slick-list {
  max-width: 1000px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  background-color: #fef9ed;
  }
  .top_slider .slick-slide {
  display: none;
  float: left;
  width: 100%;
  min-height: 1px;
  margin: 0;
  opacity: 0.5;
  transition: .2s;
  }
  .top_slider .slick-slide.slick-active {
  opacity: 1;
  transition: .2s;
  }
  .top_slider .slick-dots {
  bottom: 0;
  }
}
/* sp */ @media only screen and (max-width: 767px){
  .top_slider {padding: 0;}
  .top_slider .slick-slider {
  width: 100%;
  height: auto;
  margin: 0 auto;
  }
  .top_slider .slider-box {
  position: relative;
  }
  .top_slider .sliderbgSp{
  background-repeat: no-repeat !important;
  background-size: 100% auto!important;
  /* height: 0; */
  height: auto;
  margin: 0;
  /* padding-top: 4.7% !important;*/
  padding: 0;
  width: 100%;
  display: block;
  border-radius: 10px;
  position: relative;
  }
  .top_slider .top_slider01 {
  width: 100%;
  }
  .top_slider01 .top_title {
  position: absolute;
  left: 5%;
  top: 28%;
  }
  .top_slider01 .top_title h1 {
  line-height: 1.2;
  }
  .top_slider01 .top_title_txt {
  font-size: 4.3vw;
  line-height: 1.2;
  }
  .top_slider01 .top_title_txt2 {
  margin: 0 0 .3rem;
  font-size: 4.5vw;
  display: inline-block;
  }
  .top_slider01 .top_title_txt3 {
  font-size: 7.8vw;
  line-height: 1.2;
  }
  .top_slider .slide-arrow {
  width: 8%;
  }
  .top_slider .next-arrow {
  right: 2%;
  }
  .top_slider .prev-arrow {
  left: 2%;
  }
}




/* ---------- トップ：メインビジュアル ---------- */
#main_catch_outer{
width:1000px;
margin:0 auto;
margin-top: -2px;
}
#main_catch_inner{
width:1000px;
height:400px;
margin:auto;
padding: 135px 0 0 70px;
position: relative;
background-image: url(./images/top_vis.jpg);
background-size: 100% auto;
background-position: left top;
background-repeat: no-repeat;
}
#main_catch_inner .top_title_txt {
font-size: 2.8rem;
line-height: 1.2;
}
#main_catch_inner .top_title_txt2 {
margin: 1.2rem 0 .3rem;
font-size: 3.0rem;
display: inline-block;
}
#main_catch_inner .top_title_txt3 {
font-size: 4.5rem;
line-height: 1.2;
}
/*sp*/
@media only screen and (max-width: 767px){
	#main_catch_outer{
	width:100%;
	margin:auto;
	}
	#main_catch_inner{
	width:100%;
	height:auto;
	margin:auto;
	padding: 0;
  background: none;
	}
  #main_catch_inner .top_title {
  position: absolute;
  left: 4%;
  top: 29%;
  }
  #main_catch_inner .top_title h1 {line-height: 1.1;}
  #main_catch_inner .top_title_txt {font-size: 4.2vw;}
  #main_catch_inner .top_title_txt2 {font-size: 4.8vw; margin: 0 0 .5rem}
  #main_catch_inner .top_title_txt3 {font-size: 8.3vw;}
}







/* ---------- トップ：新着情報 ---------- */
.top_info .top_infotitle{
width: 100%;
line-height: 60px;
background-color: #17591b;
position: relative;
}
.top_info .top_newslink a:hover{
color: #fff;
opacity: .7;
transition: .3s;
}
.top_info table {
width: 100%;
margin-bottom: 50px;
}
.top_info .top_infotitle .top_newslink {
position: absolute;
top:50%;
right: 20px;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}
.news-list th, .news-list td {
padding: 8px 15px 8px 0;
border-bottom: 1px dotted #267d2b;
}
.news-list th {
width: 7em;
}
.news-list th p {
font-weight: normal;
}
.news-list .news_cat {
}
.news-list .news_cat p {
padding: 2px 0;
text-align: center;
color: #fff;
font-weight: bold;
display: block;
font-size: 1.3rem;
}
.news_title a {
color: #333;
text-decoration: none;
}
.news_title a:hover {
color: #17591b;
text-decoration: underline;
}
/* 各カテゴリの背景色設定 */
.newscat, .article-list .img-wrap .newscat .cat-data {background-color: #ff9900;}
.importantcat, .article-list .img-wrap .importantcat .cat-data {background-color: red;}
.toeflcat, .article-list .img-wrap .toeflcat .cat-data {background-color: #003082;}
.toeflitpcat, .article-list .img-wrap .toeflitpcat .cat-data {background-color: #C2571A;}
.ieltscat, .article-list .img-wrap .ieltscat .cat-data {background-color: #e31837;}
.grecat, .article-list .img-wrap .grecat .cat-data {background-color: #630f54;}
.satcat, .article-list .img-wrap .satcat .cat-data {background-color: #009cde;}
.columncat, .article-list .img-wrap .columncat .cat-data {background-color: #0087b3;}

/*sp*/
@media only screen and (max-width: 767px){
  .top_info .top_infotitle{
  padding-left: 5%;
  }
  .top_info table {
  margin: 0 auto 50px;
  }
  .news-list th, .news-list td {
  padding: 1rem;
  display: block;
  }
  .news-list th {
  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 {
  padding: 2px 1rem;
  }
  .news-list .news_title {
  width: 100%;
  padding-top: 0;
  border-bottom: 1px dotted #267d2b;
  }
}


/* ---------- トップ：試験リンク その他の対策講座：リンク一覧共通---------- */
.link01 {
width: 415px;
padding: 35px;
background-color: #e9facf;
}
.top_cont01 h2 {
text-align: center;
margin-bottom: 20px;
}
.link01_btn {
margin: 35px 0 0;
}
span.link01_btnl {
width: 250px;
height: 65px;
line-height: 65px;
text-align: center;
background-color: #17591b;
display: block;
}
span.link01_btnr {
width: 94px;
height: 65px;
margin-left: 1px;
padding: 15px 0 0;
text-align: center;
background-color: #0c390f;
display: block;
}
.link02 {
width: 415px;
padding: 35px;
background-color: #f8e2c5;
}
.link02_btn {
margin: 35px 0 0;
}
.link02_btn span.link01_btnl {
background-color: #db7a00;
}
.link02_btn span.link01_btnr {
background-color: #bf5005;
}
.top_cont02 {
padding: 25px 35px;
background-color: #fcf8d0;
}
.link03 li {
width: 235px;
margin-right: 40px;
}
.link03 li:last-child {
margin-right: 0;
}
.top_cont02 h2 {
text-align: center;
margin-bottom: 15px;
}
.link03_btn {
margin: 20px 0 0;
}
span.link03_btnl {
width: 140px;
height: 60px;
padding-top: 10px;
line-height: 1.4;
text-align: center;
background-color: #c6a93d;
display: block;
}
span.link03_btnr {
width: 94px;
height: 60px;
margin-left: 1px;
padding: 15px 0 0;
text-align: center;
background-color: #6c5b19;
display: block;
}

/*sp*/
@media only screen and (max-width: 767px){
  .link01 {
  width: 100%;
  padding: 25px 5%;
  margin-bottom: 20px;
  }
  .top_cont01 h2 {
  margin-bottom: 1rem;
  }
  .link01_btn {
  margin: 15px 0 0;
  }
  span.link01_btnl {
  width: 79%;
  height: 65px;
  }
  span.link01_btnr {
  width: 20%;
  margin-left: 1%;
  padding: 15px 3% 0 0;
  }
  span.link01_btnr.arrow {
  background-size: 15% auto;
  background-position: right 6% center;
  }
  .link02 {
  width: 100%;
  padding: 25px 5%;
  margin-bottom: 4rem;
  }
  .link02_btn {
  margin: 15px 0 0;
  }
  .top_cont02 {
  padding: 3rem 5% 1rem;
  margin-bottom: 2em;
  }
  .link03 li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 2em;
  }
  .top_cont02 h2 {
  margin-bottom: 1rem;
  }
  span.link03_btnl {
  width: 79%;
  }
  span.link03_btnr {
  width: 20%;
  margin-left: 1%;
  padding-right: 3%;
  }
  span.link03_btnr.arrow {
  background-size: 15% auto;
  background-position: right 6% center;
  }
}


/* ---------- トップ：特別コース一覧 ---------- */
.top_cont03 h2 {
width: 11.5em;
margin: 60px auto 0;
}
.title_border {
display: flex;
align-items: center;
}
.title_border:before,
.title_border:after {
border-top: 1px solid #17591b;
content: "";
flex-grow: 1;
}
.title_border:before {
margin-right: 1rem;
}
.title_border:after {
margin-left: 1rem;
}
.top_courselist li {
width: 280px;
margin-right: 120px;
margin-bottom: 50px;
padding-bottom: 4em;
position: relative;
}
.top_courselist li:nth-child(even) {
margin-right: 0;
}
.top_courselist li .course_link a {
width: 8em;
line-height: 2.4;
background-color: #267d2b;
text-align: center;
display: block;
position: absolute;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
}

/*sp*/
@media only screen and (max-width: 767px){
  .top_cont03 h2 {
  width: 100%;
  margin: 6.5rem auto 0;
  }
  .top_courselist li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 4rem;
  }
}

/* ---------- トップ：INTRODUCTION ---------- */
.top_cont04 h2 {
width: 11.5em;
margin: 0 auto;
}
.top_cont04 .top_introlist {
height: 360px;
flex-direction: column;
flex-wrap: wrap;
}
.top_cont04 .top_introlist.box2 {
height: 180px;
}
.top_introlist li a:hover {
text-decoration: none;
}
.top_introlist li.text_right a {
width: 430px;
height: 180px;
padding-left: 215px;
text-decoration: none;
background-color: #17591b;
background-image: url(./images/int01.jpg);
background-size: 215px 180px;
background-position: left top;
background-repeat: no-repeat;
display: block;
}
.top_introlist li.text_right .intro_text {
height: 180px;
padding: 25px 20px 20px;
position: relative;
background-color: #17591b;
}
.top_introlist li.text_right .intro_text:after{
content: "";
width: 0px;
height: 0px;
margin: auto;
border-style: solid;
border-color: transparent #17591b transparent transparent;
border-width: 25px 40px 25px 0;
position: absolute;
left: -20px;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}

.top_introlist li.text_left a {
width: 430px;
height: 180px;
padding-right: 215px;
text-decoration: none;
background-color: #db7a00;
background-image: url(./images/int01.jpg);
background-size: 215px 180px;
background-position: right top;
background-repeat: no-repeat;
display: block;
}
.top_introlist li.text_left .intro_text {
height: 180px;
padding: 30px 20px 20px;
position: relative;
background-color: #db7a00;
}
.top_introlist li.text_left .intro_text:after{
content: "";
width: 0px;
height: 0px;
margin: auto;
border-style: solid;
border-color: transparent transparent transparent #db7a00;
border-width: 25px 0 25px 40px;
position: absolute;
right: -20px;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}
.top_introlist .intro_text h3 {
width: 100%;
display: inline-block;
border-bottom: 1px solid #fff;
padding-bottom: 10px;
}
.top_introlist li a.intro_img01 {background-image: url(./images/int01.jpg);}
.top_introlist li a.intro_img02 {background-image: url(./images/int02.jpg);}
.top_introlist li a.intro_img03 {background-image: url(./images/int03.jpg);}
.top_introlist li a.intro_img04 {background-image: url(./images/int04.jpg);}
.top_introlist li a.intro_img05 {background-image: url(./images/int05.jpg);}
.top_introlist li a.intro_img06 {background-image: url(./images/int06.jpg);}

/*sp*/
@media only screen and (max-width: 767px){
  .top_cont04 h2 {
  width: 100%;
  }
  .top_cont04 .top_introlist {
  height: auto;
  flex-wrap: nowrap;
  }
  .top_cont04 .top_introlist.box2 {
  height: auto;
  }
  .top_introlist li.text_right a {
  width: 100%;
  height: auto;
  padding-left: 50%;
  background-size:auto 100%;
  }
  .top_introlist li.text_right .intro_text {
  height: 180px;
  padding: 1.5rem;
  font-size: 3.5vw;
  line-height: 1.5;
  }
  .top_introlist li.text_right .intro_text:after{
  border-width: 1.5rem 2rem 1.5rem 0;
  left: -15px;
  }
  .top_introlist li.text_left a {
  width: 100%;
  height: auto;
  padding-right: 50%;
  background-size: auto 100%;
  }
  .top_introlist li.text_left .intro_text {
  height: 180px;
  padding: 1.5rem;
  font-size: 3.5vw;
  line-height: 1.5;
  position: relative;
  background-color: #db7a00;
  }
  .top_introlist li.text_left .intro_text:after{
  border-width: 1.5rem 0 1.5rem 2rem;
  right: -15px;
  border-color: transparent transparent transparent #db7a00;
  }
  /* 2個の場合は2つ目の項目がSPではオレンジで表示 */
  .top_introlist.box2 li:nth-child(even).text_right a {
  width: 100%;
  height: auto;
  padding-left: 0;
  padding-right: 50%;
  background-size: auto 100%;
  background-position: right top;
  }
  .top_introlist.box2 li:nth-child(even) .intro_text {
  position: relative;
  background-color: #db7a00;
  }
  .top_introlist.box2 li:nth-child(even) .intro_text:after{
  border-color: transparent transparent transparent #db7a00;
  border-width: 1.5rem 0 1.5rem 2rem;
  right: -15px;
  left: auto;
  }
}

/* ---------- 講座情報リンク一覧 ---------- */
.top_infolinks li {
width: 420px;
margin-right: 20px;
margin-bottom: 30px;
padding: 10px 15px 10px 175px;
position: relative;
}
.top_infolinks li:nth-child(even) {
margin-right: 0;
}
.top_infolinks li .infolinks_img {
width: 160px;
height: auto;
position: absolute;
left: 0;
top: 0;
}
.top_infolinks li .infoliks_btn a {
width: 8em;
margin: 10px auto;
line-height: 2.4;
background-color: #267d2b;
text-align: center;
display: block;
}

/*sp*/
@media only screen and (max-width: 767px){
  .top_infolinks li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 3rem;
  padding: 0 1.5rem 1.5rem 50%;
  }
  .top_infolinks li:nth-child(even) {
  margin-right: 0;
  }
  .top_infolinks li .infolinks_img {
  width: 48%;
  }
}


.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;
	}
}




/*---------------------------------------------------------
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 {
    float: none;
    width: 100%;
    margin-right: 0;
  }
  .contents,
	.contents_full {
    margin-bottom: 1.5rem;
  }
}

@media(max-width: 600px) {
  html {
    font-size: .65rem;
  }
	/*.header-inner,
	.container,
	.footer-inner {
		padding: .8rem;
	}*/
	.contents {
    margin-bottom: 1rem;
  }

  /*---------------------------------------------------------
  記事一覧
  ---------------------------------------------------------*/
  .archive-top h1 {
    font-size: 2.0rem;
    margin-bottom: 1rem;
  }
  .archive-top p {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .article-list {
    padding: .5rem;
  }
  .article-list .img-wrap img {
    width: 132px;
    height: 88px;
  }
  .article-list .img-wrap .cat-data {
    font-size: 1.3rem;
  }
  .article-list .text {
    margin-left: 140px;
    padding: 0;
  }
  .article-list .text h2 {
    font-size: 1.4rem;
    margin-bottom: 0;
  }
  .article-list .text p {
    display: none;
  }
  .article-list .text .article-date,
  .article-list .text .article-author {
    font-size: 1rem;
    margin-bottom: 0;
  }
  .article-list .text .article-date {
    margin-right: .2rem;
  }

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


/*---------------------------------------------------------
LINGO L.L.C.ページ共通スタイル
---------------------------------------------------------*/
.contents_full {
padding-bottom: 5rem;
}
.page_title {
width: 100%;
height: 200px;
text-align: center;
background-image: url(./images/img_page_topview.jpg);
background-size: cover;
background-position: center;
background-repeat: no-repeat;
position: relative;
}
.page_title h1 {
display: inline-block;
padding: 1.5rem 4rem;
font-size: 3rem;
background-color:	rgba(13,61,16,0.8);
text-align: center;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
}
/*sp*/
@media only screen and (max-width: 767px){
  .contents_full {
  padding-bottom: 2rem;
  }
  .page_title h1 {
  width: 70%;
  padding: 1rem;
  font-size: 2.5rem;
  }
}

/*---------------------------------------------------------
パンくず
---------------------------------------------------------*/
.breadcrumbs span {font-size: 1.3rem;}

/* --------------llc_contentデザインテンプレート ------------------*/
#llc_content .cont_title {
padding: 0 20px;
margin: 0;
border-left: 5px solid #17591b;
}
#llc_content .cont_title02 {
}
.contents_full .bg_wh {
padding-bottom: 4rem;
}
/*sp*/
@media only screen and (max-width: 767px){
  .contents_full .bg_wh {
  padding-bottom: 2rem;
  }
}

/*---------------------------------------------------------
LINGOの強みプロフィール写真
---------------------------------------------------------*/
/*sp*/
@media only screen and (max-width: 767px){
  .profile_top p {
  width: 45%;
  float: right;
  }
  .profile_top p.profile_img {
  width: 50%;
  float: left;
  }
}

/*---------------------------------------------------------
コース詳細情報
---------------------------------------------------------*/
#llc_content .course_info h2 {
padding: 0 20px;
margin: 0 0 1rem;
border-left: 5px solid #17591b;
}
#llc_content .course_read img {
width: 285px;
height: auto;
margin: 0 0 2rem 2rem;
display: block;
}

/*sp*/
@media only screen and (max-width: 767px){
  #llc_content .course_read img {
  width: 90%;
  margin: 1rem auto;
  }
}

/*---------------------------------------------------------
各コース新着情報
---------------------------------------------------------*/
.course_news table {
width: 100%;
border-top: 3px solid #17591b;
}
.course_news th, .course_news td {
padding: 8px 15px 8px 0;
border-bottom: 1px dotted #267d2b;
}
.course_news th {
width: 7em;
}
.course_news th p {
font-weight: normal;
}
.course_news .course_newslink a {
width: 15em;
margin-left: auto;
margin-right: auto;
border: 2px solid #fff;
border-radius: 5px;
background-color: #267d2b;
box-shadow: 1px 1px 4px rgba(0,0,0,0.5);
}

/*sp*/
@media only screen and (max-width: 767px){
  .course_news table {
  margin: 0 auto;
  }
  .course_news th, .course_news td {
  padding: 1rem 1rem 0;
  display: block;
  }
  .course_news th {
  padding-right: 0;
  border-bottom: 0;
  display: inline-block;
  }
  .course_news .news_title {
  width: 100%;
  padding-top: 0;
  padding-bottom: 1rem;
  border-bottom: 1px dotted #267d2b;
  }
}

/*---------------------------------------------------------
各コース情報
---------------------------------------------------------*/
.course_title {
width: 100%;
padding: 1.5rem 1.5rem 1.5rem 75px;
border-top: 1px solid #267d2b;
border-bottom: 1px solid #267d2b;
background-color: #d1edd3;
background-image: url(./images/img_courseico.gif);
background-size: 36px auto;
background-position: 25px center;
background-repeat: no-repeat;
}
.course_list .course_gray {
width: 100%;
padding: 2rem 0;
background-color: #f3f3f3;
}
.course_list ul li {
margin-bottom: 2rem;
background-color: #fff;
}
.course_list ul li .course_name {
width: 100%;
height: 85px;
padding: 15px 20px 0 90px;
background-image: url(./images/img_coursename_ico.png), url(./images/img_coursetitlebg.gif);
background-size: 50px auto, 800px auto;
background-position: 20px 20px, left top;
background-repeat: no-repeat;
}
.course_list ul li .course_detail {
padding: 15px 28% 25px 3%;
position: relative;
}
.course_list ul li .course_img01 img {
width: 20%;
height: auto;
position: absolute;
left: 5%;
top: 15px;
}
.course_list a {
color: #333;
}
.course_list a:hover {
color: inherit;
}
.course_list ul li .course_listlink .link_wh {
width: 10em;
background-color: #267d2b;
position: absolute;
bottom: 20%;
right: 5%;
}

/*sp*/
@media only screen and (max-width: 767px){
  .course_list ul li .course_name {
  height: auto;
  padding: 1rem 1rem 1rem 18%;
  background-size: 10% auto, cover;
  background-position: 5% 20px, center;
  }
  .course_list ul li .course_detail {
  padding: 2rem 5%;
  }
  .course_list ul li .course_img01 img {
  width: 40%;
  height: auto;
  float: left;
  margin-bottom: 1rem;
  margin-right: 1rem;
  position: relative;
  left: auto;
  top: auto;
  }
  .course_list ul li .course_listlink .link_wh {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  bottom: auto;
  right: auto;
  }
}

/*---------------------------------------------------------
各ページ特別対策講座一覧
---------------------------------------------------------*/
.course_special h2 {
width: 11.5em;
margin: 60px auto 0;
}
.course_special li {
width: 280px;
margin-right: 120px;
margin-bottom: 50px;
padding-bottom: 4em;
position: relative;
}
.course_special li:nth-child(even) {
margin-right: 0;
}
.course_special li .course_link a {
width: 8em;
line-height: 2.4;
background-color: #267d2b;
text-align: center;
display: block;
position: absolute;
left: 50%;
bottom: 0;
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
}

/*sp*/
@media only screen and (max-width: 767px){
.course_special h2 {
width: 90%;
margin: 4rem auto 0;
}
.course_special li {
width: 90%;
margin: 0 auto 4rem;
}
.course_special li:nth-child(even) {
margin-right: auto;
}
}

/*---------------------------------------------------------
各ページ特別対策講座(その他の講座ページ)
---------------------------------------------------------*/
.othercourse-sp {
padding: 2rem 0 5rem;
background-color: #fff;
}
.othercourse-sp .course_special h2 {
margin: 2rem auto 0;
}

/*---------------------------------------------------------
メール添削講座リンク
---------------------------------------------------------*/
.wrmail {
background-image: url(./images/img_mailbg.gif);
background-size: 150px auto;
background-position: left top;
background-repeat: repeat;
}
.wrmail h2 {
width: 100%;
padding: 1.5rem;
background-color: #d3ecd4;
}
.wrmail .wrmail_box {
padding: 2rem 30% 2rem 3rem;
position: relative;
}
.wrmail .wrmail_read img {
width: 25%;
position: absolute;
top: 2rem;
right: 2rem;
}
.wrmail .wrmail_link a {
width: 10em;
}

/*sp*/
@media only screen and (max-width: 767px){
  .wrmail .wrmail_box {
  padding: 2rem 5%;
  }
  .wrmail .wrmail_read img {
  width: 30%;
  margin: 1rem;
  float: right;
  position: relative;
  top: auto;
  right: auto;
  }
}

/*---------------------------------------------------------
メール添削詳細
---------------------------------------------------------*/
.wrmail2 {
background-image: url(./images/img_mailbg.gif);
background-size: 150px auto;
background-position: left top;
background-repeat: repeat;
}
.wrmail2 h2 {
width: 100%;
padding: 1.5rem;
background-color: #d3ecd4;
text-align: center;
}
.wrmail2 .wrmail_box {
padding: 2rem 0 4rem;
position: relative;
}
.wrmail2 .wrmail_link a {
width: 10em;
}

/*sp*/
@media only screen and (max-width: 767px){
  .wrmail2 .wrmail_box {
  padding: 2rem 5%;
  }
}


/*---------------------------------------------------------
ページ内リンク用
---------------------------------------------------------*/
.short-link {
justify-content: center;
}
.short-link .arrow-u {
margin: 1rem 0.8rem;
padding: 0.5rem 4rem 1.8rem;
}


/*---------------------------------------------------------
ページ内リンク用２行用
---------------------------------------------------------*/
.short-link02 {
justify-content: center;
}
.short-link02 .arrow-u {
height: 100%;
margin: 1rem;
padding: 0.5rem 4rem 0;
}
/*PC*/
@media only screen and (min-width: 768px){
  .short-link02 .arrow-u.line2 {
  padding-top: 2rem;
  }
}
/*sp*/
@media only screen and (max-width: 767px){
  .short-link02 .arrow-u {
  padding: 0.5rem 4rem 2rem;
  margin: 0 auto;
  }
}


/*---------------------------------------------------------
一時帰国生向け講座
---------------------------------------------------------*/
.returnee-link {
justify-content: center;
}
.returnee-link .arrow-u {
margin: 1rem 0.5rem;
padding: 0.5rem 4rem 1.8rem;
font-size: 1.8rem;
}
.returnee-point li {
width: 410px;
margin-bottom: 4rem;
}
.returnee-point li:nth-child(even) {
margin-right: 0;
}
.returnee-point .circle {
width: 140px;
height: 140px;
margin: 0 auto;
border-radius: 50%;
border: 3px solid #17591b;
background: #267d2b;
display: inline-block;
position: relative;
vertical-align: middle;
}
.returnee-point .circle p {
width :130px;
text-align: center;
display: inline-block;
position: absolute;
left: 50%;
top: 50%;
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.returnee_txt {
width: 250px;
margin-left: 10px;
display: inline-block;
vertical-align: middle;
}
/*sp*/
@media only screen and (max-width: 767px){
  .returnee-point li {
  width: 95%;
  margin-bottom: 2rem;
  }
  .returnee-point .circle {
  margin: 0 auto;
  display: block;
  }
  .returnee_txt {
  width: 100%;
  margin: 1.5rem auto 0;
  display: block;
  }
}


/*---------------------------------------------------------
各固定ページ「無料体験レッスン」セクション
---------------------------------------------------------*/
.freelesson {
background-color: #feede5;
padding-bottom: 3rem;
}
.freelesson .freelesson_title {
padding: 1rem 1rem 1rem 100px;
background-color: #ee6c6a;
background-image: url(./images/img_beginnerico.gif);
background-size: 50px auto;
background-position: 30px center;
background-repeat: no-repeat;
}
.freelesson h2 {
width: 100%;
}
.freelesson .freelesson_box {
padding: 3rem 3rem 3rem 40%;
position: relative;
}
.freelesson .freelesson_read img {
width: 31%;
margin-bottom: 2rem;
position: absolute;
top: 3rem;
left: 3rem;
}
.freelesson .red_bnr {
margin-top: 3rem;
padding: 1.5rem;
}


/*---------------------------------------------------------
各投稿ページ「無料体験レッスン」セクション
---------------------------------------------------------*/
.article-content .freelesson .freelesson_box {
padding: 2rem 3rem 1rem 40%;
position: relative;
}
.article-content .freelesson {
width: 100%;
}
.article-content .freelesson p {
margin: 0;
padding: 0;
}
.article-content .freelesson h2 {
font-size: 1.8rem!important;
color: #fff;
padding: 0;
line-height: 1.6;
border: 0;
margin: 0;
}
.article-content .freelesson .red_bnr {
margin-top: 0;
}
.article-content .freelesson .red_bnr a {
width: 80%;
}

/*sp*/
@media only screen and (max-width: 767px){
  .freelesson .freelesson_title {
  padding: 1rem 1rem 1rem 25%;
  background-size: 15% auto;
  background-position: 6% center;
  }
  .freelesson .freelesson_box, .article-content .freelesson .freelesson_box {
  padding: 2rem 5%;
  }
  .freelesson .freelesson_read img {
  width: 45%;
  margin: 1rem;
  float: left;
  position: relative;
  top: auto;
  left: auto;
  }
  .freelesson .red_bnr {
  margin: 0 auto;
  }
  .freelesson .red_bnr a {
  padding: 1.5rem 2.5rem 1.5rem 1.5rem;
  }
}


/*---------------------------------------------------------
講座一覧リスト
---------------------------------------------------------*/
table.table01 th, table.table01 td {
height: auto!important;
padding: 0.8rem 1.2rem;
border: 1px solid #276d2b;
vertical-align: middle;
font-size: 1.5rem;
}
table.table01 thead th,table.table01 thead td {
font-size: 1.6rem;
font-weight: bold;
text-align: center;
background-color: #267d2b;
color: #fff;
}
table.table01 tr {
height: auto!important;
}
table.table01 .w12 {width: 12%;}
table.table01 .w18 {width: 18%;}
table.table01 .w45 {width: 45%;}
/*sp*/
@media only screen and (max-width: 767px){
  table.table01 thead th,table.table01 thead td {
  font-size: 1.4rem;
  padding: 0.4rem;
  }
  table.table01 th, table.table01 td {
  font-size: 1.3rem;
  padding: 0.4rem;
  }
}


/*---------------------------------------------------------
講座詳細表(固定ページ)
---------------------------------------------------------*/
.container table.table02 th, .container table.table02 td {
height: auto!important;
padding: 1rem;
border: 1px solid #276d2b;
vertical-align: middle;
font-size: 1.5rem;
}
.container table.table02 tr {
height: auto!important;
}
.container table.table02 th {
width: 24%!important;
font-weight: bold;
}
.container table.table02 td {
width: 76%!important;
}

/*-- IELTS Writing 総合対策（映像＆添削講座） --*/
.container table.table02.writing_table td {
width: 38%!important;
}


/*---------------------------------------------------------
講座詳細表（投稿ページ）
---------------------------------------------------------*/
.container table.table03 th, .container table.table03 td {
height: auto!important;
padding: 0.5rem 1rem;
border: 1px solid #276d2b;
}
.container table.table03 tr {
height: auto!important;
}
.container table.table03 th {
width: 30%!important;
}
.container table.table03 td {
width: 70%!important;
}


/*---------------------------------------------------------
FAQ-Q&A よくあるご質問
---------------------------------------------------------*/
.faq dl {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 0 1rem 0;
}
/* 質問 */
.faq dt {
  margin: 0;
  color: #17591b;
	font-weight: bold;
	line-height: 1.6;
	position: relative;
	padding: 1rem 2rem 0 2.5rem;
	text-indent: 2rem;
	border-radius: 5px 5px 0 0;
	background: #e1f4e1;
}
.faq dt::before {
	font-family: serif;
	font-size: 2.4rem;
	margin-left: -2rem;
	padding-right: 1.5rem;
	content: 'Q';
}
/* 答え */
.faq dd {
  padding: 0 0 0 5.5rem;
  margin-bottom: 2rem;
	position: relative;
  border: 10px solid #e1f4e1;
	border-radius: 0 0 0.5rem 0.5rem;
}
.faq dd::before {
	font-family: serif;
	font-size: 2.4rem;
	position: absolute;
	margin: 0.4rem 0 0 -3.5rem;
  color: #17591b;
	padding: 0;
	content: 'A';
}
.faq dd p {
	margin: 1.5rem 1.5rem 1.5rem 0;
  line-height: 1.8;
}

/*sp*/
@media only screen and (max-width: 767px){
  .faq .short-link p{
  margin-bottom: 1rem;
  }
  .faq .short-link p .arrow-u{
  width: 100%;
  margin: 0;
  }
}


/*---------------------------------------------------------
受講生の声・スコア・合格発表情報
---------------------------------------------------------*/
.score-list *, .score-list *:after, .score-list *:before {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.score-list {
border-top: 2px solid #267d2b;
}
.score-list .socore-listtab {
position: relative;
overflow: hidden;
width: 100%;
margin-bottom: 1px;
border-bottom: 1px dotted #267d2b;
}
.score-list .socore-listtab input {
position: absolute;
opacity: 0;
}
/* 名前・スコア */
.score-list .socore-listtab label {
margin: 0;
padding: 0.5em 10em 0.5em 1em;
font-size: 1.5rem;
line-height: 1.6;
position: relative;
display: block;
cursor: pointer;
}
.score-list .socore-listtab .com-label {
margin-top: -19.5px;
padding: 0.5rem 2rem 0.5rem 0.5rem;
font-size: 1.4rem;
color: #fff;
background: #267d2b;
border: 1px solid #ccc;
border-radius: 5px;
position: absolute;
top: 50%;
right: 10px;
}
/* comOFFの場合 */
.score-list .socore-listtab.comOFF label {cursor: default;}
.score-list .socore-listtab.comOFF .com-label {display: none;}
/* コメント */
.score-list .socore-listtab .socore-listtab-content {
width: 95%;
margin: 0 auto;
overflow: hidden;
max-height: 0;
/*-webkit-transition: max-height 0.2s ease;
transition: max-height 0.2s ease;*/
color: #17591b;
background: #e7fde8;
}
/* comOFFの場合 */
.score-list .socore-listtab.comOFF .socore-listtab-content {display: none;}
.score-list .socore-listtab .socore-listtab-content p {
margin: 1em;
font-size: 1.5rem;
}
/* コメントを開いた時の仕様 */
/* --アイコン */
.score-list .socore-listtab input:checked ~ label {
color: inherit;
}
/* --コメントの最大高さ */
.score-list .socore-listtab input:checked ~ .socore-listtab-content {
max-height: 100em;
margin-bottom: 2rem;
}
/* コメントをクリックした時のアイコンの動き */
.score-list .socore-listtab label::after {
line-height: 1.6;
position: absolute;
top: 50%;
right: 0;
display: block;
width: 3em;
margin-top: -12.5px;
-webkit-transition: all 0.2s ease;
transition: all 0.2s ease;
text-align: center;
color: #fff;
}
.score-list .socore-listtab input[type=checkbox] + label::after {
content: '▼';
}
/* comOFFの場合 */
.score-list .socore-listtab.comOFF input[type=checkbox] + label::after {content: '';}
.score-list .socore-listtab input[type=checkbox]:checked + label::after {
-webkit-transform: rotateX(180deg);
transform: rotateX(180deg);
top: 45%;
}

/* 過去サイトのスコアページの場合 */
.before_score .score-list .socore-listtab label {
cursor: default;
}
.before_score .score-list .socore-listtab .socore-listtab-content {
max-height: none;
margin: 1rem auto;
padding: 1px;
overflow: inherit;
cursor: default;
}
.before_score .score-list .socore-listtab .com-label {
display: none;
}


/*sp*/
@media only screen and (max-width: 767px){
  /* 名前・スコア */
  .score-list .socore-listtab label {
  padding: 0.5em 1em 0.5em 1em;
  }
  .score-list .socore-listtab .com-label {
  width: 80%;
  margin-top: 1rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0.5rem 2rem 0.5rem 0.5rem;
  position: relative;
  top: auto;
  right: auto;
  display: block;
  text-align: center;
  }
  .score-list .socore-listtab label::after {
  top: auto;
  bottom: 15px;
  right: 15%;
  }
  /* comOFFの場合 */
  .score-list .socore-listtab.comOFF input[type=checkbox] + label::after {content: '';}
  .score-list .socore-listtab input[type=checkbox]:checked + label::after {
  top: auto;
  }
}


/*---------------------------------------------------------
合格体験談・合格校一覧
---------------------------------------------------------*/
.experience-list li {
font-size: 1.4rem;
list-style: disc;
margin: 1rem 0 0;
}
table.table04 th, table.table04 td {
height: auto!important;
padding: 0.8rem 1.2rem;
border-top: 1px solid #276d2b;
border-bottom: 1px solid #276d2b;
vertical-align: middle;
font-size: 1.5rem;
}
table.table04 thead th,table.table04 thead td {
font-size: 1.5rem;
font-weight: bold;
background-color: #267d2b;
color: #fff;
}
table.table04 tr {
height: auto!important;
}
table.table04 .w12 {width: 12%;}
table.table04 .w18 {width: 18%;}
table.table04 .w45 {width: 45%;}
/*sp*/
@media only screen and (max-width: 767px){
  table.table04 thead th,table.table04 thead td {
  font-size: 1.4rem;
  padding: 0.4rem;
  }
  table.table04 th, table.table04 td {
  font-size: 1.3rem;
  padding: 0.4rem;
  }
}


/*---------------------------------------------------------
合格体験談（投稿ページ）
---------------------------------------------------------*/
/*pc*/
@media only screen and (min-width: 768px){
  .article-content .exp-toptxt {
  }
  .article-content .exp-toptxt img {
  width: 33%;
  margin: 0 0 3rem 1rem;
  display: block;
  }
}


/*---------------------------------------------------------
会社概要
---------------------------------------------------------*/
/* ステップ矢印 */
ul.access-step {
justify-content: normal;
}
ul.access-step li {
position: relative;
}
.dr_arrow::after{
content: "";
position: absolute;
right: -38px;
top: 60px;
border-top: 15px solid #267d2b;
border-right: 25px solid transparent;
border-left: 25px solid transparent;
transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-webkit-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.access-step li:last-child.dr_arrow::after {
display: none;
}
/*pc */
@media print, screen and (min-width: 768px){
  ul.access-step li {
  width: 195px;
  margin-right: 25px;
  }
  .access-step li:nth-child(4n) {
  margin-right: 0;
  }
  .access-step li:nth-child(4n).dr_arrow::after {
  display: none;
  }
}

/*sp*/
@media only screen and (max-width: 767px){
  ul.access-step li {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 50px;
  }
  .dr_arrow::after {
  border-top: 25px solid #267d2b;
  border-right: 40px solid transparent;
  border-left: 40px solid transparent;
  left: 50%;
  right: auto;
  top: auto;
  bottom: -36px;
  transform: translateX(-50%) rotate(0);
  -moz-transform: translateX(-50%) rotate(0);
  -webkit-transform: translateX(-50%) rotate(0);
  -ms-transform: translateX(-50%) rotate(0);
  transform: translateX(-50%) rotate(0);
  }
}


/*---------------------------------------------------------
お問い合わせフォーム共通
---------------------------------------------------------*/
.form_title {
width: 100%;
padding: 1rem;
background-color: #267d2b;
display: block;
}
.form-title02 {
width: 100%;
padding: 1rem 2rem;
background-color: #d1edd3;
}
.contact-table th.form-title03 {
padding: 3rem 2rem 0.5rem;
font-size: 2.0rem;
}
.contact-table th{
width: 25%;
font-size: 1.5rem;
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 .aten01{
width: 100%;
font-size: 1.3rem;
display: block;
box-sizing: border-box;
}
.contact-table th.must{
position: relative;
}
.contact-table th.must:before{
content: "必須";
width: 2.8em;
font-size: 1.3rem;
text-align: center;
background: #e50000;
color: #fff;
font-weight: bold;
display: inline-block;
border-radius: 3px;
position: absolute;
top: 23px;
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 #50ac56;
border: 1px solid #50ac56;
}
.contact-table td.select-course 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 input[name="your-name"] {width: 15em; display: inline-block;}
.contact-table input[name="post-num"] {width: 15em; display: inline-block;}
.contact-table input[name="your-tel"] {width: 15em; display: inline-block;}
.contact-table input[name="your-email"] {width: 20em; display: inline-block;}
.contact-table input[name="your-email_confirm"] {width: 20em; 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: 0.5em 1em;
text-decoration: none;
color: #fff;
border: 2px solid #fff;
border-radius: 5px;
background-color: #c92c46;
box-shadow: 1px 1px 4px rgba(0,0,0,0.5);
}
input.btn-green:active {
-webkit-transform: translateY(2px);
transform: translateY(2px);
box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.2);
border-bottom: none;
}
/* select空行非表示 */
.select-course p:empty:before {display:none;}

/* sp */
@media only screen and (max-width: 767px){
  .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;
  }
  .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;
  }
  .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%;
	}
}



/*---------------------------------------------------------
オンライン受講ページ
---------------------------------------------------------*/
.online-class {
background-color: #fff;
}
.online-topimg {
width: 350px;
}
.online-class .online-class_box {
padding: 3rem 3rem 3rem 57%;
position: relative;
}
.online-class .movie_box {
width: 50%;
margin-bottom: 2rem;
position: absolute;
top: 3rem;
left: 3rem;
}
.online-freelesson {
background-color: #feede5;
}
.online-freelesson .online-freelesson_title {
padding: 0 1rem 1rem 0;
color: #ee6c6a;
}
.online-freelesson h2 {
width: 100%;
margin-bottom: 2rem;
}
.online-freelesson .online-freelesson_box {
padding: 3rem 3rem 3rem 40%;
position: relative;
}
.online-freelesson .online-freelesson_read img {
width: 31%;
margin-bottom: 2rem;
position: absolute;
top: 3rem;
left: 3rem;
}
.online-freelesson .red_bnr {
margin-top: 1rem;
padding: 1.5rem;
}
.online-freelesson .red_bnr a {
width: 100%;
}
.online-instructors li {
width: 24%;
margin-right: 1%;
}
.online-instructors li:last-child {
margin-right: 0;
}
.online_voice {
padding: 20px;
background-color: #fff;
border-radius: 10px;
}
/*sp*/
@media only screen and (max-width: 767px){
  .online-topimg {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  }
  .online-classimg li:first-child {
  width: 100%;
  }
  .online-class .online-class_box {
  padding: 2rem 5%;
  }
  .online-class .movie_box {
  width: 100%;
  margin-bottom: 0;
  position: relative;
  top: 0;
  left: 0;
  }
  .online-freelesson .online-freelesson_title {
  width: 100%;
  padding: 1.5rem 5%;
  color: #fff;
  background: #ee6c6a;
  }
  .online-freelesson .online-freelesson_box {
  padding: 0 0 2rem;
  }
  .online-freelesson_box p {
  padding: 0 5%;
  }
  .online-freelesson .online-freelesson_read img {
  width: 100%;
  margin: 2rem auto 1.5rem;
  position: relative;
  top: 0;
  left: 0;
  }
  .online-instructors li {
  width: 47%;
  margin-bottom: 1.5rem;
  }
  .online-instructors li:nth-child(2n) {
  margin-right: 0;
  }
}

/*---------------------------------------------------------
footer-contact-Include CSS
---------------------------------------------------------*/
.llc_form .concall_freeimg a {
width: 290px;
margin: 15px auto 5px;
display: block;
}

/*pc */
@media print, screen and (min-width: 768px){
  .grecaptcha-badge {
  bottom: 80px!important;
  }
}

/* 非リンク */
.nolink {
pointer-events: none!important;
}
