@charset "utf-8";
/**
 *  Stylesheet for All Pages
 * 
 * @author  zenkyoken
 * @version 2024/04/21 1st Version 既存のstyle.cssとstyle-sp.cssを統合＆アコーディオン部分のCSS追加
 *          2024/04/26 common.css,style_202401.css を統合
 *          2024/04/30 微調整
 *          2024/05/04 form関連の調整
 *          2024/05/07 スマホ表示時のfooterのmargin-bottomの調整, recruitのスタイルをrecruit/index.htmlへ移動
 *          2024/05/09 .tab_box .tab_btn にlist-style:none 追加
 *          2024/06/05 教室ページメッセージエリア 追加、サイトマップのli微調整
 *          2024/06/25 ビジュアルエディタで編集可能なカスタムスタイル（マーカー類）追加
 * 
 */

/*---------------------------------------- ↓normalize (common.csより) ----------------------------------------*/
html,body,div,iframe,h1,h2,h3,h4,p,a,img,small,dl,dt,dd,ol,ul,li,form,label,table,tbody,tr,th,td,article,aside,footer,header,nav,section,figure{margin:0;padding:0;border:0;font-style:normal;font-weight:400;font-size:100%;vertical-align:baseline}
article,aside,footer,header,nav,section{display:block;}
input,textarea{margin:0;padding:0;resize:none;font-size:16px;padding:6px;}
ol,ul{list-style:none;overflow:hidden;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
a{text-decoration:none;color:inherit;}
/* a:focus{outline:none;} */
fieldset {border:none;}
@media screen and (max-width: 767px){
  img {
    max-width: 100%;height: auto;
  }
}

/*--------------------- ↓Font設定 ----------------------*/
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 100;
	src: url("../font/NotoSansCJKjp-Thin.eot");
	src: url("../font/NotoSansCJKjp-Thin.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Thin.woff") format("woff"), url("../font/NotoSansCJKjp-Thin.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 200;
	src: url("../font/NotoSansCJKjp-Light.eot");
	src: url("../font/NotoSansCJKjp-Light.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Light.woff") format("woff"), url("../font/NotoSansCJKjp-Light.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url("../font/NotoSansCJKjp-DemiLight.eot");
	src: url("../font/NotoSansCJKjp-DemiLight.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-DemiLight.woff") format("woff"), url("../font/NotoSansCJKjp-DemiLight.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: url("../font/NotoSansCJKjp-Regular.eot");
	src: url("../font/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Regular.woff") format("woff"), url("../font/NotoSansCJKjp-Regular.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 500;
	src: url("../font/NotoSansCJKjp-Medium.eot");
	src: url("../font/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url("../font/NotoSansCJKjp-Bold.eot");
	src: url("../font/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Bold.woff") format("woff"), url("../font/NotoSansCJKjp-Bold.ttf") format("truetype");
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 900;
	src: url("../font/NotoSansCJKjp-Black.eot");
	src: url("../font/NotoSansCJKjp-Black.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Black.woff") format("woff"), url("../font/NotoSansCJKjp-Black.ttf") format("truetype");
}

/*--------------------- ↓body ----------------------*/
body {
	font-family: Noto Sans Japanese, ArialMT, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
  line-height:1.75;

}
:root body {
	font-family: ArialMT, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif\0/;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  body {
    font-family: ArialMT, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif !important;
  }
}
@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop, .body {
    font-family: ArialMT, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
  }
}
.mincyo{font-family:"ヒラギノ明朝 Pro W3","Hiragino Mincho ProN","游明朝","Yu Mincho","游明朝体","YuMincho","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝","MS PMincho",serif}

/*--------------------- ↓色設定 ----------------------*/
:root {
	--text-color: #3f3f3f;
	--main-color: #6fb92c;
	--logo-color: #ff9900;
  --focus-color: #1857f7;
	--color-yellow: #ff9;
	--color-red: #ffd0d1;
	--color-blue: #a8dafb;
}

/*--------------------- ↓編集ページスタイル共通（editor-style.cssと合わせる）----------------------*/
/*********************
 カスタムスタイル
**********************/
/* 
 マーカー
*/
/* 黄色マーカー */
.edit_marker_yellow {
	background-color: var(--color-yellow);
}
/* 赤色マーカー */
.edit_marker_red {
	background-color: var(--color-red);
}
/* 青色マーカー */
.edit_marker_blue {
	background-color: var(--color-blue);
}
/* 黄色アンダーラインマーカー */
.edit_marker_underline_yellow {
	background: linear-gradient(transparent 60%, var(--color-yellow) 60%);
}
/* 赤色アンダーラインマーカー */
.edit_marker_underline_red {
	background: linear-gradient(transparent 60%, var(--color-red) 60%);
}
/* 青色アンダーラインマーカー */
.edit_marker_underline_blue {
	background: linear-gradient(transparent 60%, var(--color-blue) 60%);
}

/*--------------------- ↓focus時 ----------------------*/
:focus-visible {
	outline: -webkit-focus-ring-color auto medium;
	outline-color: var(--focus-color);
}

/*--------------------- ↓accordion共通 ----------------------*/
summary { display: block; list-style: none; }
summary::-webkit-details-marker { display: none;} /* Safariで表示される三角形アイコンを消す */
/* .js-accordion_wrap {} */
.js-accordion_summary {
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.js-accordion_mark {
	content: '';
	position: absolute;
	width: 2.2em;
	height: 2.2em;
	background-color: var(--main-color);
	border-radius: 50%;
}
.js-accordion_mark_r {
	right: 3%;
}
.js-accordion_mark_l {
	left: 3%;
}
.js-accordion_mark:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	display: inline-block;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	width: 13px;
	height: 13px;
	border: 3px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translate(-50%, -60%) rotate(135deg);
}
details[open] .js-accordion_mark:before {
	transform: translate(-50%, -30%) rotate(-45deg);
}
/* 20250219修正 */
.js-accordion_content {
	overflow: hidden;
  /* 20250219追加 */
  border-radius: 0px 0px 5px 5px;
}

/*--------------------- ↓トップページ開始前のローディング ----------------------*/
#loading {
	width: 100%;
	height: 100%;
	position: fixed;
	background: #fff;
	display: table;
	text-align: center;
	z-index: 10000;
	box-sizing: border-box;
	display: none;
}
#loading img {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

.f-box {
	/* overflow: hidden; */
}
.f-box:after {
  content: '';
  display: block;
  clear: both;
}

/*文字マーカー(黄色)*/
.marker_y {
  background-color: #FFF100;
}
.title-base.margin-no {
	margin: 0;
}
.title-base-orange.margin-no {
	margin: 0;
}
/* 20250215追加 */
.title_center.margin-no {
	margin: 0;
}

/* 20250215追加 */
.title_center {
  color: #0b4427;
  background-color: #ebf5ec;
  max-width: 960px;
  margin-bottom: 10px;
  padding: 10px 10px 5px;
  text-align: center;
  font-size: 23px;
  font-weight: bold;
}

/* 20250215追加 */
.title_center::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background-image: url(../img/title-bg02.png);
  background-position: center;
  background-size: contain;
  vertical-align: middle;
  margin: 0 10px 7px 0;
}


.course-kobetu .title-base-me {
	background: url(/course/img/bg-k.png) repeat-x left bottom;
	color: #dc6893;
}
li img {
	vertical-align: bottom;
}
.text-overflow {
	text-indent: 110%;
	overflow: hidden;
	white-space: nowrap;
}
a.youtube {
	position: relative;
	display: block;
}
a.youtube:before {
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	background: url(../img/youtube.png);
	background-size: 40px 40px;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}
.text-center {
  text-align: center;
}

/*--------------------- ↓スライド 停止/開始ボタン ----------------------*/
.slick_pause_area {
	text-align: center;
}
.slick_pause {
	position: relative;
	text-align: center;
	width: 80px;
	height: 40px;
	background-color: #fefefe;
	border-radius: 7px;
	margin: 1rem auto;
}
.slick_pause:before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: "Font Awesome 5 Free";
	content: '\f04c';
	font-weight: bold;
	font-size: 140%;
}
.slick_pause.paused:before {
	content: '\f04b' !important;
}
@media screen and (max-width: 767px) {
  .slick_pause {
    width: 70px;
    height: 40px;
    margin: 7px auto;
  }
}

/*--------------------- ↓sub-page-common ----------------------*/
.parts-inquiry-mail .area-title p {
	font-weight: 700;
}

.border-base {
  border: solid 1px #efefef;
}

/*---------------------------------------- ↓ヘッダー header 20250215----------------------------------------*/
/* 20250303修正 */
.header-fix .f-box {
  /* display: flex; */
  /* justify-content: center; */
  width: 830px;
  margin: 0 auto;
}
/* 20250303修正 */
.common_logo {
  /* width: 285px; */
  /* width: 384px; */
  /* margin-right: 3%; */
}

.common_logo img {
  vertical-align: bottom;
}

.header-fix p {
  text-align: center;
}

.header_logo_pc {
  display: flex;
  flex-direction: column;
}
/* 20250303修正 */
.header_inquiry_contents {
  display: flex;
  /* flex-direction: column; */
  /* justify-content: space-between; */
  justify-content: center;
  flex-direction: row;
  align-items: center;
}

.header_inquiry_contents img {
  vertical-align: bottom;
}
/* 20250226修正 */
.header_inquiry_contents a {
  display: block;
  /* width: 285px; */
  width: 384px;
}
/* 20250303追加 */
.header_inquiry_contents a:first-child {
  margin-right: 15px;
}
/* 20250303追加 */
.header_logo_set{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 5px;
}

/* 20250617追加 */
.header_contact {
  background-color: #feedd4;
}


@media screen and (max-width: 767px) {
  
  .header-fix .f-box {
    display: block;
    width: 100%;
  }

  .header_logo_set {
    float: left;
    max-width: 280px;
    margin-top: 5px;
  }

  .header_logo_set h1 {
    margin-right: 5px;
  }

  /* 20250617追加 */
  .header_contact {
    height: 10px;
  }

  .header_contact .header-fix {
    display: none;
  }
}

/*---------------------------------------- ↓footer ----------------------------------------*/
.f-bnr .area-bnr img {
  vertical-align: bottom;
}
.list-f-nav,
.list-f-nav-small {
  overflow: visible;
}
.list-f-nav:after {
  content: '';
  display: block;
  clear: both;
}

/* 20250303修正 */
.footer_information {
  padding-top: 30px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
/* 20250303追加 */
.footer_information .header_logo_set {
  width: 830px;
  margin: 0 auto 5px;
}

/* 20250226修正 */
.footer_link {
  display: flex;
  justify-content: space-between;
  /* max-width: 45%; */
  max-width: 60%;
  margin: 40px auto 10px;
  color: #05502b;
  font-size: 22px; /* 20250226追加 */
}

.footer_link a {
  font-weight: bold;
}

/* 20250226修正 */
.contact_us {
  text-align: center;
  color: #05502b;
  /* font-size: 23px; */
  font-size: 46px;
}

.contact_us h3 {
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .contact_us {
    font-size: 20px;
    padding: 15px;
  }
  /* 20250303修正 */
  .common_logo_footer {
    text-align: center;
    /* margin: 20px 0; */
    padding: 0 15px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  /* 20250303追加 */
  .common_logo_footer a:first-child {
    margin-right: 15px;
  }

}


/*---------------------------------------- ↓footerGuide ----------------------------------*/

/*---------------------------------------- ↓reCAPTCHA v3 ---------------------------------*/
.grecaptcha-badge {
  bottom: 80px !important;
  /* left: 0px !important; */
  z-index: 9999;
}
@media screen and (min-width: 768px) {
  .grecaptcha-badge {
    bottom: 23px !important;
  }
}

/*---------------------------------------- ↓front ----------------------------------------*/
.block-bnr {
  background: rgba(255,255,255,0.6);
}
.block-bnr .title-bnr img {
  vertical-align: bottom;
}
@media screen and (min-width: 768px) {
  .block-bnr .title-bnr {
    padding: 10px 0;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .block-bnr .title-bnr {
    padding: 8px 0;
    text-align: center;
    width: 96%;
    margin: 0 auto;
  }
}

/*********************************************
  Pick UP Slider
**********************************************/
.list-pickup-slider .cat-tag {
  font-size: 10px;
  width: 80px;
  color: #fff;
  text-align: center;
  line-height: 1em;
  padding: 2px 0;
  border-radius: 3px;
}
.list-pickup-slider .cat-tag.cat-junior {
  background: #f39c12;
}
.list-pickup-slider .cat-tag.cat-junior-high {
  background: #e74c3c;
}
.list-pickup-slider .cat-tag.cat-junior-high3 {
  background: #be3232;
}
.list-pickup-slider .cat-tag.cat-high {
  background: #874791;
}
.list-pickup-slider .cat-tag.cat-kobetu {
  background: #dc6893;
}
.list-pickup-slider .cat-tag.cat-news {
  background: #009b4b;
}
.list-pickup-slider a {
  display: block;
}
.list-pickup-slider {
  overflow: visible;
}
.list-pickup-slider li {
  height: 244px;
  background: url(../img/article-bg.png) no-repeat;
  box-sizing: border-box;
  padding: 6px;
  overflow: hidden;
  margin: 0 10px;
}
.list-pickup-slider li .thumbnail {
  overflow: hidden;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .list-pickup-slider {
    margin: 0 auto 50px;
  }
  .list-pickup-slider li {
    width: 220px !important;
    margin: 0 10px;
  }
  .list-pickup-slider li .thumbnail {
    width: 206px;
    height: 120px;
    margin: 0 0 5px 0;
  }
  .list-pickup-slider li .thumbnail img {
    max-width: 100%;
    height: auto;
  }
  .list-pickup-slider .title-pickup {
    font-size: 12px;
    padding: 10px 0;
  }
  .list-pickup-slider .thumbnail {
    transition: .3s;
  }
  .list-pickup-slider a:hover .thumbnail {
    opacity: .7;
  }
  .list-pickup-slider .title-pickup {
    transition: .3s;
  }
  .list-pickup-slider a:hover .title-pickup {
    color: #006400;
  }
}
@media screen and (max-width: 767px) {
  .list-pickup-slider {
    margin: 0 auto 25px;
    width: 100%;
  }
  .list-pickup-slider li {
    margin: 0 7px;
  }
  .list-pickup-slider li .thumbnail {
    margin: 0 0 10px 0;
    max-height: 120px;
  }
  .list-pickup-slider li .thumbnail img {
    max-height: 100%;
  }
  .list-pickup-slider .title-pickup {
    font-size: 11px;
    padding: 10px 0;
  }
}

.links-wrap {
  padding: 2% 0 0;
  background:#fff;
  text-align: center;
}

/*-------------------------------- ↓トップページ メインビジュアル 20250215 ----------------------------------*/
.main_visual img {
  width: 100%;
}

/*-------------------------------- ↓トップページ ハイライト 20250215 ----------------------------------*/
.highlight {
  max-width: 960px;
  margin: 20px auto 50px;
}

.highlight_contents ul {
 display: flex;
 justify-content: space-between;
}

.highlight_contents li {
  width: 31%;
  border: solid 5px #f18900;
}

.highlight_contents li img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .highlight {
    margin: 15px auto 30px;
  }

  .highlight_contents li {
    border: solid 3px #f18900;
  }
}

/*-------------------------------- ↓トップページ 教室一覧 20250201 ----------------------------------*/
.school_list {
  max-width: 960px;
  margin: 20px auto 50px;
  text-align: center;
}

.school_list_contents {
  background-color: #fff;
}

.school_list_contents p {
  margin-bottom: 10px;
}

.school_list_contents ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
}

.school_list_contents li {
  /* width: 50%; */
  width: 50.105%;
}

.school_list_contents li a {
  display: block;
  padding: 10px;
  color: #004916;
  border: solid 2px #009944;
  font-size: 20px;
  font-weight: bold; 
}

.school_list_contents li:nth-child(even) {
  margin-left: -2px;
}

.school_list_contents li:nth-of-type(n+3) {
  margin-top: -2px;
}

/* 20250226追加 */
.school_list_contents table , td, th {
	/* border: 1px solid #595959; */
	border-collapse: collapse;
}
.school_list_contents ttd, th {
	padding: 3px;
	width: 30px;
	height: 25px;
}
.school_list_contents tth {
	background: #f0e6cc;
}
.school_list_contents t.even {
	background: #fbf8f0;
}
.school_list_contents t.odd {
	background: #fefcf9;
}

.school_list_pc_wrapper {
  width: 97%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.school_list_pc tr,.school_list_sp tr {
  border-top: 2px dashed #004916;
} 

.school_list_pc td,.school_list_sp td {
  height: 45px;
  vertical-align: middle;
  padding-left: 20px;
} 

.school_list_pc {
  width: 49%;
  font-size: 20px;
  text-align: left;
  color: #004916;
}

.school_list_sp {
  width: 100%;
  font-size: 18px;
  text-align: left;
  color: #004916;
}
.school_list_sp_3row {
  font-weight:bold;
  width: 178px;
}

.school_list_pc_right {
  max-height: 141px;
}

.school_list_pc a, .school_list_sp a {
  font-weight: bold;
}

.school_list_sp_wrapper {
  width: 95%;
  margin: 0 auto;
}

/* 20250617追加 */
@media screen and (max-width: 370px) {
  .school_list_sp {
    font-size: 16px;
  }
  
  .school_list_sp td {
    padding-left: 5px;
  }

  .school_list_sp_3row {
    width: 170px;
  }
}

.left_space_1 {
  padding-left: 1em;
}

.left_space_4 {
  padding-left: 4em;
}

.left_space_5 {
  padding-left: 5em;
}

.left_space_6 {
  padding-left: 6em;
}

.left_space_7 {
  padding-left: 7em;
}

.left_space_8 {
  padding-left: 8em;
}

@media screen and (max-width: 767px) {
  .school_list {
    margin: 20px auto 30px;
  }

  .school_list_contents ul  {
    flex-direction: column;
  }

  .school_list_contents li {
    width: 100%;
  }

  .school_list_contents li:nth-child(even) {
    margin-left: 0;
  }

  .school_list_contents li:nth-of-type(n+2) {
    margin-top: -2px;
  }
}

/*-------------------------------- ↓トップページ 生徒・保護者の声 20250215 ----------------------------------*/

.top_success_link {
  max-width: 960px;
  margin: 0 auto 50px;
  background-color: #fff;
}

.top_success_link_contents {
  padding: 15px;
}

.top_success_link_contents img {
  width: 100%;
}

.top_success_link_contents ul {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}

.top_success_link_contents li {
  width: 49%;
  text-align: center;
}

.top_success_link_contents li a {
  display: block;
  padding: 10px;
  color: #004916;
  border: solid 2px #009944;
  font-size: 20px;
  font-weight: bold; 
}

@media screen and (max-width: 767px) {
  .top_success_link {
    margin: 0 auto 30px;
  }
  
  .top_success_link_contents li a {
    font-size: 16px;
  }
}

/*-------------------------------- ↓トップページ 無料体験バナー 20250215 ----------------------------------*/
.top_muryoutaiken_banner {
  max-width: 960px;
  margin: 50px auto 0; 
}

.top_muryoutaiken_banner img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .top_muryoutaiken_banner {
    margin: 30px auto 20px;
  }
}


/*---------------------------------------- ↓sub-page ----------------------------------------*/
.course-junior-high .block-course-sec02-2 {
  background-image: url(/course/img/junior-high-img02.png);
  background-position: 15px 30px;
  background-repeat: no-repeat;
  background-color: #eef1ff;
  border: solid 1px #1368ec;
}
.course-junior-high .block-course-sec02-2 .title {
  color: #0f6ff1;
}
.course-high .block-course-sec02-2 .title {
  color: #884792;
}
.red-title.wine {
  color: #b71c1c;
}
.red-text {
  font-weight: bold;
  color: #e74c3c;
}
.list-course-2column {
  margin: 20px 0 0 0;
}
.course-junior-high3 .list-course-2column .title-2column {
  color: #b71c1c;
}
.course-junior-high .list-3column .title-3column {
  color: #e74c3c;
}
.course-high .list-3column .title-3column {
  color: #884792;
}
.dl-lineup dt {
  overflow: hidden;
  background: #fff;
  position: relative;
}
.dl-lineup.type01 .dt-title:before {
  content: '';
  border-top: 25px solid transparent;
  border-right: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 25px solid #e74c3c;
  position: absolute;
  right: -50px;
  top: 0;
}
.dl-lineup.type02 .dt-title:before {
  content: '';
  border-top: 35px solid transparent;
  border-right: 35px solid transparent;
  border-bottom: 35px solid transparent;
  border-left: 35px solid #e74c3c;
  position: absolute;
  right: -70px;
  top: 0;
}
.course-junior .dl-lineup {
  border: solid 1px #ff9900;
}
.course-junior .dl-lineup dt {
  border-bottom: solid 1px #ff9900;
}
.course-junior .dl-lineup .dt-title {
  background: #ff9900;
}
.course-junior-high .dl-lineup {
  border: solid 1px #e74c3c;
}
.course-junior-high .dl-lineup dt {
  border-bottom: solid 1px #e74c3c;
}
.course-junior-high .dl-lineup .dt-title {
  background: #e74c3c;
}
.course-junior-high3 .dl-lineup {
  border: solid 1px #b71c1c;
}
.course-junior-high3 .dl-lineup.type01 .dt-title:before {
  border-left: 25px solid #b71c1c;
}
.course-junior-high3 .dl-lineup.type02 .dt-title:before {
  border-left: 35px solid #b71c1c;
}
.course-high .dl-lineup {
  border: solid 1px #884792;
}
.course-high .dl-lineup dt {
  border-bottom: solid 1px #884792;
}
.course-high .dl-lineup .dt-title {
  background: #884792;
}
.course-high .dl-lineup.ex .open .dt-text {
  background:none;
}
.course-high .dl-lineup.type01 .dt-title:before {
  border-left: 25px solid #884792;
}
.course-high .dl-lineup.type02 .dt-title:before {
  border-left: 35px solid #884792;
}
.list-jh3-sidou .red-title {
  position: relative;
}
.list-jh3-sidou .red-title:before {
  content: '';
  position: absolute;
  border-top: dashed 1px #b71c1c;
  height: 1px;
  top: 50%;
  left: 0;
  width: 100%;
}
.course-kobetu .list-anchor-btn li {
  width: 46%;
  margin: 0 2%;
}
.pink-text {
  color: #dc6893;
  font-weight: bold;
}
.kon-text span { font-size: 0.7em; }
.course-kobetu .block-faq-base dd {
  background: none;
}

/*-------------------- course-detail --------------------*/
.block-course-base .sec-margin figure {
  text-align: center;
}
.course-junior-high .block-course-base .orange-text {
  color: #e74c3c;
}
.block-course-base .center-mode {
  text-align: center;
}
.block-course-base .btn-green-base {
  margin: 30px auto;
}
.block-course-base .area-img-text li {
  overflow: hidden;
}
.block-course-base .area-img-text li + li {
  margin: 10px 0 0 0;
}
.block-course-base .area-meet01 {
  overflow: hidden;
}
.block-course-base .area-meet01 .orange-bnr {
  border-radius: 0;
  margin: 0 0 10px 0;
}
.sec-tamai .area-sub-text .orange-text {
  text-align: left;
  margin: 0;
}
.sec-tamai .area-sub-text .text {
  margin: 0 0 15px 0;
}
.list-tamai-step img {
  margin: 0 0 10px 0;
}
.course-junior-high .list-buntatsu-text .area-left {
  background: #e74c3c;
}
.list-yomuzo02 {
  margin: 15px 0 0 0;
}
.table-course-base .small {
  font-size: 10px;
  display: block;
  line-height: 1.5;
  color: #333;
}
.course-junior .table-course-base tr:nth-child(1) th {
  background: #f2c46c;
}
.course-junior .table-course-base th {
  border: solid 1px #ff9900;
  background: #faddb3;
}
.course-junior .table-course-base td {
  border: solid 1px #ff9900;
}
.course-junior-high .table-course-base tr:nth-child(1) th {
  background: #E57373;
}
.course-junior-high .table-course-base td {
  border: solid 1px #E74C3C;
}
.course-high .table-course-base tr:nth-child(1) th {
  background: #b576c0;
}
.course-high .table-course-base th {
  background: rgba(181,118,192,0.5);
  border: solid 1px #884792;
}
.course-high .table-course-base td {
  border: solid 1px #884792;
}
.block-kobetu-faq .red-title {
  border-bottom: dashed 1px #e74c3c;
}
.list-kobetu-faq li .red-text, .list-kobetu-faq li .text {
  padding: 0 0 0 2em;
  text-indent: -1.8em;
}

/*------------------------------ ↓class-page ------------------------------*/
.tab-menu {
  display: table;
  width: 100%;
  border-spacing: 20px 0;
  table-layout: fixed;
  margin: 30px 0;
}
.tab-menu li {
  display: table-cell;
}
.tab-menu li a {
  display: block;
  background: #c5eac2;
  padding: 10px 0;
  text-align: center;
  color: #18ac00;
  font-size: 18px;
  transition: 0.2s;
}
.tab-menu li a:hover, .tab-menu li.tab-active a {
  background: #18ac00;
  color: #fff;
}
.list-class-main li {
  width: 282px;
  min-height: 280px;
  box-sizing: border-box;
  padding: 15px;
  background: #fff;
  border: solid 1px #e7f8ea;
  float: left;
  margin: 19px;
  box-shadow: 0 5px 10px -4px #999;
}
.list-class-main li:nth-child(3n+1) {
  clear: both;
}
.list-class-main li figure img {
  width: 252px;
  height: 140px;
  overflow: hidden;
}
.list-class-main li a {
  display: block;
}
.btn-more-base {
  background: #009944;
  color: #fff;
  text-align: center;
  border-radius: 4px;
  position: relative;
}
.btn-more-base:before {
  content: '';
  background: url(../img/slider-next.png) no-repeat;
  background-size: 20px;
  height: 20px;
  width: 20px;
  position: absolute;
  top: 5px;
  left: 170px;
  transition: 0.3s;
}
.list-class-main li a:hover .btn-more-base:before {
  left: 175px;
}

.sec-class-main .message_area {

}
.sec-class-main .message_area .goal {
  text-align: center;
  font-weight: bold;
  font-size: 120%;
  padding: 2rem 0 1rem;
}

/* 20250201追加 */
.goal_leadtext {
  text-align: center;
  margin: -20px auto 40px;
}

.sec-class-main .message_area .msg {
  width: 100%;
  padding: 0,5rem;
}
.sec-class-main .message_area .teacher_photo {
  width: 100%;
  padding: 1rem 0;
  /* 20250201修正 */
  width: 60%;
  margin: 0 auto;
}
.sec-class-main .message_area .teacher_photo img {
  width: 100%;
}

/* 20250201追加 */
.sec-class-main .message_area .banner_beans {
  width: 100%;
  padding: 1rem 0;
  margin: 0 auto;
}

.sec-class-main .message_area .banner_beans img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .goal_leadtext {
    margin: -5px auto 30px;
  }
}

@media screen and (min-width: 768px) {
  .sec-class-main .message_area .goal {
    font-size: 140%;
    padding: 2rem 0;
  }
  .sec-class-main .message_area .msg {
    width: 60%;
  }
  .sec-class-main .message_area .teacher_photo {
    width: 30%;
    padding: 5rem 1rem 0 1rem;
  }
 
}

/*------------------------------ ↓class-single-page ------------------------------*/
.slider-nav .slick-slide {
  box-sizing: border-box;
}
.slider-nav .slick-slide:focus {
  outline: none;
}
.dl-class-info {
  width: 100%;
}

/*------------------------------ ↓success-page ------------------------------*/
.success-tab-menu {
  position: relative;
  top: 2px;
}
.success-tab-menu li {
  width: 32%;
  float: left;
  margin: 0 0 0 2%;
}
.success-tab-menu li:first-child {
  margin: 0;
}
.success-tab-menu li:nth-child(1) a {
  background: #6FB92C;
  border-top: solid 2px #6FB92C;
  border-left: solid 2px #6FB92C;
  border-right: solid 2px #6FB92C;
}
.success-tab-menu li:nth-child(2) a {
  background: #E64E3A;
  border-top: solid 2px #E64E3A;
  border-left: solid 2px #E64E3A;
  border-right: solid 2px #E64E3A;
}
.success-tab-menu li:nth-child(3) a {
  background: #874B93;
  border-top: solid 2px #874B93;
  border-left: solid 2px #874B93;
  border-right: solid 2px #874B93;
}
.success-tab-menu .tab-active a {
  background: #fff !important;
}
.success-tab-menu li.tab-active a {
  z-index: 100;
}
.success-tab-menu li.tab-active:nth-child(1) a {
  color: #6FB92C;
}
.success-tab-menu li.tab-active:nth-child(2) a {
  color: #E64E3A;
}
.success-tab-menu li.tab-active:nth-child(3) a {
  color: #874B93;
}
.list-success-taiken {
  position: relative;
}
.list-success-taiken.junior-taiken {
  border: solid 2px #6FB92C;
}
.list-success-taiken.juniorhigh-taiken {
  border: solid 2px #E64E3A;
}
.list-success-taiken.high-taiken {
  border: solid 2px #874B93;
}
.list-success-taiken dt {
  overflow: hidden;
  transition: 0.2s;
}
.list-success-taiken dt:hover {
  opacity: 0.7;
}
.list-success-taiken.juniorhigh-taiken .area-title .title {
  color: #E64E3A;
}
.list-success-taiken.high-taiken .area-title .title {
  color: #874B93;
}
.list-success-taiken .accordion-btn {
  background: #6FB92C;
  height: 15px;
  position: relative;
}
.list-success-taiken.juniorhigh-taiken .accordion-btn {
  background: #E64E3A;
}
.list-success-taiken.high-taiken .accordion-btn {
  background: #874B93;
}
.list-success-taiken dd {
  border-top: solid 3px #6FB92C;
}
.list-success-taiken.juniorhigh-taiken dd {
  border-top: solid 3px #E64E3A;
}
.list-success-taiken.high-taiken dd {
  border-top: solid 3px #874B93;
}
.list-success-taiken .accordion-btn:before {
  content: '';
  position: absolute;
  background: url(../img/arrow-btn-base02.png) no-repeat;
  width: 21px;
  height: 15px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.list-success-taiken .accordion-btn.arrow:before {
  background: url(../img/arrow-btn-base02-open.png) no-repeat;
}
.list-success-number.type02 {
  position: relative;
}
.list-success-number li {
  float: left;
  border: solid 3px #00A54B;
  text-align: center;
  background: #fff;
  box-sizing: border-box;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho ProN", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "MS PMincho", serif;
}
.list-success-number.type01 li:nth-child(3n+1) {
  clear: both;
  margin: 0 0 3% 0;
}
/*------------------------------ ↓flow-page ------------------------------*/

/*------------------------------ ↓faq-page ------------------------------*/

/*------------------------------ ↓special-page ------------------------------*/
.list-parents-list figure {
  text-align: center;
}
.sec-parents .sec-faq .white-base {
  padding: 30px 20px;
}

/*------------------------------ ↓company-page ------------------------------*/

/*------------------------------ ↓recruit-page ------------------------------*/

/*------------------------------ ↓inquiry-page ------------------------------*/
.form-base .input-school {
  margin: 10px 0 0 0;
}
.list-form-base li .line-height-ex {
  line-height: 20px;
}
.area-submit {
  text-align: center;
}
.area-submit a {
  text-decoration: underline;
  color: #F36;
}
.form-course-box.course-junior .course-title {
  background: #FF9900;
}
.form-course-box.course-high .course-title {
  background: #884B95;
}
.form-tugo {
  margin: 0 10px 0 0;
}

/*---------------- ↓taiken --------------------*/
.list-taiken01 li:nth-child(1):before {
  content: "1";
}
.list-taiken01 li:nth-child(2):before {
  content: "2";
}
.list-taiken01 li:nth-child(3):before {
  content: "3";
}
.list-taiken01 li:nth-child(4):before {
  content: "4";
}
.list-taiken01 li:nth-child(5):before {
  content: "5";
}
.taiken-main .strong-text span {
  color: #F00;
  text-decoration: underline;
}

/*------------------------------ ↓sitemap-page ------------------------------*/
.list-sitemap a {
  transition: 0.2s;
  font-weight: 500;
}
.list-sitemap a:hover {
  color: #e74c3c;
}
.list-small-sitemap li:before {
  content: 'ー';
  padding: 0 0.5em 0 1em;
}

/*------------------------------ ↓news-page ------------------------------*/
.list-news-main a {
  display: block;
  padding: 10px 0;
}
.wp-editor .aligncenter {
  display: block;
  margin: 0 auto;
}
.wp-editor strong {
  font-weight: bold;
}
.wp-editor em {
  font-style: italic;
}
.wp-editor del {
  text-decoration: line-through;
}
.wp-editor blockquote {
  display: inline-block;
  padding: 0.8em;
  position: relative;
}
.wp-editor blockquote:before {
  content: '"';
  position: absolute;
  left: 0;
  top: 0;
}
.wp-editor blockquote:after {
  content: '"';
  position: absolute;
  right: 0;
  bottom: 0;
}
.wp-editor ul {
  list-style: disc;
  padding: 0 0 0 1.5em;
}
.wp-editor ol {
  list-style: decimal;
  padding: 0 0 0 1.5em;
}
/*-- lpページ --*/
.list-feature-bnr {
  margin: 20px 0 0 0;
}
.list-feature-bnr li + li {
  margin: 15px 0 0 0;
}
.sp-tamai img {
  vertical-align: bottom;
}
.world-bg {
  margin: 0 0 70px 0;
}
.close-btn {
  display: none;
}
ul.accordion > li > p span.open > img.close-btn {
  display: block;
}
ul.accordion > li > p span.open > img.open-btn {
  display: none;
}
ul.accordion { 
  max-width:640px; 
  margin: 0 auto;
  /* background-image: url(../img/feature/sp-0501/3-bg.gif); */
  background-image: url(../img/3-bg.gif);
  background-size: contain;
}
.ac-content {
  display: none;
  margin-top: -28px;
}
ul.accordion li {
  margin: -28px 0;
}
ul.accordion li:first-child {
  margin: 0;
}
ul.accordion li p.ac-button {
  margin: -28px 0 10px 0;
}


/*------------------------------↓160607追加/feature/sp-0601-----------------------------*/
.acmenu {text-align:center;}
.acmenu dt {margin-top:20px;}
.acmenu dd {display:none;}
.acmenu dt img:first-child {display: none;}
.acmenu dt.active img:first-child {display: block; margin:0 auto;}
.acmenu dt.active img {display: none;}
.acmenu dd div.wrap {border: 2px solid #000; padding: 10px ; max-width: 616px; margin: 10px auto;}
.acmenu dd div.wrap p {font-size: 20px;}
.acmenu dd .youtube {width: 100%; position:relative; padding-top: 56.25%;}
.acmenu dd iframe {width: 100%!important; height: 100%!important;top:0;right:0; position: absolute;}

/*------------------------------↓161224追加/feature/sp-1701-----------------------------*/
.school-list li {
display: inline-block;
margin: 0 0.5em 0.5em;
}
.school-list li a {
color: #777;
text-decoration: underline;
}

/* １週間無料体験　追加 CSS */
.sp-taiken2017 h2::after{
  display: inline-block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 7px 0 7px;
  border-color: #FFF transparent transparent transparent;
  vertical-align: middle;
  margin-left: 5px;
}
.sp-taiken2017 p.text-center{margin-bottom: 20px; }

/*------------------------------↓180118追加/asuvision用CSS/-----------------------------*/
.asuvision-box .asu-intro{margin-bottom: 40px;}
.asuvision-box .asu-intro .col2{text-align: center;}
.asuvision-box .asu-intro p{color: #884792;}

.asuvision-box .asu-contents .asu-teacher{text-align: center;}
.asuvision-box .asu-contents .pickup{border:1px solid #333; padding:0 5px; text-align: center; display: inline-block; margin-bottom: 15px;}
.asuvision-box .asu-contents .stu_info{font-weight: bold;}

/*------------------------------↓0407入試説明会用日時テーブル（再利用可）/-----------------------------*/
.schedule_table{
  width: 100%;
  border-style: solid;
  border-color: #ccc;
  border-width: 1px 0 0 1px;
  margin-bottom: 30px;
}
.schedule_table th{
  text-align: center;
  font-weight: bold;
}

.schedule_table thead th{background: #ddd;}
.schedule_table tbody th{background: #eee;}

/* 特集ページ用資料請求ボタン */
.formbtn a:hover{
  opacity: 0.7;
  }
  
.formbtn.green a{
  background: linear-gradient(#20cc6e , #0B913B);
}


/* 202010917作文コンクール発表用CSS */
#sakubun .result-wrap{
  border: 1px solid #59B431;
  padding: 20px;
  line-height: 1.4;
}
#sakubun .ranking-wrap{
  margin-bottom: 20px;
}
#sakubun .ranking-wrap p{text-align: left;}
#sakubun .sakubun-wrap{
  margin-bottom: 40px; 
  padding-bottom: 40px;
  border-bottom: 1px solid #59B431;
}
#sakubun .sakubun-wrap h6{
  font-size: 16px;
}
#sakubun .m40{margin-bottom: 40px;}
#sakubun .m40{margin-bottom: 40px;}


/*タブ実装*/
.tab_box .btn_area {
  margin:0 10px;
  display: flex;
  justify-content: space-between;
}
.tab_box .tab_btn {
  list-style: none;
}
.tab_box .tab_btn + .tab_btn {
  margin-left: 8px;
}
.tab_box .tab_btn:hover {
  background-color: #dce1e4;
}
.tab_box .tab_btn.active {
    background:#92cf5b;
    color:#fff;
}
.tab_box .tab_panel {
    display:none;
}
.tab_box .tab_panel.active {
    display:block;
}

.formlink-btn a:hover{
  box-shadow: 0 0px #7c0000;
  transform: translateY(5px);
}

/*------------------------------↓20220427/ライン用テーブル/-----------------------------*/
.line-listtable{
  width: 100%;
  border-style: solid;
  border-color: #ccc;
  border-width: 1px 0 0 1px;
  margin-bottom: 30px;
}

.line-listtable th{text-align: center; font-weight: bold;}
.line-listtable td{text-align: left;}

.line-listtable thead th{background: #ddd;}
.line-listtable tbody th{background: #eee;}
.line-listtable tbody td a{color: #1558d6; text-decoration: underline;}



/* SP Only */
@media screen and (max-width: 767px) {
  .hidden-sp {display: none !important;}
  .pc-only { display: none;}

  body {
    background: #fff6ea;
    font-size: 13px;
  }
  .inner {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .sp-hov {
    opacity: 0.7;
  }

  .title-base {
    background-image: url(../img/sp/title-base.png);
    background-repeat: no-repeat;
    background-position: 8px center;
    background-size: 17px 16px;
    background-color: #e7f8e9;
    width: 100%;
    height: 35px;
    line-height: 35px;
    box-sizing: border-box;
    padding: 0 0 0 30px;
    font-size: 15px;
    color: #0b4427;
    font-weight: bold;
    margin: 0 0 15px 0;
    border-top: solid 1px #efefef;
    border-bottom: solid 1px #efefef;
    position: relative;
  }
  .title-base .itiran {
    display: block;
    position: absolute;
    right: 15px;
    top: 4px;
    width: 60px;
  }

  /* 20250215追加 */
  .title_center .itiran_2 {
    float: right;
    height: 28px;
    padding: 7px 0 0 20px;
    position: absolute;
  }

  .title-base-orange {
    background: #FF9900;
    box-sizing: border-box;
    padding: 10px 0 10px 34px;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    margin: 0 0 15px 0;
    line-height: 1.4;
    position: relative;
  }
  .title-base-orange {
    background: #FF9900;
    box-sizing: border-box;
    padding: 10px 0 10px 34px;
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    margin: 0 0 15px 0;
    line-height: 1.4;
    position: relative;
  }
  .title-base-orange:before {
    content: '';
    position: absolute;
    width: 17px;
    height: 16px;
    background: url(../img/title-bg02.png) no-repeat;
    background-size: 17px 16px;
    left: 10px;
    top: 10px;
  }
  .title-base-me {
    background: url(../img/title-bg-me.png) no-repeat left bottom;
    font-size: 16px;
    color: #f3990f;
    font-weight: 500;
    width: 100%;
    box-sizing: border-box;
    padding: 0 0 3px 30px;
    position: relative;
    margin: 0 0 15px 0;
  }
  .title-base-me:before {
    content: '';
    width: 16px;
    height: 18px;
    background: url(../img/title-bg-icon.png) no-repeat;
    background-size: 16px 18px;
    position: absolute;
    left: 10px;
    bottom: 6px;
  }
  .title-base-sitemap {
    border-left: 3px solid #FF9900;
    border-bottom: 1px solid #FF9900;
    font-size: 15px;
    font-weight: 600;
    padding: 3px 7px;
    margin: 0 0 15px 0;
  }
  .course-junior-high .title-base-orange {
    background: #e74c3c;
  }
  .course-junior-high .title-base-me {
    background: url(/course/img/bg-jh.png) repeat-x left bottom;
    color: #e74c3c;
  }
  .course-junior-high3 .title-base-orange {
    background: #b71c1c;
  }
  .course-junior-high3 .title-base-me {
    background: url(/course/img/bg-jh3.png) repeat-x left bottom;
    color: #b71c1c;
  }
  .course-high .title-base-orange {
    background: #884792;
  }
  .course-high .title-base-me {
    background: url(/course/img/bg-h.png) repeat-x left bottom;
    color: #884792;
  }
  .course-kobetu .title-base-orange {
    background: #dc6893;
  }

  /*--------------------- ↓sub-page-common ----------------------*/
  .list-bread {
    display: none;
  }
  .parts-inquiry-mail {
    border: solid 1px #ff9900;
    border-radius: 10px;
    margin: 15px auto;
    background: #fff;
    overflow: hidden;
    width: 90%;
  }
  .parts-inquiry-mail .area-title {
    background: #ff9900;
    padding: 10px;
    text-align: center;
    font-size: 17px;
    color: #fff;
  }
  .parts-inquiry-mail .area-title span {
    color: #212121;
    font-size: 13px;
    display: block;
  }
  .parts-inquiry-mail .area-text {
    padding: 15px 0;
    text-align: center;
  }
  .parts-inquiry-mail .area-text .text {
    font-weight: 500;
    font-size: 10px;
  }
  .parts-inquiry-mail .area-image {
    overflow: hidden;
    margin: 10px 0 0;
  }
  .parts-inquiry-mail .area-image p {
    vertical-align: middle;
    margin: 4px auto;
    width: 160px;
  }
  .parts-inquiry-mail .area-image .tell {
    margin: 4px auto 15px;
  }
  .btn-green-base {
    width: 260px;
    height: 35px;
    line-height: 35px;
    color: #fff;
    background: #009b4b;
    border-radius: 4px;
    margin: 0 auto;
    text-align: center;
    border: solid 1px #009b4b;
  }


  /* ここからまる貼り */
  .btn-green-base a {
    display: block;
    background: url(/special/img/btn.png) no-repeat 95% center;
    background-size: 17px 17px;
  }
  .btn-green-base a.btn-back {
    background: url(/special/img/btn-back.png) no-repeat 5% center;
    background-size: 17px 17px;
  }
  .btn-green-base.margin {
    margin: 10px auto 20px;
  }
  .btn-green-base02 {
    text-align: center;
  }
  .btn-green-base02 a {
    display: inline-block;
    height: 30px;
    line-height: 30px;
    color: #fff;
    background-color: #009b4b;
    margin: 5px auto;
    background-image: url(../img/slider-prev03.png);
    background-position: 3% center;
    background-repeat: no-repeat;
    background-size: 7px 12px;
    transition: 0.2s;
    border: solid 1px #009b4b;
    border-radius: 4px;
    width: 90%;
  }
  .onecolumn-white-base {
    background: #fff;
    box-sizing: border-box;
    border: solid 1px #efefef;
    padding: 20px 10px;
    width: 94%;
    margin: 0 auto 25px;
  }
  .white-base {
    background: #fff;
    box-sizing: border-box;
    padding: 10px;
  }

  /*---------------------------------------- ↓header ----------------------------------------*/
  header {
    height: 51px;
  }
  .header-fix {
    position: fixed;
    width: 100%;
    background: #ffffff;
    z-index: 1000;
    border-bottom: 1px solid #cccccc;
    height: 51px;
  }
  header .inner {
    padding: 0 15px;
  }
  header .h-text {
    display: none;
  }
  /* 20250215修正 */
  header .main-logo {
    float: left;
    width: 230px;
    margin: 10px 0 0 0;
    /* margin: 0 30px 0 0; */
  }
  header .main-logo img {
    vertical-align: bottom;
  }
  header .area-bnr {
    display: none;
  }
  .sp-nav-btn {
    float: right;
  }
  .menu-trigger, .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  .menu-trigger {
    position: relative;
    width: 30px;
    height: 24px;
    margin: 14px 0 0 0;
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #009b4b;
    border-radius: 4px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }
  .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    -webkit-animation: active-menu-bar02 .8s forwards;
    animation: active-menu-bar02 .8s forwards;
  }
  .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
  }
  @-webkit-keyframes active-menu-bar02 {
    100% {
      height: 0;
    }
  }
  @keyframes active-menu-bar02 {
    100% {
      height: 0;
    }
  }
  nav {
    background: rgba(0,0,0,0.7);
    position: fixed;
    top: -100%;
    left: 0;
    width: 100%;
    z-index: 500;
    transition: 0.4s;
    height: 100%;
    opacity: 0;
    padding: 12px 0 0 0;
    box-sizing: border-box;
  }
  nav.list-open {
    top: 51px;
    opacity: 1;
  }
  .list-main-nav {
    background: #fff;
    width: 94%;
    margin: 0 auto;
  }
  .list-main-nav li {
    border-top: solid 1px #cccccc;
  }
  .list-main-nav li.sp-touch {
    background: rgba(0,155,75,0.1);
  }
  .list-main-nav li a {
    display: block;
    color: #0b4427;
    box-sizing: border-box;
    padding: 11px 20px;
    font-size: 12px;
    font-weight: 600;
    background: url(../img/sp/nav-arrow.png) no-repeat 95% center;
    background-size: 7px 12px;
  }
  .list-main-nav li details[open] > summary > a {
    background: url(../img/sp/nav-arrow-down.png) no-repeat 95% center;
    background-size: 12px 7px;
  }

  .sp_menu_contact {
    background-color: #ebf5ec;
  }
  /*---------------------------------------- ↓footer ----------------------------------------*/
  /* 20250215修正 */
  footer {
    /* background: #e7f8ea; */
    background: #fff;
    margin-bottom: 85px;
    /* margin-bottom: 100px; */
  }

  /* 20250617追加 */
  .footer_contact {
    margin-bottom: 0;
  }

  .f-nav {
    padding: 25px 0;
  }
  .list-f-nav {
    border: 1px solid #cccccc;
    width: 90%;
    margin: 0 auto;
  }
  .list-f-nav > li {
    background: #fff;
    box-sizing: border-box;
  }
  .list-f-nav-small li.sp-touch {
    background: rgba(0,155,75,0.1);
  }
  .list-f-nav-small a {
    display: block;
    padding: 7px 10px;
    font-weight: 600;
    font-size: 12px;
    border-bottom: 1px solid #cccccc;
    background: url(../img/sp/arrow04.png) no-repeat 95% center;
    background-size: 7px 12px;
  }
  .f-bnr {
    background: #fff;
    padding: 15px 3%;
    text-align: center;
    width: 94%;
    margin: 0 auto;
  }
  .f-bnr .main-logo {
    margin: 0 auto 5px;
    max-width: 260px;
  }
  .f-bnr .spot-tel {
    margin: 0 auto 10px;
    max-width: 250px;
  }
  .f-bnr .spot-tel img {
    margin: 5px 0;
  }
  .f-bnr .list-h-bnr {
    max-width: 250px;
    margin: 0 auto;
  }
  .f-bnr .list-h-bnr li + li {
    margin: 10px 0 0 0;
  }
  /* ヘッダーボタンフォーカス取得時のボタン変更 */
  .f-bnr .list-h-bnr a.taikenbtn {
    background: url(/img/bnr_taikenbtn_sp_on.png) no-repeat;
  }
  .f-bnr .list-h-bnr a.koshubtn {
    background: url(/img/bnr_koshubtn_sp_on.png) no-repeat;
  }
  .f-bnr .list-h-bnr a {
    display: block;
    background-size: 0  !important;
  }
  .f-bnr .list-h-bnr a:hover,
  .f-bnr .list-h-bnr a:focus {
    transition: 0.2s;
    background-size: auto !important;
    opacity: 1;
  }
  .f-bnr .list-h-bnr a img {
    transition: 0.2s;
    opacity: 1;
  }
  .f-bnr .list-h-bnr a:hover img,
  .f-bnr .list-h-bnr a:focus img {
    transition: 0.2s;
    opacity: 0;
  }
  
  .sp-pagetop a {
    display: block;
    text-align: center;
    height: 45px;
    line-height: 45px;
    background: #009b4b;
  }
  .sp-pagetop a img {
    vertical-align: middle;
  }
  /* 2025025修正 */
  .copyright {
    /* 20250215追加 */
    display: flex;
    /* 20250215追加 */
    justify-content: center;
    text-align: center;
    padding: 10px 0;
    font-size: 12px;
    color: #0b4427;
    background: #fff;
  }
  /*---------------------------------------- ↓footerGuide ----------------------------------*/
  /* 20250215修正 */
  .sp_fixfooter {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 200;
    color:#fff;
    background-color: #f69c14;
    /* border-top: 4px solid #009b4b; */
  }
  .sp_fixfooter_title {
    font-weight: bold;
    padding: 3px 0;
    color: #009b4b;
    background-color: #e7f8ea;
  }
  .sp_fixfooter_wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  .sp_fixfooter_item {
    /* width: calc( 100% / 3 ); */
    width: calc( 100% / 2 );
    /* height: 55px; */
    height: 68px;
    border-right: 1px solid #c7c5ac;
  }
  .sp_fixfooter_item a {
    display: flex;
    justify-content: space-around;
    flex-direction: column;
    color: #fff;
    padding: 7px 0;
  }
  .sp_fixfooter_item a img {
    width: 17%;
    margin: auto;
  }

  /* 20250215追加 */
  .inquiries_tel {
		display: flex;
		text-align: center;
	}
	/* 20250215追加 */
	.inquiries_tel a {
		display: block;
		width: 65%;
		color: #fff;
		background-color: #009944;
		padding: 10px;
		font-size: 122.222%;
        font-weight: bold;
		line-height: 40px;
	}
	/* 20250215追加 */
	.inquiries_tel a:nth-child(2){
		width: 35%;
		background-color: #f08300;
		padding: 10px;
	}
	/* 20250215追加 */
	.inquiries_tel img {
		width: 40px;
		height: auto;
    vertical-align: middle;
	}

  /* コース紹介 */
  .list-course-slider {
    margin-bottom: 0;
  }
  .list-course_pause_area {
    background-color: #fff;
    margin: 0 0 40px 0;
  }
  
  .list-course-intro {
    background: #ffffff;
    padding: 15px 10px;
    border: solid 1px #efefef;
    margin: 0 0 10px 0;
  }
  .list-course-intro li {
    float: left;
    margin: 2% 1%;
    width: 48%;
    text-align: center;
  }
  .sec-course-intro .bnr-special a {
    background: url(../img/bnr-large02.png) no-repeat center center;
    display: block;
    padding: 30% 0 0 0;
    margin: 0 auto;
    background-size: contain;
  }

  .area-search-area {
    width: 90%;
    margin: 0 auto 20px;
  }
  /* お近くの教室を探す */
  .dl-search-area {
    width: 100%;
    border: solid 2px #18a900;
    margin: 0 0 5px 0;
  }
  .dl-search-area dt {
    text-align: center;
    font-size: 13px;
    color: #fff;
    height: 30px;
    line-height: 30px;
    background: #18a900;
    position: relative;
    border-bottom: solid 2px #18a900;
  }
  .dl-search-area dt.open {
    background: #fff;
    color: #18a900;
  }
  .dl-search-area dt:after {
    width: 7px;
    height: 12px;
    background: url(../img/sp/arrow01.png) no-repeat;
    background-size: 7px 12px;
    position: absolute;
    content: '';
    left: 95%;
    top: 12px;
  }
  .dl-search-area dt.open:after {
    width: 12px;
    height: 7px;
    background: url(../img/sp/arrow02.png) no-repeat;
    background-size: 12px 7px;
    left: 94%;
    top: 14px;
  }
  .dl-search-area dd {
    background: #fff;
  }
  .dl-search-area dd a {
    display: block;
    /* height: 35px; */
    /* line-height: 35px; */
    box-sizing: border-box;
    padding: 8px 0 8px 15px;
    background: url(../img/sp/arrow03.png) no-repeat 96% center;
    background-size: 7px 12px;
    font-size: 12px;
    color: #0b4427;
    font-weight: 500;
  }
  .list-search-area li {
    border-top: solid 1px #cccccc;
  }
  .list-search-area li:first-child {
    border: none;
  }

  .details-search-area {
    width: 100%;
    border: solid 2px #18a900;
    margin: 0 0 5px 0;
  }
  .details-search-area summary {
    text-align: center;
    font-size: 13px;
    color: #fff;
    height: 30px;
    line-height: 30px;
    background: #18a900;
    position: relative;
    border-bottom: solid 2px #18a900;
  }
  .details-search-area.is_opened summary {
    background: #fff;
    color: #18a900;
  }
  .details-search-area summary:after {
    width: 7px;
    height: 12px;
    background: url(../img/sp/arrow01.png) no-repeat;
    background-size: 7px 12px;
    position: absolute;
    content: '';
    left: 95%;
    top: 12px;
  }
  .details-search-area.is_opend summary:after {
    width: 12px;
    height: 7px;
    background: url(../img/sp/arrow02.png) no-repeat;
    background-size: 12px 7px;
    left: 94%;
    top: 14px;
  }
  .details-search-area .accordion_content {
    background: #fff;
  }
  .details-search-area .accordion_content a {
    display: block;
    /* height: 35px; */
    /* line-height: 35px; */
    box-sizing: border-box;
    padding: 8px 0 8px 15px;
    background: url(../img/sp/arrow03.png) no-repeat 96% center;
    background-size: 7px 12px;
    font-size: 12px;
    color: #0b4427;
    font-weight: 500;
  }
  .list-search-area li {
    border-top: solid 1px #cccccc;
  }
  .list-search-area li:first-child {
    border: none;
  }


  .block-voice-box {
    margin: 0 auto 20px;
    width: 94%;
  }
  .voice-bnr-base {
    background: #fff;
    box-sizing: border-box;
    padding: 10px 12px 0;
    max-width: 455px;
    margin: 0 auto 15px;
    box-shadow: 0 6px 3px -3px #999;
  }
  .voice-bnr-base .text-voice {
    font-size: 12px;
    color: #4d4646;
    text-align: center;
  }
  .block-voice-box .white-blue {
    padding: 10px 0;
  }
  .block-voice-box .btn-voice-box {
    margin: 0 auto;
    width: 180px;
    background: #009b4b;
    text-align: center;
    color: #fff;
    font-size: 12px;
    padding: 3px 0;
  }
  /* 20250215修正 */
  .block-cms-article .cms-cat-post {
    /* margin: 0 0 20px 0; */
    margin: 0 0 30px 0;
  }
  .block-news-list {
    background: #fff;
    font-size: 12px;
  }
  .list-news li {
    overflow: hidden;
    border-bottom: solid 1px #efefef;
    padding: 10px;
  }
  .list-news li a {
    display: block;
    background: url(../img/slider-next02.png) no-repeat 93% center;
    background-size: 10px 18px;
  }
  .list-news li time {
    float: left;
    color: #0b4325;
    font-weight: bold;
  }
  .list-news li .cat-tag {
    float: left;
    color: #fff;
    font-size: 10px;
    line-height: 1em;
    background: #009b4b;
    text-align: center;
    padding: 2px 0;
    margin: 3px 0 0 10px;
    border-radius: 2px;
    width: 110px;
  }
  .list-news li .title-news {
    clear: both;
    color: #009b4b;
    font-weight: 500;
    padding: 1px 0 0 0;
  }

  
  /*---------------------------------------- ↓sub-page ----------------------------------------*/
  
  .course-sub-bnr {
    width: 100%;
    height: 0;
    padding: 15.6% 0 0 0;
    margin: 0 0 15px 0;
  }
  .course-junior .course-sub-bnr.bnr-course {
    background: url(/course/img/junior-course-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior .course-sub-bnr.price {
    background: url(/course/img/j-price01.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior .course-sub-bnr.plan {
    background: url(/course/img/j-plan01.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high .course-sub-bnr.bnr-course {
    background: url(/course/img/jh-course-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high .course-sub-bnr.schedule {
    background: url(/course/img/jh-schedule01.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high .course-sub-bnr.price {
    background: url(/course/img/jh-price01.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high .course-sub-bnr.plan {
    background: url(/course/img/jh-plan01.png) no-repeat center center;
    background-size: cover;
  }
  .course-high .course-sub-bnr.schedule {
    background: url(/course/img/h-schedule01.png) no-repeat center center;
    background-size: cover;
  }
  .course-high .course-sub-bnr.price {
    background: url(/course/img/h-price01.png) no-repeat center center;
    background-size: cover;
  }
  .course-high .course-sub-bnr.plan {
    background: url(/course/img/h-plan01.png) no-repeat center center;
    background-size: cover;
  }
  .sec-margin {
    margin: 0 0 20px 0;
  }
  /*------------------------------ ↓course-page ------------------------------*/
  .course-main-bnr {
    width: 100%;
    height: 0;
    padding: 26.6% 0 0 0;
    margin: 0 0 20px;
  }
  .course-junior .course-main-bnr {
    background: url(/course/img/junior-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high .course-main-bnr {
    background: url(/course/img/jh-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-junior-high3 .course-main-bnr {
    background: url(/course/img/jh3-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-high .course-main-bnr {
    background: url(/course/img/high-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-kobetu .course-main-bnr {
    background: url(/course/img/kobetu-main.png) no-repeat center center;
    background-size: cover;
  }
  .course-btn-menu {
    text-align: center;
    margin: 15px auto;
  }
  .course-btn-menu a {
    display: block;
    width: 178px;
    height: 34px;
    text-indent: 110%;
    overflow: hidden;
    white-space: nowrap;
    margin: 0 auto;
  }
  .course-btn-menu a.list03 {
    background: url(/course/img/btn03.png) no-repeat;
    background-size: 178px 34px;
  }
  .block-course-lineup {
    margin: 0 2% 20px 2%;
  }
  .list-course-lineup li {
    background: #fff;
    margin: 0 0 10px 0;
  }
  .list-course-lineup .title {
    padding: 4px 6px;
    box-sizing: border-box;
    color: #fff;
  }
  .list-course-lineup .text {
    padding: 12px 17px 12px 10px;
    box-sizing: border-box;
  }
  .course-junior .list-course-lineup li {
    border: solid 1px rgba(255,153,0,1);
  }
  .course-junior .list-course-lineup .title {
    background: rgba(255,153,0,1);
  }
  .course-junior .list-course-lineup .text {
    color: #ff9900;
    background: url(../img/arrow-junior02.png) no-repeat 98% center;
    background-size: 9px 15px;
  }
  .course-junior-high .list-course-lineup li {
    border: solid 1px #E74C3C;
  }
  .course-junior-high .list-course-lineup .title {
    background: #E74C3C;
  }
  .course-junior-high .list-course-lineup .text {
    color: #E74C3C;
    background: url(../img/arrow-jh02.png) no-repeat 98% center;
    background-size: 9px 15px;
  }
  .course-junior-high3 .list-course-lineup li {
    border: solid 1px #b71c1c;
  }
  .course-junior-high3 .list-course-lineup .title {
    background: #b71c1c;
  }
  .course-junior-high3 .list-course-lineup .text {
    color: #b71c1c;
    background: url(../img/arrow-jh302.png) no-repeat 98% center;
    background-size: 9px 15px;
  }
  .block-course-sec02 {
    margin: 0 0 20px 0;
  }
  .sp-teacher-img {
    text-align: center;
    margin: 0 0 20px 0;
  }
  .sp-teacher-img img {
    margin: 0 10px;
  }
  .list-course-sec02 {
    margin: 10px 0 0 0;
  }
  .list-course-sec02 li {
    margin: 0 0 10px 0;
  }
  .list-course-sec02 li .text {
    margin: 0;
  }
  .list-course-sec02 .title {
    font-size: 13px;
    color: #ff9900;
  }
  .block-course-sec02-2 {
    box-sizing: border-box;
    padding: 12px;
    position: relative;
  }
  .block-course-sec02-2 .title {
    text-align: center;
    font-size: 16px;
    margin: 5px 0 0 0;
  }
  .course-junior .block-course-sec02-2 {
    background: #fffdee;
    border: solid 1px #f39c12;
  }
  .course-junior .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/junior-obi.png) no-repeat;
    background-size: 129px 24px;
    width: 129px;
    height: 24px;
    top: -10px;
    left: -12px;
  }
  .course-junior .block-course-sec02-2 .title {
    color: #f39721;
  }
  .course-junior-high .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/junior-high-obi.png) no-repeat;
    width: 258px;
    height: 48px;
    top: -20px;
    left: -23px;
  }
  .course-high .block-course-sec02-2 {
    background: #faeeff;
    border: solid 1px #884792;
  }
  .course-high .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/high-obi.png) no-repeat;
    background-size: 129px 24px;
    width: 129px;
    height: 24px;
    top: -10px;
    left: -12px;
  }
  .red-title {
    text-align: center;
    margin: 10px 0;
    font-size: 18px;
    color: #e74c3c;
  }
  .list-course-2column li {
    margin: 0 0 15px 0;
  }
  .list-course-2column .title {
    margin: 0 0 10px 0;
  }
  .list-course-2column img {
    margin: 0 auto;
  }
  .list-course-2column .title-2column {
    text-align: center;
    font-size: 17px;
    margin: 0 0 8px 0;
  }
  .list-3column {
    margin: 15px 0;
  }
  .list-3column li {
    margin: 0 0 10px 0;
  }
  .list-3column .title-3column {
    text-align: center;
    font-weight: bold;
    margin: 0 0 5px 0;
  }
  .list-2column-block li {
    overflow: hidden;
    margin: 0 0 10px 0;
  }
  .list-2column-block .area-left {
    text-align: center;
    color: #fff;
    padding: 3px 0;
    margin: 0 0 5px 0;
  }
  .course-junior-high .list-2column-block .area-left {
    background: #e74c3c;
  }
  .dl-lineup {
    margin: 0 0 10px 0;
  }
  .dl-lineup .text {
    margin: 0 0 10px 0;
  }
  .dl-lineup dt .dt-title {
    color: #fff;
    padding: 6px;
    box-sizing: border-box;
  }
  .dl-lineup .dt-text {
    box-sizing: border-box;
    padding: 15px 20px 15px 10px;
  }
  .dl-lineup figure.text-center {
    width: 60%;
    margin: 10px auto;
  }
  .course-junior .dl-lineup .dt-text {
    background: url(../img/arrow-junior.png) no-repeat 97% center;
    background-size: 15px 9px;
    color: #ff9900;
  }
  .course-junior .dl-lineup .open .dt-text {
    background: url(../img/arrow-junior-open.png) no-repeat 97% center;
    background-size: 15px 9px;
  }
  .course-junior-high .dl-lineup .dt-text {
    background: url(../img/arrow-jh.png) no-repeat 97% center;
    background-size: 15px 9px;
    color: #e74c3c;
  }
  .course-junior-high .dl-lineup .open .dt-text {
    background: url(../img/arrow-jh-open.png) no-repeat 97% center;
    background-size: 15px 9px;
  }
  .course-junior-high3 .dl-lineup dt {
    border-bottom: solid 1px #b71c1c;
  }
  .course-junior-high3 .dl-lineup .dt-title {
    background: #b71c1c;
  }
  .course-junior-high3 .dl-lineup .dt-text {
    background: url(../img/arrow-jh3.png) no-repeat 97% center;
    background-size: 15px 9px;
    color: #b71c1c;
  }
  .course-junior-high3 .dl-lineup .open .dt-text {
    background: url(../img/arrow-jh3-open.png) no-repeat 97% center;
    background-size: 15px 9px;
  }

  .course-high .dl-lineup .dt-text {
    background: url(../img/arrow-high.png) no-repeat 97% center;
    background-size: 15px 9px;
    color: #884792;
  }
  .course-high .dl-lineup.ex .dt-text {
    background:none;
  }
  .course-high .dl-lineup .open .dt-text {
    background: url(../img/arrow-high-open.png) no-repeat 97% center;
    background-size: 15px 9px;
  }
  .sec-jh02 .text {
    padding: 0 120px 0 0;
    background: url(/course/img/junior-img01.png) no-repeat right top;
    background-size: 113px 162px;
  }
  .block-jh3-sidou {
    border-bottom: dashed 1px #b71c1c;
    margin: 15px 0;
  }
  .block-jh3-sidou .sidou-title {
    background: #b71c1c;
    border-radius: 15px;
    padding: 2px 0;
    color: #fff;
    text-align: center;
  }
  .list-jh3-sidou {
    margin: 10px 0;
  }
  .list-jh3-sidou li {
    text-align: center;
    margin: 0 2%;
  }
  .list-jh3-sidou .red-title span {
    display: inline-block;
    background: #fff;
    width: 100px;
    position: relative;
    z-index: 100;
  }
  .course-kobetu figure {
    margin: 0 0 15px;
  }
  .block-kobetu01 {
    margin: 0 0 10px 0;
  }
  .pink-text img {
    width: 60%;
    height: auto;
    margin: 20px 0 0;
    display: block;
  }
  .kon-text {
    color: #192F5B;
    font-weight: bold;
    font-size: 1.7em;
    line-height: 1.3em;
  }
  .list-margin-base li+li {
    margin: 15px 0 0 0;
  }
  .course-kobetu .block-faq-base dt {
    color: #dc6893;
    border-bottom: solid 1px #dc6893;
    background: url(../img/arrow-kobetu.png) no-repeat 97% center;
    background-size: 14px 8px;
  }
  .course-kobetu .block-faq-base dt.open {
    background: url(../img/arrow-kobetu-open.png) no-repeat 97% center;
    background-size: 14px 8px;
  }
  .course-kobetu .block-faq-base dt:before {
    background: url(/course/img/kobetu-q.png) no-repeat left center;
    background-size: 16px 16px;
  }

  /*-------------------- course-detail --------------------*/
  .course-detail-bnr {
    text-align: center;
    margin: 0 0 10px 0;
  }
  .block-course-base {
    margin: 0 0 20px 0;
  }
  .block-course-base .sec-margin {
    margin: 0 0 15px 0;
  }
  .block-course-base .anchor-base {
    padding: 15px 0;
  }
  .block-course-base .title {
    margin: 10px auto 15px;
    text-align: center;
    max-width: 280px;
  }
  .block-course-base .orange-bnr {
    background: #FF9900;
    color: #fff;
    text-align: center;
    border-radius: 20px;
    padding: 2px 0;
    margin: 0 0 10px 0;
    font-size: 14px;
  }
  .block-course-base .orange-text {
    text-align: center;
    color: #FF9900;
    font-size: 14px;
    margin: 0 0 5px 0;
  }
  .block-course-base .text {
    color: #212121;
  }
  .block-course-base .area-two-column {
    overflow: hidden;
    margin: 0 0 15px 0;
  }
  .block-course-base .area-two-column .area-left {
    margin: 0 0 20px 0;
  }
  .block-course-base .center-mode figure {
    margin: 0 0 15px 0;
  }
  .block-course-base .orange-title {
    font-size: 18px;
    color: #FF9900;
    margin: 0 0 5px 0;
    text-align: center;
  }
  .block-course-base .list-anchor-btn li {
    width: 44%;
    margin: 0 3%;
  }
  .block-course-base .area-img-text {
    margin: 0 0 20px 0;
  }
  .block-course-base .area-img-text .area-img {
    text-align: center;
    color: #fff;
  }
  .block-course-base .area-img-text .area-img.bg-orange {
    background: #ff9900;
    padding: 0.5em 0;
  }
  .block-course-base .area-img-text .area-text {
    color: #212121;
    margin: 8px 0 10px;
  }
  .sec-meet .block-course-base .area-video {
    width: 100%;
    margin: 0 auto 20px;
  }
  .sec-meet .block-course-base .area-video iframe {
    width: 100%;
    height: 200px;
  }
  .block-course-base .area-meet01 .orange-box {
    background: #faddb3;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin: 0 0 15px 0;
  }
  .block-course-base .area-meet01 .big-title {
    font-size: 20px;
    text-align: center;
    color: #ff9900;
  }
  .block-course-base .area-meet01 .big-title.spacing {
    letter-spacing: -2px;
  }
  .block-course-base .orange-box .small-video {
    margin: 10px 0;
    text-align: center;
  }
  .sec-tamai .area-top-text {
    margin: 0 0 15px 0;
  }
  .sec-tamai .area-profile {
    border-top: solid 1px #ffa011;
    border-bottom: solid 1px #ffa011;
    padding: 120px 0 10px;
    background: url(/course/img/junior-img14.png) no-repeat center 10px;
    background-size: 208px 105px;
    margin: 0 0 15px 0;
    font-size: 12px;
  }
  .sec-tamai .area-profile .strong-text {
    font-weight: bold;
    font-size: 14px;
  }
  .sec-tamai .area-sub-text {
    margin: 0 0 30px 0;
  }
  .list-tamai-step li {
    box-sizing: border-box;
    border: solid 1px #f29528;
    padding: 10px;
    margin: 0 0 10px 0;
  }
  .list-tamai-step .video {
    text-align: center;
  }
  .list-tamai-step .step-title {
    color: #fff;
    text-align: center;
    font-size: 16px;
    background: #f29528;
  }
  .list-tamai-point {
    margin: 0 0 30px 0;
  }
  .list-tamai-point li {
    width: 65%;
    margin: 0 auto 10px;
    text-align: center;
  }
  .buntatsu-img {
    margin: 0 auto 30px;
    width: 70%;
    text-align: center;
  }
  .buntatsu-img img {
    vertical-align: middle;
    margin: 5px 0;
  }
  .list-buntatsu-text li {
    margin: 0 0 10px 0;
  }
  .list-buntatsu-text .area-left {
    background: #ff9900;
    text-align: center;
    color: #fff;
  }
  .list-buntatsu-text .area-right {
    vertical-align: middle;
    margin: 5px 0;
  }
  .area-yomuzo01 {
    margin: 0 0 20px 0;
  }
  .area-yomuzo01 figure {
    text-align: center;
    width: 90%;
    margin: 0 auto;
  }
  .area-yomuzo01 .area-left {
    margin: 0 0 15px 0;
  }
  .list-yomuzo01 li {
    margin: 0 0 15px 0;
    border-bottom: dotted 1px #f29528;
    padding: 0 0 5px 0;
  }
  /* .list-yomuzo01 li .orange-text {
  } */
  .list-yomuzo02 li {
    float: left;
    width: 48%;
    margin: 2% 1%;
  }
  .list-yomuzo02 li:nth-child(2n+1) {
    clear: both;
  }
  .course-white-base {
    background: #fff;
    box-sizing: border-box;
    padding: 10px 10px 15px;
  }
  .course-white-base .text {
    font-size: 11px;
    margin: 10px 0;
  }
  .table-overflow {
    overflow-X: scroll;
  }
  .table-course-base {
    min-width: 400px;
    margin: 0 0 25px 0;
  }
  .table-course-base .align-left {
    text-align: left;
  }
  .table-course-base th {
    text-align: center;
    color: #212121;
    font-size: 11px;
    font-weight: 500;
    padding: 6px 3px;
    vertical-align: middle;
    min-width: 6em;
  }
  .table-course-base td {
    text-align: center;
    color: #212121;
    font-size: 11px;
    font-weight: 500;
    padding: 6px 3px;
    vertical-align: middle;
    min-width: 6em;
  }
  .course-junior-high .table-course-base th {
    background: rgba(229,115,115,0.6);
    border: solid 1px #E74C3C;
  }

  .list-kobetu-faq li {
    padding: 6px;
    box-sizing: border-box;
    background: #F4E4E3;
    margin: 0 0 10px 0;
  }

  /*------------------------------ ↓class-page ------------------------------*/
  .list-class-main .title-class {
    color: #009b4b;
    font-size: 18px;
    margin: 3px 0 1px;
  }
  .list-class-main .text {
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 10px 0;
  }
  .area-sp-class-main {
    width: 90%;
    margin: 0 auto 25px;
  }
  .dl-class-main {
    border: solid 2px #ff9800;
    margin: 0 0 5px 0;
  }
  .dl-class-main dt {
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
    height: 30px;
    line-height: 30px;
    background: #ff9800;
    position: relative;
    border-bottom: solid 2px #ff9800;
  }
  .dl-class-main dt.open {
    background: #fff;
    color: #ff9800;
  }
  .dl-class-main dt:after {
    width: 7px;
    height: 12px;
    background: url(../img/sp/arrow01.png) no-repeat;
    background-size: 7px 12px;
    position: absolute;
    content: '';
    left: 95%;
    top: 12px;
  }
  .dl-class-main dt.open:after {
    width: 12px;
    height: 7px;
    background: url(../img/sp/arrow05.png) no-repeat;
    background-size: 12px 7px;
    left: 94%;
    top: 14px;
  }
  .dl-class-main dd {
    background: #fff;
  }
  .dl-class-main dd a {
    display: block;
    height: 35px;
    line-height: 35px;
    box-sizing: border-box;
    padding: 0 0 0 15px;
    background: url(../img/sp/arrow03.png) no-repeat 96% center;
    background-size: 7px 12px;
    font-size: 12px;
    color: #0b4427;
    font-weight: 500;
  }
  .list-class-main-sp li {
    border-top: solid 1px #cccccc;
  }
  .list-class-main-sp li:first-child {
    border: none;
  }
  /*------------------------------ ↓class-single-page ------------------------------*/
  .sec-class-main-top .inner {
    margin: 0 auto 20px;
  }
  .sec-class-main {
    width: 94%;
    margin: 0 auto 20px;
    background: #ffffff;
    border: solid 1px #efefef;
    padding: 2%;
    box-sizing: border-box;
  }
  .sec-class-main .area-video {
    width: 90%;
    height: auto;
    overflow: hidden;
    margin: 0 auto 20px;
  }
  .sec-class-main .area-video video {
    width: 100%;
    height: auto;
  }
  .block-class-news {
    max-height: 300px;
    overflow-y: scroll;
    border: solid 1px #efefef;
    padding: 0 2%;
    margin: 0 auto 20px;
  }
  .list-class-news li {
    border-bottom: dotted 1px #dddddd;
    margin: 12px 0;
  }
  .title-class-news {
    font-size: 15px;
    color: #009b4b;
    margin: 0 0 5px 0;
  }
  .block-class-news .wp-editor p {
    margin: 0 0 10px;
    font-size: 12px;
  }
  .sec-class-slider {
    margin: 0 0 20px 0;
  }
  .sec-class-slider .inner {
    width: 94%;
    margin: 0 auto;
    background: #fffde5;
    border: solid 1px #f39c12;
    position: relative;
  }
  .sec-class-slider .inner:before {
    content: '';
    position: absolute;
    width: 14px;
    height: 18px;
    background: url(../img/class/pin01.png) no-repeat;
    background-size: 14px 18px;
    left: -6px;
    top: -6px;
  }
  .sec-class-slider .inner:after {
    content: '';
    position: absolute;
    width: 14px;
    height: 18px;
    background: url(../img/class/pin02.png) no-repeat;
    background-size: 14px 18px;
    right: -6px;
    top: -6px;
  }
  .title-class-slider {
    text-align: center;
    font-size: 20px;
    color: #f3990f;
    font-weight: 500;
    margin: 10px 0;
  }
  .slider-for {
    background: rgba(0,0,0,0.8);
    width: 90%;
    margin: 0 auto 20px;
  }
  .slider-for li {
    position: relative;
    height: 230px;
  }
  .slider-for img {
    max-height: 95%;
    max-width: 95%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  .slider-for .capture {
    position: absolute;
    z-index: 1000;
    width: 100%;
    margin: auto;
    box-sizing: border-box;
    padding: 8px 12px;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.5);
    color: #fff;
    font-size: 12px;
  }
  .slider-nav {
    width: 90%;
    margin: 0 auto 20px;
  }
  .slider-nav li {
    margin: 0 5px;
    overflow: hidden;
    height: 45px;
    text-align: center;
  }
  .slider-nav li img {
    width: 45px;
    margin: auto;
    height: 45px;
    box-sizing: border-box;
  }
  .slider-nav .slick-current img {
    border: solid 1px #FF9900;
  }
  /* 20250201 修正 */
  .sec-class-info {
    background: #fff;
    width: 94%;
    /* margin: 0 auto 30px; */
    margin: 0 auto 20px;
    padding: 2%;
    box-sizing: border-box;
  }
  .class-info-right {
    width: 85%;
    margin: 0 auto;
  }
  .class-info-right iframe {
    width: 100%;
    height: 300px;
  }
  .dl-class-info dt {
    background: #FFDFAE;
    padding: 4px 8px;
    font-weight: 600;
  }
  .dl-class-info dd {
    margin: 5px 0 15px 8px;
  }



  /*------------------------------ ↓success-page ------------------------------*/
  .success-tab-menu a {
    display: block;
    padding: 8px 0;
    text-align: center;
    color: #fff;
    font-weight: 500;
    position: relative;
    font-size: 10px;
  }


  .list-success-taiken li {
    margin: 15px 0;
    padding: 5px 1px 1px;
    background: #FFFEEB;
  }
  /* 20250423修正 */
  .list-success-taiken .area-title {
    /* background: url(/success/img/icon.png) no-repeat right top; */
    background: url(/success/img/icon_202504.png) no-repeat right top;
    background-size: 60px 59px;
    min-height: 60px;
  }
  .list-success-taiken figure {
    display: block;
    text-align: center;
    float: left;
    width: 80px;
    min-height: 80px;
    background: #ccc;
  }
  .list-success-taiken .area-title {
    float: left;
    min-width: 170px;
    width: 70%;
    margin: 0 0 0 2%;
  }
  .list-success-taiken .area-title .title {
    color: #6FB92C;
    margin: 3px 0;
    line-height: 1.4;
  }
  .list-success-taiken .area-title .success-school, .list-success-taiken .area-title .success-name {
    font-size: 10px;
  }
  .list-success-taiken .area-title span {
    font-size: 10px;
    color: #fff;
    background: #BD272D;
    padding: 0 4px;
    display: inline-block;
    border-radius: 3px;
    margin: 0 4px 0 0;
    vertical-align: middle;
    position: relative;
    top: -2px;
  }
  .list-success-taiken .text {
    margin: 10px;
    font-size: 12px;
  }
  .block-success-number {
    margin: 20px auto;
    width: 94%;
  }
  .list-success-number.type02:after {
    content: '他多数合格';
    position: absolute;
    bottom: 0px;
    right: 10px;
  }
  .list-success-number.type01 li {
    width: 31%;
    margin: 0 0 3% 3%;
    line-height: 2;
  }
  .list-success-number.type02 li {
    width: 23%;
    margin: 0 0 3% 2.5%;
    line-height: 1.6;
  }
  .list-success-number.type02 li:nth-child(4n+1) {
    clear: both;
    margin: 0 0 3% 0;
  }
  .list-success-number .title {
    font-size: 15px;
    color: #fff;
    background: #00A54B;
    padding: 1px 0;
  }
  .list-success-number .number {
    font-size: 30px;
    color: #00A54B;
    box-sizing: border-box;
    padding: 0 20px 0 0;
    background: url(/success/img/bg-type01.png) no-repeat center center;
    background-size: 88px 35px;
  }
  /*------------------------------ ↓flow-page ------------------------------*/
  .block-flow-main p.text {
    margin: 0 10px 15px;
  }
  .block-flow-main .flow-tel img {
    margin: 10px 0 0;
  }
  .block-flow-main a.tel-link {
    display: block;
    text-align: center;
    margin: 0 auto 20px;
    width: 150px;
  }
  /*------------------------------ ↓special-page ------------------------------*/
  .special-main-bnr {
    background: url(/special/img/bnr01.png) no-repeat center top;
    background-size: contain;
    width: 100%;
    height: 0;
    padding: 26.56% 0 0 0;
    margin: 0 0 20px 0;
  }
  .sec-special-bnr .white-base {
    margin: 0 auto 20px;
    text-align: center;
  }
  .sec-special-bnr figure {
    max-width: 300px;
    margin: 0 auto;
  }
  .sec-special-bnr .text {
    margin: 10px 0;
    text-align: center;
  }
  .sec-special-videos + .sec-special-videos {
    margin: 25px 0 0 0;
  }
  .sec-special-videos .text {
    margin: 10px 0;
  }
  .list-special-videos li {
    text-align: center;
    width: 290px;
    margin: 0 auto 15px;
  }
  .list-special-videos li:hover {
    opacity: 0.6;
  }
  .list-special-videos iframe {
    width: 100%;
    height: 170px;
  }
  .block-strength-main {
    position: relative;
    margin: 0 auto;
  }
  .special-strength-bnr {
    background: url(/special/img/sp-st-img00.png) no-repeat left top;
    width: 100%;
    height: 0;
    padding: 45.6% 0 0 0;
    background-size: contain
  }
  .block-strength-main .image {
    display: none;
  }
  .sec-strength .inner {
    background: #fff;
    padding: 20px 3%;
  }
  .sec-strength .title01 {
    background: url(/special/img/st-img02.png) no-repeat center center;
    background-size: contain;
    padding: 31.2% 0 0 0;
  }
  .sec-strength .title02 {
    background: url(/special/img/st-img03.png) no-repeat center center;
    background-size: contain;
    padding: 33.7% 0 0 0;
  }
  .sec-strength hr {
    width: 90%;
    margin: 20px auto;
    border: none;
    border-top: dotted 2px #e0801b;
  }
  .sec-strength .list-btn-base {
    margin: 20px auto 0;
    text-align: center;
  }
  .list-btn-base li {
    display: inline-block;
    margin: 10px;
  }
  .list-tvcm li {
    margin: 0 auto 20px;
    width: 90%;
    text-align: center;
  }
  .list-tvcm li:hover {
    opacity: 0.6;
  }
  .list-tvcm .area-video {
    margin: 0 0 5px 0;
  }
  .list-tvcm .area-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .list-tvcm .title {
    color: #009b4b;
    font-size: 15px;
  }
  .list-anchor-btn {
    margin: 10px 0;
    padding: 5px 0;
  }
  .list-anchor-btn li {
    width: 31%;
    margin: 0 1%;
    text-align: center;
    float: left;
    box-shadow: 0px 1px 5px 0px #ccc;
    border: solid 1px #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    background: url(../img/btn-base.png) repeat-x;
    font-size: 11px;
  }
  .list-anchor-btn li a {
    display: block;
    padding: 8px 5px 8px 0;
    color: #333333;
    background: url(../img/arrow-btn-base.png) no-repeat 95% center;
    background-size: 8px 5px;
  }
  .list-anchor-btn img {
    vertical-align: middle;
    max-height: 16px;
  }
  .block-archives-base {
    padding: 10px 0;
  }
  .block-archives-base .area-border {
    border: solid 1px #009b4b;
    padding: 10px;
    overflow: hidden;
  }
  .block-archives-base .area-border .spot-video {
    border: solid 1px #009b4b;
    margin: 0 0 10px 0;
  }
  .block-archives-base .area-border .spot-video iframe {
    width: 100%;
    height: 200px;
    vertical-align: bottom;
  }
  .block-archives-base .area-border .spot-text {
    font-size: 12px;
  }
  .block-archives-base .area-border .spot-text ul li {
    display: inline-block;
    margin: 0 10px 0 0;
  }
  .block-archives-base .area-border .archives-title {
    color: #009b4b;
    font-size: 15px;
  }
  .block-archives-base .area-border .spot-text p {
    margin: 0 0 8px 0;
  }
  .block-archives-base .area-border .spot-text figure {
    width: 80%;
    margin: 5px auto;
  }
  .parents-main-img {
    text-align: center;
    position: relative;
    z-index: 4;
    top: 20px;
  }
  .block-parents-list {
    background: url(/special/img/parents-bg.png);
    padding: 25px 0;
    position: relative;
    z-index: 1;
  }
  .list-parents-list li {
    background: #fff;
    padding: 8px;
    border-radius: 4px;
    box-sizing: border-box;
    width: 96%;
    margin: 0 auto 20px;
  }
  .list-parents-list li.two-column .area-left {
    margin: 0 0 15px 0;
    border-bottom: 1px dashed #ccc;
    padding: 0 0 15px 0;
  }
  .list-parents-list li .title {
    color: #FF9605;
    font-size: 16px;
    padding: 5px 0 5px 24px;
    border-bottom: solid 1px #FF9605;
    margin: 0 0 10px 0;
  }
  .list-parents-list li .sub-title {
    color: #FF9605;
    font-size: 15px;
  }
  .list-parents-list li .text {
    margin: 0 0 1em 0;
    line-height: 1.5;
  }
  .list-parents-list li:nth-child(1) .title {
    background: url(/special/img/parents-number01.png) no-repeat left center;
    background-size: 20px 20px;
  }
  .list-parents-list li:nth-child(2) .title {
    background: url(/special/img/parents-number02.png) no-repeat left center;
    background-size: 20px 20px;
  }
  .list-parents-list li:nth-child(3) .title {
    background: url(/special/img/parents-number03.png) no-repeat left center;
    background-size: 20px 20px;
  }
  .list-parents-list li:nth-child(4) .title {
    background: url(/special/img/parents-number04.png) no-repeat left center;
    background-size: 20px 20px;
  }
  .list-parents-list li:nth-child(5) .title {
    background: url(/special/img/parents-number05.png) no-repeat left center;
    background-size: 20px 20px;
  }
  .list-parents-list li .title span {
    font-size: 11px;
  }
  .block-faq-base dt {
    position: relative;
    color: #00A54B;
    padding: 7px 20px 7px 25px;
    border-bottom: solid 1px #00A54B;
    background: url(../img/arrow-close.png) no-repeat 98% center;
    background-size: 13px 7px;
  }
  .block-faq-base dt:hover {
    opacity: 0.7;
  }
  .block-faq-base {
    margin: 0 0 20px 0;
  }
  .block-faq-base .title-base-me {
    margin: 0 0 10px 0;
  }
  .block-faq-base dt.open {
    background: url(../img/arrow-open.png) no-repeat 98% center;
    background-size: 13px 7px;
  }
  .block-faq-base dt:before {
    position: absolute;
    content: '';
    background: url(/special/img/q.png);
    background-size: 20px 20px;
    width: 20px;
    height: 20px;
    left: 0;
    top: 10px;
  }
  .block-faq-base dd {
    padding: 0px 5px 5px 25px;
    margin: 10px 0 0;
    background: url(/special/img/a.png) no-repeat left top;
    background-size: 20px 20px;
  }
  .block-parents-voice .white-base {
    padding: 20px 15px;
  }
  .list-parents-voice li {
    background: #FFFEEB;
    box-sizing: border-box;
    padding: 10px;
    box-shadow: 0px 3px 5px 1px #ccc;
    margin: 0 3px 15px;
    position: relative;
  }
  .list-parents-voice .title-area {
    padding: 0px 0 5px 50px;
    background: url(/special/img/parents-icon.png) no-repeat left top;
    background-size: 44px 50px;
    min-height: 50px;
    border-bottom: solid 1px #ccc;
  }
  .course-junior .block-entered .list-parents-voice .title-area {
    background: url(/course/img/junior-voice01.png) no-repeat left top;
    background-size: 44px 50px;
  }
  .course-junior .block-entered .list-parents-voice .title-area.junior-voice-male {
    background: url(/course/img/junior-voice02.png) no-repeat left top;
    background-size: 39px 50px;
  }
  .course-junior .block-entered .list-parents-voice .long-type .title-area {
    background: url(/course/img/junior-voice02.png) no-repeat left top;
    background-size: 39px 50px;
  }
  .course-junior-high .block-entered .list-parents-voice .type-jh01 .title-area {
    background: url(/course/img/jh-voice01.png) no-repeat left top;
    background-size: 40px 50px;
  }
  .course-junior-high .block-entered .list-parents-voice .type-jh02 .title-area {
    background: url(/course/img/jh-voice02.png) no-repeat left top;
    background-size: 40px 50px;
  }
  .course-high .block-entered .list-parents-voice .title-area {
    background: url(/course/img/high-voice01.png) no-repeat left top;
    background-size: 40px 50px;
  }
  .course-high .list-parents-voice li:nth-child(1):before {
    content: '';
    position: absolute;
    right: 0px;
    top: -45px;
    background: url(/course/img/high-voice02.png) no-repeat;
    background-size: 60px 60px;
    width: 60px;
    height: 60px;
  }
  .course-high .list-parents-voice li:nth-child(2):before {
    content: '';
    position: absolute;
    right: 0px;
    top: -45px;
    background: url(/course/img/high-voice03.png) no-repeat;
    background-size: 60px 60px;
    width: 60px;
    height: 60px;
  }
  .course-high .list-parents-voice li {
    margin: 45px 3px;
  }
  .list-parents-voice {
    font-size: 12px;
  }
  .list-parents-voice .title-area .title {
    color: #00A54B;
    font-size: 14px;
    font-weight: bold;
  }
  .list-parents-voice .text-area .text {
    background: url(/special/img/bg-line.png) repeat;
    line-height: 30px;
  }
  .faq-page .white-base {
    width: 94%;
    margin: 0 auto 20px;
    border: solid 1px #efefef;
  }
  /*------------------------------ ↓company-page ------------------------------*/
  .list-company-main {
    background: #fff;
    margin: 10px 0 20px;
  }
  .list-company-main li {
    overflow: hidden;
    color: #0b4427;
  }
  .list-company-main .area-left {
    text-align: center;
    font-size: 12px;
    background: #ffe0b2;
    padding: 3px 0;
    font-weight: 600;
  }
  .list-company-main .area-right {
    box-sizing: border-box;
    vertical-align: middle;
    font-size: 12px;
    background: #fff;
    padding: 10px;
  }
  /*------------------------------ ↓recruit-page ------------------------------*/
  /* .recruit-main-bnr {
    background: url(../img/recruit/sp-bnr.png) no-repeat center top;
    height: 0;
    background-size: contain;
    padding: 37.5% 0 0 0;
  }
  .sec-recruit01 {
    margin: 10px 0 0 0;
  }
  .sec-recruit01 .text {
    margin: 0 10px 15px;
    font-size: 12px;
    color: #212121;
    line-height: 1.9;
  }
  .title-recruit-point {
    text-align: center;
    width: 40%;
    max-width: 150px;
    margin: 5px auto 10px;
  }
  .list-recruit-point {
    width: 260px;
    margin: 0 auto 10px;
  }
  .list-recruit-point li {
    margin: 0 0 15px 0;
  }
  .list-recruit-point .text {
    font-size: 12px;
  }
  .list-recruit-point .text a {
    text-decoration: underline;
    color: #039;
  } */
  /*------------------------------ ↓inquiry-page ------------------------------*/
  .inquiry-main .white-base {
    width: 94%;
    margin: 0 auto 20px;
  }
  .inquiry-main .title-privacy {
    font-size: 15px;
    font-weight: 600;
    border-bottom: solid 1px #000;
    padding: 0 0 5px 0;
    margin: 0 0 8px 0;
  }
  .inquiry-main .subtitle-privacy {
    margin: 8px 0;
    font-weight: 500;
  }
  .inquiry-main .dl-privacy dd {
    margin: 0 0 15px 0;
  }
  .inquiry-page .privacy-top-text {
    margin: 20px auto 0;
    font-weight: 500;
    font-size: 14px;
    width: 90%;
  }
  .inquiry-main .area-privacy-signature {
    border-top: dashed 1px #000;
    border-bottom: dashed 1px #000;
    padding: 5px;
    text-align: center;
  }
  .inquiry-page .text-center {
    width: 90%;
    margin: 0 auto;
  }
  .list-inquiry-choice {
    margin: 10px auto;
    width: 90%;
  }
  .form-base {
    background: #fff;
    border: solid 1px #f5f5f5;
    box-sizing: border-box;
    width: 94%;
    padding: 10px;
    margin: 15px auto 20px;
  }
  .form-base label {
    font-weight: 500;
  }
  .form-base .gender label {
    display: flex;
  }
  .form-base select {
    font-size: 16px;
  }
  .form-base input {
    width: 94%;
    margin-bottom: 3%;
  }
  .form-base input[type="radio"] + label {
    margin: 0 12px 0 5px;
  }
  .form-base .input-address input {
    width: 94%;
  }
  .form-base input.seireki_y4 {
    width: 71%;
  }
  .form-base textarea {
    width: 94%;
  }
  .list-form-base li {
    overflow: hidden;
    padding: 10px 0;
  }
  .list-form-base li .area-left {
    position: relative;
    font-size: 15px;
    font-weight: 500;
    border-bottom: solid 1px #f5f5f5;
    margin: 0 0 8px 0;
    padding: 0 0 3px 0;
  }
  .list-form-base li .area-left .hissu {
    display: inline-block;
    text-align: center;
    background: #e74c3c;
    color: #fff;
    font-size: 11px;
    height: 20px;
    line-height: 20px;
    width: 50px;
    /* position: absolute; */
    /* top: 0; */
    /* right: 0; */
    margin-left: 5px;
  }
  .list-form-base li .area-right {
    font-size: 13px;
    margin: 0 0 0 4px;
    padding: 0 0 7px 0;
    border-bottom: solid 1px #ccc;
  }
  .area-submit input[type="submit"] {
    width: 270px;
    height: 37px;
    background: url(inquiry/img/btn-submit.png) no-repeat;
    background-size: 270px 37px;
    border: none;
    cursor: pointer;
    margin: 0 0 20px 0;
  }
  .area-submit .btn-policy {
    margin: 0 0 15px 0;
    font-size: 14px;
  }
  .area-submit .btn-policy label {
    padding: 0 0 0 10px;
    cursor: pointer;
    transition: 0.2s;
  }
  .area-submit .wpcf7-spinner {
    margin: 0 0 0 10px !important;
  }
  .form-course-box {
    margin: 20px 0;
    border: solid 1px #999;
  }
  .form-course-box .course-title {
    text-align: center;
    padding: 6px;
    color: #fff;
  }
  .form-course-box.course-junior-high .course-title {
    background: #0774F5;
  }
  .list-form-table li {
    overflow: hidden;
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #999;
  }
  .list-form-table li p {
    padding: 6px;
    font-size: 12px;
  }
  .list-form-table li p.event-title {
    width: 100%;
    font-size: 14px;
    font-weight: bold;
    border-bottom: dotted 1px #ccc;
  }
  .form-event-text {
    line-height: 20px;
    height: 20px;
    font-weight: 600;
    margin: 5px 0;
  }
  .form-event-text span {
    display: inline-block;
    width: 50px;
    height: 20px;
    background: #e74c3c;
    color: #fff;
    text-align: center;
    font-size: 11px;
  }
  #form06-1, #form03-1, #form03-3 {
    margin: 0 0 10px 0;
  }
  #formWrap {
    width: 94% !important;
    margin: 0 auto;
  }
  .inquiry-page .text-center.thanks-back {
    margin: 30px auto;
    width: 70%;
  }
  .accent { font-weight: bold; color: #f00; }
  
  
  /*---------------- ↓taiken --------------------*/
  .taiken-main .white-base {
    padding: 20px 10px;
  }
  .taiken-main figure {
    text-align: center;
    margin: 0 auto 20px;
    width: 90%;
  }
  .list-taiken01 {
    width: 100%;
    margin: 0 auto 20px;
  }
  .list-taiken01 li {
    border-bottom: dashed 2px #ccc;
    padding: 5px 0 5px 2.3em;
    position: relative;
  }
  .list-taiken01 li:before {
    position: absolute;
    left: 3px;
    top: 6px;
    line-height: 1.5;
    background: #FF9800;
    height: 1.5em;
    width: 1.5em;
    border-radius: 50%;
    text-align: center;
    color: #fff;
  }

  .taiken-main .strong-text {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    margin: 25px 0;
  }
  .list-taiken02 li {
    width: 100%;
    background: #009944;
    border-radius: 10px;
    box-sizing: border-box;
    padding: 5px;
    margin: 0 0 15px 0;
  }
  .list-taiken02 .title {
    color: #fff;
    text-align: center;
    font-size: 15px;
    line-height: 20px;
    vertical-align: middle;
    padding: 5px 0;
  }
  .list-taiken02 .title span {
    font-size: 20px;
    position: relative;
    top: 1px;
    left: 2px;
  }
  .list-taiken02 .text {
    background: #fff;
    padding: 8px;
    font-size: 12px;
    border-radius: 5px;
  }
  .btn-taiken {
    text-align: center;
    margin: 20px auto;
    width: 200px;
  }
  /*------------------------------ ↓sitemap-page ------------------------------*/
  .list-sitemap {
    margin: 0 0 20px 0;
  }
  .list-sitemap > li:before {
    content: '●';
    color: #FF9900;
    font-size: 10px;
    padding: 0 5px 0 0;
    vertical-align: middle;
  }
  .list-sitemap > li {
    float: left;
    /* width: 50%; */
    width: 46%;
    font-size: 12px;
    margin: 0 0 3px 0;
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .list-sitemap.ex > li {
    width: 100%;
    float: none;
  }
  .list-sitemap > li.list-sitemap-ex {
    width: 100%;
  }
  .list-sitemap > li:nth-child(2n+1) {
    clear: both;
  }
  .list-small-sitemap {
    margin: 0 0 15px 0;
  }

  /*------------------------------ ↓news-page ------------------------------*/
  .list-news-main {
    margin: 0 0 15px 0;
  }
  .list-news-main li {
    border-bottom: dotted 2px #cccccc;
    background: url(../img/arrow-news.png) no-repeat 99% center;
    background-size: 20px 20px;
  }
  .area-news-info .cat-tag {
    background: #009b4b;
    display: inline-block;
    height: 16px;
    line-height: 16px;
    padding: 0 15px;
    border-radius: 5px;
    color: #fff;
    font-size: 10px;
    margin: 0 10px 0 0;
  }
  .area-news-info time {
    display: inline-block;
    line-height: 16px;
    font-size: 12px;
  }

  .list-news-main .text {
    color: #333;
    margin: 5px 0;
    width: 90%;
    font-size: 12px;
  }
  .wp-editor hr {
    clear: both;
    margin: 15px 0;
    color: #ebe8e0;
    background-color: #ebe8e0;
    height: 3px;
    border: none;
  }
  .wp-editor .alignleft {
    float: left;
    margin: 0 10px 10px 0;
  }
  .wp-editor .alignright {
    float: right;
    margin: 0 0 10px 10px;
  }
  .wp-editor a {
    color: #00F;
    text-decoration: underline;
  }
  .news-page .wp-editor {
    margin: 10px 0 30px;
    padding: 0 0 20px 0;
    border-bottom: 2px dotted #e0801b;
  }
  .wp-editor h2 {
    background: url(../img/title-bg-me.png) no-repeat left bottom;
    font-size: 16px;
    color: #f3990f;
    font-weight: 500;
    width: 100%;
    box-sizing: border-box;
    padding: 0 0 3px 30px;
    position: relative;
    margin: 0 0 15px 0;
  }
  .wp-editor h2:before {
    content: '';
    width: 16px;
    height: 18px;
    background: url(../img/title-bg-icon.png) no-repeat;
    background-size: 16px 18px;
    position: absolute;
    left: 10px;
    bottom: 6px;
    font-size: 16px;
  }
  .wp-editor h3 {
    font-weight: 500;
    border-bottom: dotted 2px #cccccc;
    margin: 0 0 15px 0;
    padding: 0;
  }
  .wp-editor p {
    margin: 10px 0;
  }
  .wp-editor .area-news-info {
    text-align: right;
  }
  .wp-editor .area-news-info p {
    margin: 0 5px 5px 0;
  }
  .news-page .btn-green-base a {
    background: url(../img/slider-prev03.png) no-repeat 5% center;
    background-size: 10px 17px;
  }
  /*-- lpページ --*/
  .area-feature-bnr {
    background: #FFF9D6;
    padding: 15px;
  }
  .feature-page img {
    vertical-align: bottom;
  }
  .sp-tamai .video-box {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .sp-tamai .tamai-video {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .world-box01 {
    border: solid 3px #009438;
    padding: 0 15px 10px;
    background: #fff;
    margin: 15px auto;
  }

  /*------------------------------↓160607追加/feature/sp-0601-----------------------------*/
  .mgt20_10 {margin-top:10px;}

  
  /*------------------------------↓161224追加/feature/sp-1701-----------------------------*/
  .school-list {
    width: 100%;
    max-width: 640px;
    margin: 3% auto;
    text-align: center;
    font-size: 1.6em;
  }

  
  /*------------------------------↓20170321追加 スマホ用tap to call-----------------------------*/
  .tellink a{color: blue; text-decoration: underline; cursor: pointer;}
  
  /* １週間無料体験　追加 CSS */
  
  .sp-taiken2017 h2{
    text-align: center;
    background-color: #F39800;
    color: #fff;
    max-width: 640px;
    margin: 0 auto;
    height: 75px;
    line-height: 75px;
    font-size: 130%;
  }

  
  
  /* 20171019 冬期講習会追加CSS */
  .toki_checkbox .form-base input {
    width: auto !important;
  }
  
  
  /*------------------------------↓180118追加/asuvision用CSS/-----------------------------*/
  .asuvision-box{font-size: 16px;}
  
  .asuvision-box .asu-contents{border:2px solid #884792; background: #F6EBF3; padding: 15px; margin-bottom: 30px;}
  .asuvision-box .asu-contents h3{color: #884792; font-size: 20px; text-align: center; margin-bottom: 15px; font-weight: bold;}

  .asuvision-box .asu-contents .col.cont01 .col2:first-child,
  .asuvision-box .asu-contents .col.cont02 .col2:first-child,
  .asuvision-box .asu-contents .col.cont03 .col2:first-child,
  .asuvision-box .asu-contents .col.cont04 .col2:first-child,
  .asuvision-box .asu-contents .col.cont01 .col2:last-child,
  .asuvision-box .asu-contents .col.cont02 .col2:last-child,
  .asuvision-box .asu-contents .col.cont03 .col2:last-child,
  .asuvision-box .asu-contents .col.cont04 .col2:last-child{width: 100%;}
  
  .asuvision-box .asu-contents .col.cont01 .col2:last-child,
  .asuvision-box .asu-contents .col.cont02 .col2:last-child,
  .asuvision-box .asu-contents .col.cont03 .col2:last-child,
  .asuvision-box .asu-contents .col.cont04 .col2:last-child{text-align: center;}
  
  .asuvision-box .asu-contents .sp-only{display: block;}
  
  
  
  /*------------------------------↓180308追加学研グループロゴ用CSS/-----------------------------*/
  .gakkengroup{
    display: block;
    position: static;
    top: 0px;
    margin-left: 0px;
  }
  

  /*------------------------------↓0407入試説明会用日時テーブル（再利用可）/-----------------------------*/
  .schedule_table th,
  .schedule_table td{
    width: 100%;
    display: block;
    padding: 15px;
    vertical-align: middle;
    border-style: solid;
    border-color: #ccc;
    border-width: 0 1px 1px 0;
    font-size: 18px;
    box-sizing: border-box;
  }

  .schedule_table td{text-align: center;}
  
  /* SP時の変更 */
  .schedule_table thead *{display: none;}
  .schedule_table th::before{content: "教室：";}
  .schedule_table td::before{content: "日時：";}   
  
  
  /* 特集ページ用資料請求ボタン */
  /* .formbtn{} */
  .formbtn a{
    display: block;
    width: 90%;
    margin: 0 auto;
    background: linear-gradient(#ffc800 , #FF9901);
    /* background: #FF9901; */
    color: #fff;
    border-radius: 10px;
    padding: 15px 5px;
    font-size: 16px;
    font-weight: bold;
  }
  
  
  /* 202010917作文コンクール発表用CSS */
  
  #sakubun .result-title{
  color: #59B431;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 40px;
  }
  
  #sakubun .result-title span{font-size: 30px; display: block; line-height: 1.4;}


  #sakubun .result-wrap .result-text{
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 20px;
  }

  #sakubun .result-wrap h4{
    background: #92cf5b;
    padding: 10px 0;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    border-radius: 10px;
  }

  #sakubun .ranking-title{
    text-align: left;
    color: #59B431;
    font-weight: bold;
    font-size: 14px;
    /* border-bottom: 1px solid #59B431; */
  }

  #sakubun .sakubun-wrap b{
    display: block;
    margin-bottom: 30px;
    font-size: 12px;
    text-align: center;
  }
  #sakubun .sakubun-wrap p{line-height: 2; font-size: 14px;}


    /*タブ実装*/
  .tab_box .tab_btn {
    width: calc(50% - 10px);
    padding: 8px 0;
    color: #333;
    background: #FED966;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease 0s;
  }
  
  
  /* 20220226追加 */
  .formlink-btn a{
    display: block;
    background: #e80000;
    color: #fff;
    padding: 10px;
    border-radius: 100px;
    max-width: 500px;
    margin: 0 auto 40px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    line-height: 1.4;
    box-shadow: 0 5px #7c0000;
    transform: translateY(0px);
    transition: all .3s cubic-bezier(.55,0,.1,1);
  }
  
  .sp-only,.sp-only img{display: block;}
  
  /*------------------------------↓20220427/ライン用テーブル/-----------------------------*/
  .line-listtable,
  .line-listtable tbody,
  .line-listtable tr,
  .line-listtable th,
  .line-listtable td{
    display: block;
  }
  
  .line-listtable th,
  .line-listtable td{
    width: 100%;
    padding: 15px;
    vertical-align: middle;
    border-style: solid;
    border-color: #ccc;
    border-width: 0 1px 1px 0;
    font-size: 18px;
    box-sizing: border-box;
  }

}



/* PC Only */
@media screen and (min-width: 768px) {
  .only-sp {display: none;}

  body {
    background: #feedd4;
  }
  .inner {
    width: 960px;
    margin: 0 auto;
  }
  .hov {
    transition: all .3s;
    -webkit-transition: all .3s;
  }
  .hov:hover {
    opacity: 0.7;
  }
  .title-base {
    background: url(../img/title-bg.png) no-repeat left top;
    width: 100%;
    height: 62px;
    line-height: 62px;
    box-sizing: border-box;
    padding: 0 0 0 62px;
    font-size: 23px;
    color: #0b4427;
    font-weight: bold;
    margin: 0 0 15px 0;
    border-top: solid 1px #efefef;
    border-left: solid 1px #efefef;
    border-right: solid 1px #efefef;
    position: relative;
  }
  .title-base .itiran {
    display: block;
    position: absolute;
    right: 15px;
    top: 3px;
  }

  .title_center .itiran_2 {
    float: right;
    height: 28px;
    padding: 7px 0 0 20px;
    position: absolute;
  }

  .title-base-orange {
    background: url(../img/title-bg-orange.png) no-repeat left top;
    width: 100%;
    height: 62px;
    line-height: 62px;
    box-sizing: border-box;
    padding: 0 0 0 62px;
    font-size: 23px;
    color: #fff;
    font-weight: 400;
    margin: 0 0 25px 0;
    position: relative;
  }
  .title-base-me {
    background: url(../img/title-bg-me.png) no-repeat left bottom;
    font-size: 23px;
    color: #f3990f;
    font-weight: 500;
    width: 100%;
    box-sizing: border-box;
    padding: 0 0 5px 50px;
    position: relative;
    margin: 0 0 30px 0;
    letter-spacing: 1px;
  }
  .title-base-me:before {
    content: '';
    width: 31px;
    height: 36px;
    background: url(../img/title-bg-icon.png);
    position: absolute;
    left: 10px;
    bottom: 6px;
  }
  .title-base-sitemap {
    border-left: 3px solid #FF9900;
    border-bottom: 1px solid #FF9900;
    font-size: 18px;
    font-weight: 600;
    padding: 5px 12px;
    margin: 0 0 20px 0;
  }
  .course-junior-high .title-base-orange {
    background: url(../img/title-bg-red.png) no-repeat left top;
  }
  .course-junior-high .title-base-me {
    background: url(/course/img/bg-jh.png) repeat-x left bottom;
    color: #e74c3c;
  }
  .course-junior-high3 .title-base-orange {
    background: url(../img/title-bg-red02.png) no-repeat left top;
  }
  .course-junior-high3 .title-base-me {
    background: url(/course/img/bg-jh3.png) repeat-x left bottom;
    color: #b71c1c;
  }
  .course-high .title-base-orange {
    background: url(../img/title-bg-purple.png) no-repeat left top;
  }
  .course-high .title-base-me {
    background: url(/course/img/bg-h.png) repeat-x left bottom;
    color: #884792;
  }
  .course-kobetu .title-base-orange {
    background: url(../img/title-bg-pink.png) no-repeat left top;
  }
  a.youtube:hover:before {
    background: url(../img/youtube-on.png);
    background-size: 40px 40px;
  }
  /*家塾バナー*/
  .bnr_uchijuku {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .bnr_uchijuku img {
    width: 100%;
  }
  /*--------------------- ↓sub-page-common ----------------------*/
  .list-bread {
    width: 920px;
    margin: 12px auto;
    /* margin: -8px auto 12px auto; */
  }
  .list-bread li {
    display: inline-block;
    font-size: 12px;
  }
  .list-bread li + li:before {
    content: '>';
    margin: 0 8px;
    color: #4d4646;
  }
  .list-bread a:hover {
    text-decoration: underline;
  }
  .parts-inquiry-mail {
    border: solid 1px #ff9900;
    border-radius: 10px;
    margin: 25px 0;
    background: #fff;
    overflow: hidden;
  }
  .parts-inquiry-mail .area-title {
    background: #ff9900;
    padding: 10px 0;
    text-align: center;
    font-size: 24px;
    color: #fff;
  }
  .parts-inquiry-mail .area-title span {
    color: #212121;
    font-size: 18px;
    padding: 0 0 0 15px;
  }
  .parts-inquiry-mail .area-text {
    padding: 20px 0;
    text-align: center;
  }
  .parts-inquiry-mail .area-text .text {
    font-size: 16px;
    font-weight: 500;
  }
  .parts-inquiry-mail .area-image {
    overflow: hidden;
    margin: 20px 0 0;
  }
  .parts-inquiry-mail .area-image .tel {
    pointer-events: none;
  }
  .parts-inquiry-mail .area-image p {
    display: inline-block;
    vertical-align: middle;
    margin: 0 7px;
  }
  .btn-green-base {
    width: 370px;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background: #009b4b;
    border-radius: 4px;
    margin: 0 auto;
    text-align: center;
    border: solid 1px #009b4b;
    transition: .3s;
  }




  /* ここからまる貼り */
  .btn-green-base:hover {
    background: #fff;
    color: #009b4b;
  }
  .btn-green-base a {
    display: block;
    background: url(../img/slider-next03.png) no-repeat 95% center;
    background-size: 10px 17px;
  }
  .btn-green-base a:hover {
    background: url(../img/slider-next02.png) no-repeat 95% center;
    background-size: 10px 17px;
  }
  .btn-green-base.margin {
    margin: 30px auto;
  }
  .btn-green-base02 {
    text-align:center;
    margin:40px auto 20px;
  }
  .btn-green-base02 a{
    display:inline-block;
    height: 40px;
    line-height: 40px;
    color: #fff;
    background-color: #009b4b;
    margin:0 10px;
    padding:0 40px;
    background-image: url(../img/slider-prev03.png);
    background-position:5% center;
    background-repeat:no-repeat;
    background-size: 10px 17px;
    transition:0.2s;
    border:solid 1px #009b4b;
    border-radius:4px;
  }
  .btn-green-base02 a:hover {
    background-image: url(../img/slider-prev02.png);
    background-position:5% center;
    background-repeat:no-repeat;
    background-size: 10px 17px;
    background-color:#fff;
    color:#009b4b;
  }
  .onecolumn-white-base {
    background: #fff;
    box-sizing: border-box;
    border: solid 1px #efefef;
    padding: 25px;
    margin: 0 auto 30px;
  }
  .white-base {
    background: #fff;
    box-sizing: border-box;
    padding: 15px 20px;
  }
  
  .sec-margin {
    margin: 0 0 30px 0;
  }
  .list-anchor-btn {
    margin: 20px 0;
    padding: 5px 0;
  }
  .list-anchor-btn li {
    width: 31%;
    margin: 0 1%;
    text-align: center;
    float: left;
    box-shadow: 0px 1px 5px 0px #ccc;
    border: solid 1px #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    background: url(../img/btn-base.png) repeat-x;
    transition: 0.2s;
  }
  .list-anchor-btn li a {
    display: block;
    padding: 10px 0;
    color: #333333;
    background: url(../img/arrow-btn-base.png) no-repeat 95% center;
    transition: 0.2s;
  }
  .list-anchor-btn li:hover {
    background: #009b4b;
  }
  .list-anchor-btn li:hover a {
    color: #fff;
    background: url(../img/arrow-btn-base02.png) no-repeat 96% center;
  }

  /*---------------------------------------- ↓header ----------------------------------------*/
  header {
    background: #fdfdfd;
    min-width: 1000px;
    border-top: solid 8px #6f4b3e;
  }
  header .inner {
    padding: 15px 0;
  }
  header .h-text {
    font-size: 11px;
    margin: 0 0 8px 0;
  }
  header .main-logo {
    float: left;
    max-width: 370px;
    margin: 24px 0 0 0;
  }
  .main-logo img {
    max-width: 100%;
    height: auto;
  }
  header .area-bnr {
    float: right;
  }
  header .area-bnr img {
    vertical-align: bottom;
  }
  header .area-bnr .spot-tel img {
    margin: 0 3px 0;
  }
  header .area-bnr .spot-tel {
    margin: 0 0 10px 0;
  }
  .area-bnr .list-h-bnr li {
    float: left;
  }
  .area-bnr .list-h-bnr a {
    display: block;
  }

  /* ヘッダーボタンフォーカス取得時のボタン変更 */
  .area-bnr .list-h-bnr a.taikenbtn {
    background: url(/img/bnr_taikenbtn_on.png) no-repeat;
  }
  .area-bnr .list-h-bnr a.koshubtn {
    background: url(/img/bnr_koshubtn_on.png) no-repeat;
  }
  .area-bnr .list-h-bnr a {
    background-size: 0  !important;
  }
  .area-bnr .list-h-bnr a:hover,
  .area-bnr .list-h-bnr a:focus {
    transition: 0.2s;
    background-size: auto !important;
    opacity: 1;
  }
  .area-bnr .list-h-bnr a img {
    transition: 0.2s;
    opacity: 1;
  }
  .area-bnr .list-h-bnr a:hover img,
  .area-bnr .list-h-bnr a:focus img {
    transition: 0.2s;
    opacity: 0;
  }
  /* .area-bnr .list-h-bnr a:hover img {
    opacity: 0;
  } */
  .sp-nav-btn { display: none;}
  
  nav {
    background: url(../img/nav-bg.png) repeat-x left top;
    min-width: 1000px;
    height: 60px;
    position: relative;
    z-index: 1000;
  }
  .list-main-nav {
    width: 960px;
    margin: 0 auto;
    overflow: visible;
  }
  .list-main-nav > li {
    float: left;
    margin: 5px 0 0 8px;
    /* width: 185px; */
    /* width: calc((100% / 6) - 8px); */
    /* 20250201 修正 */
    width: calc((100% / 5) - 8px);
    height: 50px;
    text-align: center;
  }
  .list-main-nav li a {
    display: block;
    line-height: 50px;
    color: #0b4427;
    font-weight: 600;
    /* background: url(../img/nav-base.png) no-repeat; */
    background: rgb(245,247,248);
    background: linear-gradient(0deg, rgba(245,247,248,1) 0%, rgba(255,255,255,1) 100%);
    border: 1px solid #fff inset;
    box-shadow: 2px 2px 2px 2px rgb(0,0,0,0.1);
    transition: .2s;
    border-radius: 5px;
  }
  .list-main-nav li a:hover {
    opacity: 0.8;
  }
  .list-main-nav li dt.open a {
    -webkit-filter: invert(15%);
    filter: invert(15%);
  }
  /* 20250201修正 */
  .list-main-nav > li:first-child {
    /* margin: 6px 0 0 0; */
    margin: 5px 0 0 0;
  }
  /* 20250219修正 */
  .list-mega {
    background: rgba(41,187,98,0.8);
    position: relative;
    top: 4px;
    /* 20250219追加 */
    padding-bottom: 4px;
  }
  .list-mega li {
    margin: 0;
  }
  .mega-click {
    display: none;
  }
  .list-main-nav li .list-mega li a {
    margin: 3px;
    border-radius: 5px;
    color: #fff;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4;
    padding: 18px 0;
  }
  /* 20250219修正 */
  .list-main-nav li .list-mega li:nth-child(1) a {
    /* background: #0AAC69; */
    background: #0097da;
  }
  /* 20250219修正 */
  .list-main-nav li .list-mega li:nth-child(2) a {
    /* background: #FF9900; */
    background: #004da0;
  }
  /* 20250219修正 */
  .list-main-nav li .list-mega li:nth-child(3) a {
    /* background: #E74E3B; */
    background: #00532b;
  }
  .list-main-nav li .list-mega li:nth-child(4) a {
    background: #B7211B;
  }
  .list-main-nav li .list-mega li:nth-child(5) a {
    background: #16489A;
  }
  .list-main-nav li .list-mega li:nth-child(6) a {
    background: #884C95;
  }
  .list-main-nav li .list-mega li:nth-child(7) a {
    background: #DC6A94;
  }
  /*---------------------------------------- ↓footer ----------------------------------------*/
  /* 20250215修正 */
  footer {
    /* background: #e7f8ea; */
    background: #fff;
    min-width: 960px;
    /* margin: 70px 0 0 0; */
    margin: 30px 0 0 0;
    padding-top: 50px;
  }

  .f-nav {
    padding: 50px 0;
  }
  .list-f-nav {
    border-right: 1px solid #cccccc;
  }
  .list-f-nav > li {
    width: 25%;
    float: left;
    box-sizing: border-box;
    border-left: 1px solid #cccccc;
  }
  .list-f-nav-small {
    min-height: 145px;
  }
  .list-f-nav-small a {
    display: block;
    padding: 4px 0 4px 40px;
    font-weight: 600;
    font-size: 12px;
    background: url(../img/f-arrow.png) no-repeat 30px 46%;
  }
  .list-f-nav-small a:hover {
    color: #e74c3c;
  }
  .list-f-nav-small li.link-no a {
    background: none;
  }
  .list-f-nav-small li.link-no a:hover {
    color: #000;
  }
  .f-bnr {
    overflow: hidden;
    background: #fff;
    padding: 20px 10px;
    border-radius: 4px;
  }
  .f-bnr .main-logo {
    float: left;
    max-width: 350px;
    margin: 24px 0 0 0;
  }
  .f-bnr .area-bnr {
    float: right;
  }
  .f-bnr .area-bnr .spot-tel {
    margin: 0 0 10px 0;
  }
  .f-bnr .area-bnr .spot-tel img {
    margin: 0 3px 0;
  }
  /* 20250226修正 */
  .copyright {
    text-align: center;
    padding: 20px 0;
    /* font-size: 12px; */
    font-size: 14px;
    color: #0b4427;
  }
  .scroll-fade {
    display: none;
  }
  .pagetop {
    position: fixed;
    width: 120px;
    height: 120px;
    right: 15px;
    top: 75%;
    z-index: 100;
  }
  .pagetop-bg {
    position: absolute;
    width: 120px;
    height: 120px;
    background: url(../img/pagetop-bg.png) no-repeat center center;
  }
  .pagetop a {
    display: block;
    position: absolute;
    width: 120px;
    height: 120px;
    background: url(../img/pagetop-arrow.png) no-repeat center center;
  }
  .pagetop:hover .pagetop-bg {
    -webkit-animation: spin 6s linear infinite;
    -moz-animation: spin 6s linear infinite;
    -ms-animation: spin 6s linear infinite;
    -o-animation: spin 6s linear infinite;
    animation: spin 6s linear infinite;
  }
  @-webkit-keyframes spin {
    0% {
      -webkit-transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotateZ(360deg);
    }
  }
  @-moz-keyframes spin {
    0% {
      -moz-transform: rotate(0deg);
    }
    100% {
      -moz-transform: rotateZ(360deg);
    }
  }
  @-ms-keyframes spin {
    0% {
      -ms-transform: rotate(0deg);
    }
    100% {
      -ms-transform: rotateZ(360deg);
    }
  }
  @-o-keyframes spin {
    0% {
      -o-transform: rotate(0deg);
    }
    100% {
      -o-transform: rotateZ(360deg);
    }
  }
  @keyframes spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotateZ(360deg);
    }
  }
  /*---------------------------------------- ↓footerGuide ----------------------------------*/
  .sp_fixfooter {
    display: none !important;
  }

  /*---------------------------------------- ↓front ----------------------------------------*/
  /* コース紹介 */
  .list-course-intro {
    background: #ffffff;
    padding: 15px;
    border: solid 1px #efefef;
    margin: 0 0 40px 0;
  }
  .list-course-intro li {
    float: left;
    margin: 0 0 0 16px;
  }
  .list-course-intro li:first-child {
    margin: 0;
  }
  .sec-course-intro .bnr-special a {
    background: url(../img/bnr-large02.png) no-repeat center center;
    height: 300px;
    display: block;
  }

  .sec-search-map {
    position: relative;
    height: 500px;
    margin: 0 0 40px 0;
  }
  .sec-search-map .title-map-detail {
    color: #18ac00;
  }
  .sec-search-map .link-map-detail {
    color: blue;
    font-size: 11px;
    text-decoration: underline;
  }
  #map_canvas {
    width: 100%;
    height: 500px;
    position: absolute;
    left: 0;
    top: 0;
  }
  .block-search-contents {
    position: relative;
    left: 20px;
    width: 450px;
    z-index: 10;
    padding: 25px 0 0 0;
  }
  .block-search-contents-bg {
    background: #f0faf2;
    width: 450px;
    height: 450px;
    box-sizing: border-box;
    padding: 20px;
  }
  .block-search-contents .title {
    background: url(../img/title-bg02.png) no-repeat left top;
    height: 34px;
    line-height: 34px;
    padding: 0 0 10px 45px;
    font-size: 24px;
    color: #0b4427;
    font-weight: bold;
    margin: 0 0 15px 0;
    border-bottom: solid 3px #c2d6c9;
  }
  .area-search-area {
    height: 350px;
    overflow-y: scroll;
    box-sizing: border-box;
    padding: 0 10px;
    position: relative;
  }
  .area-search-area .title-search-area {
    background: #18ac00;
    color: #fff;
    font-size: 15px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    width: 96%;
    margin: 0 auto;
    position: absolute;
    left: 0;
  }
  /* 緑バーのタイトルは40pxずつ動かす */
  .area-search-area .title-search-area.area01 {
    top: 0;
  }
  .area-search-area .title-search-area.area02 {
    top: 98px;
  }
  .area-search-area .title-search-area.area03 {
    /* top: 235px; */
    top: 196px;
  }
  .area-search-area .title-search-area.area04 {
    /* top: 333px; */
    /* top: 392px; */
    /* 20250201修正 */
    top: 292px;
  }
  /* 若林区 */
  .area-search-area .title-search-area.area05 {
    /* top: 468px; */
    top: 294px;
  }
  .area-search-area .title-search-area.area06 {
    /* top: 431px; */
    /* top: 490px; */
    /* 20250201修正 */
    top: 390px;
  }
  .area-search-area .title-search-area.area07 {
    /* top: 528px; */
    /* top: 588px; */
    /* 20250201修正 */
    top: 488px;
  }
  .area-search-area .title-search-area.area08 {
    /* top: 626px; */
    /* top: 686px; */
    /* 20250201修正 */
    top: 586px;
  }
  .area-search-area .title-search-area.area09 {
    /* top: 723px; */
    top: 784px;
  }
  .area-search-area .title-search-area.area10 {
    top: 975px;
    background: #5482d4;
    color: #ffffff;
  }
  .list-search-area {
    margin: 10px 0;
    padding: 35px 0 0 0;
  }
  .list-search-area li {
    width: 30%;
    float: left;
    margin: 0 1.5% 2%;
    text-align: center;
  }
  .list-search-area li a {
    display: block;
    height: 30px;
    line-height: 30px;
    background: #c5eac2;
    font-size: 12px;
    color: #18ac00;
    transition: 0.2s;
    overflow-y: hidden;
  }
  .list-search-area li a:hover, .list-search-area li.select a {
    color: #fff;
    background: #18ac00;
  }
  .list-search-area li.list24 a, .list-search-area li.list25 a, .list-search-area li.list26 a, .list-search-area li.list27 a, .list-search-area li.list28 a, .list-search-area li.list29 a, .list-search-area li.list30 a, .list-search-area li.list31 a, .list-search-area li.list32 a {
    background: #dde6f6;
    color: #5482d4;
  }
  .list-search-area li.list24 a:hover, .list-search-area li.list25 a:hover, .list-search-area li.list26 a:hover, .list-search-area li.list27 a:hover, .list-search-area li.list28 a:hover, .list-search-area li.list29 a:hover, .list-search-area li.list30 a:hover, .list-search-area li.list31 a:hover, .list-search-area li.list32 a:hover {
    background: #5482d4;
    color: #ffffff;
  }
  .list-search-area li.list24.select a, .list-search-area li.list25.select a, .list-search-area li.list26.select a, .list-search-area li.list27.select a, .list-search-area li.list28.select a, .list-search-area li.list29.select a, .list-search-area li.list30.select a, .list-search-area li.list31.select a, .list-search-area li.list32.select a {
    background: #5482d4;
    color: #ffffff;
  }
  
  /* 教室部分はpaddingで段、clearで横並び */
  .list-search-area .list1 {
    padding: 60px 0 0 0;
    clear: both;
  }

  .list-search-area .list2 {
    /* clear: both; */
    padding: 60px 0 0 0;
  }
  .list-search-area .list3 {
    padding: 60px 0 0 0;
  }
  .list-search-area .list4 {
    padding: 60px 0 0 0;
    /* clear: both; */
  }
  .list-search-area .list5 {
    padding: 60px 0 0 0;
    clear: both;
  }

  .list-search-area .list6 {
    padding: 60px 0 0 0;
    clear: both;
  }

  .list-search-area .list7 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list8 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list9 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list10 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list11 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list12 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list13 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list14 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list15 {
    clear: both;
    padding: 60px 0 0 0;
  }
  .list-search-area .list16 {
    clear: both;
    padding: 60px 0 0 0;
  }
  .list-search-area .list17 {
    padding: 60px 0 0 0;
  }
  .list-search-area .list18 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list19 {
    clear: both;
    padding: 60px 0 0 0;
  }
  .list-search-area .list20 {
    padding: 60px 0 0 0;
    clear: both;
  }
  .list-search-area .list21 {
    padding: 60px 0 0 0;
  }
  .block-voice-box {
    overflow: hidden;
    padding: 0 0 40px 0;
  }
  .voice-bnr-base {
    background: #fff;
    width: 455px;
    height: 230px;
    box-sizing: border-box;
    padding: 7px 15px 0;
    float: left;
    margin: 0 12px;
    box-shadow: 0 6px 3px -3px #999;
    position: relative;
  }
  .voice-bnr-base .text-voice {
    font-size: 12px;
    color: #4d4646;
    margin: 5px 0 0 0;
    transition: .2s;
    text-align: center;
  }
  .voice-bnr-base img {
    transition: .2s;
  }
  .voice-bnr-base a:hover img {
    opacity: .7;
  }
  .voice-bnr-base a:hover .text-voice {
    color: #008400;
  }
  .block-voice-box .white-blue {
      position: absolute;
    /*background: rgba(255,255,255,0.7);
    padding: 30px 0 20px;*/
    left: 0;
    bottom: 20px;
    width: 100%;
  }
  .block-voice-box .btn-voice-box {
    width: 200px;
    margin: 0 auto;
    background: #009b4b;
    color: #ccc;
    text-align: center;
    color: #fff;
    font-size: 14px;
    padding: 3px 0;
    position: relative;
  }
  .block-voice-box .btn-voice-box:before {
    content: '';
    background: url(../img/slider-next03.png) no-repeat;
    background-size: 10px 17px;
    width: 10px;
    height: 17px;
    position: absolute;
    left: 80%;
    top: 23%;
  }
  .block-cms-article {
    overflow: hidden;
    width: 960px;
    margin: 0 auto;
  }

  /* 20250201修正 */
  .block-cms-article .cms-cat-post {
    /* width: 470px; */
    width: 100%;
    float: left;
    margin-bottom: 50px;
  }
  .block-cms-article .cms-cat-class {
    width: 470px;
    float: right;
  }
  /* 20250201修正 */
  .block-news-list {
    background: #fff;
    border: solid 1px #efefef;
    /* padding: 0 15px; */
    padding: 15px;
    font-size: 12px;
    /* min-height: 210px; */
    min-height: 123px;
  }
  /* 20250226修正 */
  .list-news li {
    overflow: hidden;
    border-top: 1px dotted #dddddd;
    padding: 10px 0;
    font-size: 18px;
  }
  .list-news li.first {
    border: none;
  }
  .list-news li a {
    display: block;
  }
  .list-news li a:hover .title-news {
    opacity: 0.7;
  }
  /* 20250226修正 */
  .list-news li time {
    float: left;
    /* width: 70px; */
    width: 110px;
  }
  /* 20250226修正 */
  .list-news li .cat-tag {
    float: left;
    color: #fff;
    /* font-size: 10px; */
    font-size: 18px;
    line-height: 1em;
    background: #009b4b;
    text-align: center;
    /* padding: 3px 0; */
    padding: 5px 0;
    /* margin: 3px 0 0 0; */
    margin: 2px 0 0 0;
    border-radius: 2px;
    width: 100px;
  }
  /* 20250226修正 */
  .list-news li .title-news {
    float: left;
    margin: 0 0 0 10px;
    color: #009b4b;
    font-weight: 500;
    transition: 0.2s;
    /* width: 250px; */
  }
  /* 2024.10.16修正 */
  .links-wrap2 p{
    display: inline-block;
    /* margin: 5px; */
    margin: 5px 10px;
  }
  
  /*---------------------------------------- ↓sub-page ----------------------------------------*/
  
  /*------------------------------ ↓course-page ------------------------------*/
  .course-main-bnr {
    width: 100%;
    height: 340px;
    margin: 0 0 30px;
  }
  .course-junior .course-main-bnr {
    background: url(/course/img/junior-main.png) no-repeat center center;
  }
  .course-junior-high .course-main-bnr {
    background: url(/course/img/jh-main.png) no-repeat center center;
  }
  .course-junior-high3 .course-main-bnr {
    background: url(/course/img/jh3-main.png) no-repeat center center;
  }
  .course-high .course-main-bnr {
    background: url(/course/img/high-main.png) no-repeat center center;
  }
  .course-kobetu .course-main-bnr {
    background: url(/course/img/kobetu-main.png) no-repeat center center;
  }
  .course-btn-menu {
    text-align: center;
    margin: 30px auto;
  }
  .course-btn-menu a {
    display: block;
    width: 296px;
    height: 56px;
    text-indent: 110%;
    overflow: hidden;
    white-space: nowrap;
    margin: 0 auto;
    transition: 0.2s;
  }
  .course-btn-menu a.list03 {
    background: url(/course/img/btn03.png) no-repeat;
  }
  .course-btn-menu a.list03:hover {
    background: url(/course/img/btn03-on.png) no-repeat;
  }
  .block-course-lineup {
    margin: 0 0 40px 0;
  }
  .list-course-lineup li {
    overflow: hidden;
    color: #fff;
    background: #fff;
    position: relative;
    margin: 0 0 10px 0;
    transition: 0.1s;
    border: solid 1px #ff9900;
  }
  .course-junior-high .list-course-lineup li {
    border: solid 1px #e74c3c;
  }
  .course-junior-high3 .list-course-lineup li {
    border: solid 1px #b71c1c;
  }
  .list-course-lineup li:hover {
    opacity: 0.8;
  }
  .course-junior .list-course-lineup .text {
    background: url(../img/arrow-junior02.png) no-repeat 95% center;
  }
  .course-junior-high .list-course-lineup .text {
    background: url(../img/arrow-jh02.png) no-repeat 95% center;
  }
  .course-junior-high3 .list-course-lineup .text {
    background: url(../img/arrow-jh302.png) no-repeat 95% center;
  }
  .course-high .list-course-lineup .text {
    background: url(../img/arrow-h-gh02.png) no-repeat 95% center;
  }
  .list-course-lineup li .title {
    background: #ff9900;
    width: 35%;
    float: left;
    padding: 0 10px;
    box-sizing: border-box;
    position: relative;
  }
  .course-junior-high .list-course-lineup li .title {
    background: #e74c3c;
  }
  .course-junior-high3 .list-course-lineup li .title {
    background: #b71c1c;
  }
  .list-course-lineup li.type01 .title {
    line-height: 50px;
    height: 50px;
  }
  .list-course-lineup li.type02 .title {
    height: 70px;
    padding: 5px 10px 0;
  }
  .list-course-lineup li.type01 .title:before {
    content: '';
    border-top: 25px solid transparent;
    border-right: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 25px solid #ff9900;
    position: absolute;
    right: -50px;
    top: 0;
  }
  .course-junior-high .list-course-lineup li.type01 .title:before {
    border-left: 25px solid #e74c3c;
  }
  .course-junior-high3 .list-course-lineup li.type01 .title:before {
    border-left: 25px solid #b71c1c;
  }
  .list-course-lineup li.type02 .title:before {
    content: '';
    border-top: 35px solid transparent;
    border-right: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-left: 35px solid #ff9900;
    position: absolute;
    right: -70px;
    top: 0;
  }
  .course-junior-high .list-course-lineup li.type02 .title:before {
    border-left: 35px solid #e74c3c;
  }
  .course-junior-high3 .list-course-lineup li.type02 .title:before {
    border-left: 35px solid #b71c1c;
  }
  .list-course-lineup li .text {
    width: 61%;
    float: left;
    color: #ff9900;
    padding: 10px;
    box-sizing: border-box;
    margin: 0 0 0 4%;
  }
  .course-junior-high .list-course-lineup li .text {
    color: #e74c3c;
  }
  .course-junior-high3 .list-course-lineup li .text {
    color: #b71c1c;
  }
  .list-course-lineup li.type02 .text {
    line-height: 50px;
  }
  .course-white-base {
    background: #fff;
    box-sizing: border-box;
    padding: 25px;
    margin: 0 0 30px 0;
  }
  .course-white-base .text {
    font-size: 14px;
  }
  .block-course-sec02 {
    padding: 0 270px 40px 0;
  }
  .course-junior .block-course-sec02 {
    background: url(/course/img/junior-img01.png) no-repeat right top;
  }
  .course-junior-high .block-course-sec02 {
    background: url(/course/img/junior-high-img01.png) no-repeat right top;
  }
  .course-high .block-course-sec02 {
    background: url(/course/img/junior-img01.png) no-repeat right top;
    min-height: 325px;
  }
  .list-course-sec02 {
    margin: 25px 0 0 0;
  }
  .list-course-sec02 li {
    margin: 0 0 25px 0;
  }
  .list-course-sec02 .title {
    font-size: 18px;
    color: #ff9900;
  }
  .block-course-sec02-2 {
    box-sizing: border-box;
    padding: 20px 20px 30px 210px;
    /* padding: 20px 20px 30px 20px; */
    position: relative;
  }
  .block-course-sec02-2 .title {
    /* text-align: center; */
    font-size: 30px;
    margin: 0 0 15px 0;
  }
  .course-junior .block-course-sec02-2 {
    background-image: url(/course/img/junior-img02.png);
    background-position: 20px 30px;
    background-repeat: no-repeat;
    background-color: #fffdee;
    border: solid 1px #f39c12;
  }
  .course-junior .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/junior-obi.png) no-repeat;
    width: 258px;
    height: 48px;
    top: -20px;
    left: -23px;
  }
  .course-junior .block-course-sec02-2 .title {
    color: #f39721;
    text-align: center;
  }

  .course-junior-high .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/junior-high-obi.png) no-repeat;
    width: 258px;
    height: 48px;
    top: -20px;
    left: -23px;
  }

  .course-high .block-course-sec02-2 {
    /* background-image: url(/course/img/high-img02.png);
    background-position: 20px 30px;
    background-repeat: no-repeat; */
    background-color: #faeeff;
    border: solid 1px #884792;
  }
  /* .course-high .block-course-sec02-2:before {
    content: '';
    position: absolute;
    background: url(/course/img/high-obi.png) no-repeat;
    width: 258px;
    height: 48px;
    top: -20px;
    left: -23px;
  } */

  .course-sub-bnr {
    width: 100%;
    height: 100px;
    margin: 0 0 30px 0;
  }
  .course-junior .course-sub-bnr.bnr-course {
    background: url(/course/img/junior-course-main.png) no-repeat center center;
  }
  .course-junior .course-sub-bnr.price {
    background: url(/course/img/j-price01.png) no-repeat center center;
  }
  .course-junior .course-sub-bnr.plan {
    background: url(/course/img/j-plan01.png) no-repeat center center;
  }
  .course-junior-high .course-sub-bnr.schedule {
    background: url(/course/img/jh-schedule01.png) no-repeat center center;
  }
  .course-junior-high .course-sub-bnr.bnr-course {
    background: url(/course/img/jh-course-main.png) no-repeat center center;
  }
  .course-junior-high .course-sub-bnr.price {
    background: url(/course/img/jh-price01.png) no-repeat center center;
  }
  .course-junior-high .course-sub-bnr.plan {
    background: url(/course/img/jh-plan01.png) no-repeat center center;
  }
  .course-high .course-sub-bnr.schedule {
    background: url(/course/img/h-schedule01.png) no-repeat center center;
  }
  .course-high .course-sub-bnr.price {
    background: url(/course/img/h-price01.png) no-repeat center center;
  }
  .course-high .course-sub-bnr.plan {
    background: url(/course/img/h-plan01.png) no-repeat center center;
  }
  .red-title {
    text-align: center;
    margin: 15px 0;
    font-size: 32px;
    color: #e74c3c;
  }
  .list-course-2column li {
    float: left;
    width: 48%;
    margin: 1%;
  }
  .list-course-2column .title {
    margin: 0 0 20px 0;
  }
  .list-course-2column .title-2column {
    text-align: center;
    font-size: 18px;
    margin: 0 0 10px 0;
  }
  .list-3column {
    margin: 25px 0;
  }
  .list-3column li {
    width: 31%;
    margin: 0 1%;
    float: left;
  }
  .list-3column .title-3column {
    text-align: center;
    font-weight: bold;
    min-height: 4em;
  }
  /* .list-3column .title-3column.on-line {
    position: relative;
    top: 15px;
  } */
  .list-3column .text-3column {
    font-size: 14px;
  }
  .list-2column-block li {
    overflow: hidden;
    font-size: 14px;
    margin: 0 0 10px 0;
  }
  .list-2column-block .area-left {
    text-align: center;
    color: #fff;
    width: 270px;
    display: table-cell;
    padding: 5px;
  }
  .course-junior-high .list-2column-block .area-left {
    vertical-align: middle;
    background: #e74c3c;
  }
  .list-2column-block .area-right {
    display: table-cell;
    vertical-align: middle;
    width: 620px;
    padding: 0 0 0 30px;
  }
  .dl-lineup {
    margin: 0 0 15px 0;
  }
  .dl-lineup .text {
    font-size: 14px;
    margin: 0 0 15px 0;
  }
  .dl-lineup dt:hover {
    opacity: 0.8;
  }
  .dl-lineup.ex dt{
    cursor:auto !important;
  }
  .dl-lineup.ex dt:hover{
    opacity:1;
  }
  .dl-lineup.type01 dt {
    line-height: 50px;
    height: 50px;
  }
  .dl-lineup dt .dt-title {
    color: #fff;
    width: 35%;
    float: left;
    padding: 0 10px;
    box-sizing: border-box;
    position: relative;
  }
  .dl-lineup dt .dt-title.font-small {
    font-size: 15px;
  }
  .dl-lineup.type02 .dt-title {
    height: 70px;
    padding: 5px 10px 0;
  }
  .dl-lineup .dt-text {
    width: 61%;
    float: left;
    box-sizing: border-box;
    margin: 0 0 0 4%;
  }
  .dl-lineup.type02 .dt-text {
    line-height: 70px;
  }
  .dl-lineup figure.text-center {
    margin: 15px 0;
  }
  .course-junior .dl-lineup .dt-text {
    background: url(../img/arrow-junior.png) no-repeat 96% center;
    color: #FF9900;
  }
  .course-junior .dl-lineup .open .dt-text {
    background: url(../img/arrow-junior-open.png) no-repeat 96% center;
  }
  .course-junior .dl-lineup.type02 .dt-title:before {
    border-left: 35px solid #FF9900;
  }
  .course-junior-high .dl-lineup .dt-text {
    background: url(../img/arrow-jh.png) no-repeat 96% center;
    color: #e74c3c;
  }
  .course-junior-high .dl-lineup .open .dt-text {
    background: url(../img/arrow-jh-open.png) no-repeat 96% center;
  }
  .course-junior-high3 .dl-lineup dt {
    border-bottom: solid 1px #b71c1c;
  }
  .course-junior-high3 .dl-lineup .dt-title {
    background: #b71c1c;
  }
  .course-junior-high3 .dl-lineup .dt-text {
    background: url(../img/arrow-jh3.png) no-repeat 96% center;
    color: #b71c1c;
  }
  .course-junior-high3 .dl-lineup .open .dt-text {
    background: url(../img/arrow-jh3-open.png) no-repeat 96% center;
  }

  .course-high .dl-lineup .dt-text {
    background: url(../img/arrow-high.png) no-repeat 96% center;
    color: #884792;
  }
  .course-high .dl-lineup.ex .dt-text {
    background:none;
  }
  .course-high .dl-lineup .open .dt-text {
    background: url(../img/arrow-high-open.png) no-repeat 96% center;
  }
  .course-high .block-course-sec02-2 {
    box-sizing: border-box;
    /* padding: 20px 20px 30px 210px; */
    padding: 20px 20px 30px 20px;
    position: relative;
  }
  
  .sec-jh02 .text {
    padding: 0 240px 0 0;
    background: url(/course/img/junior-img01.png) no-repeat right top;
    min-height: 320px;
  }
  .block-jh3-sidou {
    border-bottom: dashed 1px #b71c1c;
    margin: 30px 0;
  }
  .block-jh3-sidou .sidou-title {
    background: #b71c1c;
    border-radius: 15px;
    padding: 3px 0;
    color: #fff;
    text-align: center;
  }
  .list-jh3-sidou li {
    float: left;
    width: 46%;
    text-align: center;
    margin: 0 2% 2% 2%;
  }
  .list-jh3-sidou li:nth-child(3) {
    clear: both;
    width: 100%;
    float: none;
  }
  .list-jh3-sidou .red-title span {
    display: inline-block;
    background: #fff;
    width: 120px;
    position: relative;
    z-index: 100;
  }
  .course-kobetu figure {
    margin: 0 0 30px;
  }
  .block-kobetu01 {
    padding: 0 270px 0 0;
    background: url(/course/img/kobetu-img01.png) no-repeat 95% top;
    margin: 0 0 40px 0;
  }
  .pink-text img {
    width: 20%;
    height: auto;
    margin-bottom: 10px;
  }
  .kon-text {
    color: #192F5B;
    font-weight: bold;
    font-size: 1.7em;
  }  
  .list-margin-base li+li {
    margin: 20px 0 0 0;
  }
  .course-kobetu .block-faq-base dt {
    color: #dc6893;
    border-bottom: solid 1px #dc6893;
    background: url(../img/arrow-kobetu.png) no-repeat 95% center;
  }
  .course-kobetu .block-faq-base dt.open {
    background: url(../img/arrow-kobetu-open.png) no-repeat 95% center;
  }
  .course-kobetu .block-faq-base dt:before {
    background: url(/course/img/kobetu-q.png) no-repeat left center;
  }

  /*-------------------- course-detail --------------------*/
  .course-detail-bnr {
    text-align: center;
    margin: 0 0 20px 0;
  }
  .block-course-base {
    margin: 0 0 50px 0;
  }
  .block-course-base .anchor-base {
    padding: 20px 0;
  }
  .block-course-base .title {
    margin: 20px 0 30px;
    text-align: center;
  }
  .block-course-base .orange-bnr {
    background: #FF9900;
    color: #fff;
    text-align: center;
    border-radius: 20px;
    padding: 2px 0;
    margin: 0 0 15px 0;
    font-size: 18px;
  }
  .block-course-base .orange-text {
    text-align: center;
    color: #FF9900;
    font-size: 18px;
    margin: 0 0 10px 0;
  }
  .block-course-base .text {
    font-size: 14px;
    color: #212121;
  }
  .block-course-base .area-two-column {
    overflow: hidden;
    margin: 0 0 30px 0;
  }
  .block-course-base .area-two-column .area-left {
    float: left;
    width: 48%;
    margin: 0 1%;
  }
  .block-course-base .area-two-column .area-right {
    float: left;
    width: 48%;
    margin: 0 1%;
  }
  .block-course-base .center-mode figure {
    margin: 0 0 25px 0;
  }
  .block-course-base .orange-title {
    font-size: 26px;
    color: #FF9900;
    margin: 0 0 7px 0;
    text-align: center;
  }
  /* .block-course-base .list-anchor-btn li {
    width: 44%;
    margin: 0 3%;
  } */
  .block-course-base .area-img-text {
    margin: 0 0 40px 0;
  }
  .block-course-base .area-img-text .area-img {
    float: left;
    width: 277px;
    text-align: center;
    color: #fff;
  }
  .block-course-base .area-img-text .area-img.bg-orange {
    background: #ff9900;
    padding: 1.3em 0;
  }
  .block-course-base .area-img-text .area-text {
    float: left;
    width: 620px;
    margin: 0 0 0 23px;
    font-size: 14px;
    color: #212121;
  }
  .sec-meet .block-course-base .area-img-text .area-text {
    margin: 25px 0 0;
  }
  .sec-meet .block-course-base .area-img-text .area-text .orange-text {
    text-align: left;
  }
  .sec-meet .block-course-base .area-video {
    width: 90%;
    margin: 0 auto 40px;
  }
  .sec-meet .block-course-base .area-video iframe {
    width: 100%;
    height: 460px;
  }
  .block-course-base .area-meet01 .area-left {
    float: left;
    width: 610px;
  }
  .block-course-base .area-meet01 .area-right {
    float: right;
    width: 300px;
  }
  .block-course-base .area-meet01 .orange-box {
    background: #faddb3;
    width: 300px;
    box-sizing: border-box;
    padding: 10px;
    font-size: 15px;
    min-height: 530px;
  }
  .block-course-base .area-meet01 .big-title {
    font-size: 27px;
    text-align: center;
    color: #ff9900;
  }
  .block-course-base .area-meet01 .big-title.spacing {
    letter-spacing: -5px;
  }
  .block-course-base .spot-meet01 {
    overflow: hidden;
  }
  .block-course-base .spot-meet01 .orange-box {
    float: left;
  }
  .block-course-base .spot-meet01 > div + div {
    margin: 0 0 0 10px;
  }
  .block-course-base .orange-box .small-video {
    margin: 10px 0;
  }
  .block-course-base .orange-box .small-video img {
    max-width: 100%;
    height: auto;
  }
  .sec-tamai .area-top-text {
    margin: 0 0 25px 0;
  }
  .sec-tamai .area-top-text .orange-text {
    text-align: left;
    margin: 0 0 5px 0;
  }
  .sec-tamai .area-profile {
    border-top: solid 1px #ffa011;
    border-bottom: solid 1px #ffa011;
    padding: 15px 0 15px 300px;
    background: url(/course/img/junior-img14.png) no-repeat left 20px;
    margin: 0 0 25px 0;
  }
  .sec-tamai .area-profile .strong-text {
    font-weight: bold;
  }
  .sec-tamai .area-sub-text {
    margin: 0 0 50px 0;
  }
  .list-tamai-step li {
    float: left;
    width: 290px;
    box-sizing: border-box;
    border: solid 1px #f29528;
    padding: 15px;
    min-height: 410px;
    position: relative;
  }
  .list-tamai-step li + li {
    margin: 0 0 0 25px;
  }
  .list-tamai-step li + li:before {
    content: '';
    position: absolute;
    background: url(/course/img/junior-course-arrow.png) no-repeat;
    width: 17px;
    height: 68px;
    top: 170px;
    left: -22px;
  }
  .list-tamai-step .video img {
    max-width: 100%;
    height: auto;
  }
  .list-tamai-step .step-title {
    color: #fff;
    text-align: center;
    font-size: 25px;
    background: #f29528;
  }
  .list-tamai-point {
    margin: 0 0 80px 0;
  }
  .list-tamai-point li {
    float: left;
    width: 31%;
    margin: 0 1%;
  }
  .buntatsu-img {
    margin: 0 0 30px 0;
  }
  .buntatsu-img img {
    vertical-align: middle;
  }
  .list-buntatsu-text li {
    display: table;
    margin: 0 0 10px 0;
  }
  .list-buntatsu-text .area-left {
    width: 30%;
    vertical-align: middle;
    background: #ff9900;
    display: table-cell;
    text-align: center;
    color: #fff;
  }
  .list-buntatsu-text .area-right {
    width: 68%;
    vertical-align: middle;
    padding: 0 0 0 2%;
    display: table-cell;
    font-size: 14px;
  }
  .area-yomuzo01 {
    overflow: hidden;
    margin: 0 0 40px 0;
  }
  .area-yomuzo01 .area-left {
    float: left;
    width: 280px;
  }
  .area-yomuzo01 .area-right {
    float: left;
    margin: 0 0 0 30px;
  }
  .list-yomuzo01 li {
    float: left;
    width: 31%;
    margin: 0 1%;
  }
  .list-yomuzo01 li .orange-text {
    min-height: 4em;
  }
  .list-yomuzo02 li {
    float: left;
    width: 280px;
    margin: 0 0 25px 40px;
  }
  .list-yomuzo02 li:nth-child(3n+1) {
    clear: both;
    margin: 0 0 25px 0;
  }
  .schedule-title {
    height: 240px;
    margin: 0 0 30px 0;
  }
  .course-junior-high3 .schedule-title {
    background: url(/course/img/jh3-course-bnr.png) no-repeat;
  }
  .course-high .schedule-title {
    background: url(/course/img/h-schedule02.png) no-repeat;
  }
  .block-schedule01 .white-base {
    background: #fff;
    padding: 40px 30px;
    margin: 0 0 30px 0;
  }
  .block-schedule01 .course-white-base .text {
    margin: 0 25px 25px;
  }
  .block-schedule01 .pen-title {
    margin: 50px 0 15px;
  }
  .table-course-base {
    width: 100%;
    margin: 0 0 30px 0;
  }
  .table-course-base th {
    text-align: center;
    color: #212121;
    font-size: 12px;
    font-weight: 500;
    padding: 10px 4px;
    vertical-align: middle;
    min-width: 6em;
  }
  .table-course-base td {
    text-align: center;
    color: #212121;
    font-size: 12px;
    font-weight: 500;
    padding: 10px 2px;
    vertical-align: middle;
    min-width: 5em;
  }
  .table-course-base .align-left {
    text-align: left;
  }
  .course-junior-high .table-course-base th {
    background: rgba(229,115,115,0.5);
    border: solid 1px #e74c3c;
  }

  .course-junior-high .table-course-base .special {
    background: #cae1ff;
  }
  .course-junior .table-tokuten th { width: 20%; background: #f2c46c;}
  .course-junior-high .table-tokuten th { width: 20%; background: #e57373;}
  .course-high .table-tokuten th { width: 20%; background: #b576c0;}
  .course-junior .table-tokuten td.bold,
  .course-junior-high .table-tokuten td.bold,
  .course-high .table-tokuten td.bold { width: 25%; font-size: 1.2em; font-weight: bold; }
  .table-tokuten th span { margin-top: 10px; display: block; color: #333; font-size: 0.6em;}
  .table-tokuten td span { color: #c7000b;}
  .table-tokuten td span.note { text-align: right; display: block; color: #333; font-size: 0.6em;}
  p.hosoku { color: #666; font-size: 0.8em; }
  p.mgb5 { margin-bottom: 5%; }
  
  .list-kobetu-faq li {
    float: left;
    width: 48%;
    margin: 1%;
    /* background:; */
    padding: 10px;
    box-sizing: border-box;
    background: #F4E4E3;
    min-height: 140px;
  }

  /*------------------------------ ↓class-page ------------------------------*/
  .list-class-main .title-class {
    color: #009b4b;
    font-size: 17px;
    margin: 3px 0 1px;
  }
  .list-class-main .text {
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 10px 0;
    min-height: 60px;
  }
  span.renew {
    font-size: 0.6em;
    background:#ff2900;
    color: #fff;
    padding: 0.3em 0.5em;
    margin: 0 0 0 0.2em;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
  }
  
  
  /*------------------------------ ↓class-single-page ------------------------------*/
  .sec-class-main-top .inner {
    margin: 0 auto 40px;
  }
  .sec-class-main {
    width: 960px;
    margin: 0 auto 40px;
    background: #ffffff;
    border: solid 1px #efefef;
    padding: 20px;
    box-sizing: border-box;
  }
  .sec-class-main .area-video {
    width: 100%;
    height: 450px;
    margin: 30px auto 60px;
    overflow: hidden;
  }
  .sec-class-main .area-video video {
    width: 100%;
    height: 450px;
  }
  .block-class-news {
    max-height: 600px;
    overflow-y: scroll;
  }
  .list-class-news li {
    border-bottom: dotted 1px #dddddd;
    margin: 0 0 35px 0;
  }
  .title-class-news {
    font-size: 24px;
    color: #009b4b;
    margin: 0 0 20px 0;
  }
  .block-class-news .wp-editor p {
    margin: 0 0 20px;
  }
  .block-class-news .wp-editor img {
    max-width: 100%;
    height: auto;
  }
  .sec-class-slider {
    margin: 0 0 35px 0;
  }
  .sec-class-slider .inner {
    background: #fffde5;
    border: solid 1px #f39c12;
    position: relative;
  }
  .sec-class-slider .inner:before {
    content: '';
    position: absolute;
    width: 21px;
    height: 27px;
    background: url(../img/class/pin01.png) no-repeat;
    left: -10px;
    top: -10px;
  }
  .sec-class-slider .inner:after {
    content: '';
    position: absolute;
    width: 21px;
    height: 27px;
    background: url(../img/class/pin02.png) no-repeat;
    right: -10px;
    top: -10px;
  }
  .title-class-slider {
    text-align: center;
    font-size: 30px;
    color: #f3990f;
    font-weight: 500;
    margin: 10px 0;
  }
  .slider-for {
    background: rgba(0,0,0,0.8);
    width: 90%;
    margin: 0 auto 20px;
    padding: 35px 0;
  }
  .slider-for li {
    position: relative;
    height: 380px;
  }
  .slider-for img {
    max-height: 380px;
    max-width: 500px;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
  .slider-for .capture {
    position: absolute;
    z-index: 1000;
    width: 500px;
    margin: auto;
    box-sizing: border-box;
    padding: 10px 15px;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0,0,0,0.5);
    color: #fff;
    font-size: 12px;
  }
  .slider-nav {
    width: 400px;
    margin: 0 auto 20px;
  }
  .slider-nav li {
    margin: 0 auto;
    overflow: hidden;
    height: 64px;
    box-sizing: border-box;
    text-align: center;
  }
  .slider-nav li img {
    width: 64px;
    margin: auto;
    height: 64px;
    box-sizing: border-box;
  }
  .slider-nav .slick-current img {
    border: solid 2px #FF9900;
  }
  /* 20250201 修正 */
  .sec-class-info {
    width: 960px;
    /* margin: 0 auto; */
    margin: 0 auto 35px;
    box-sizing: border-box;
    padding: 25px;
    background: #fff;
  }
  .class-info-left {
    float: left;
    width: 55%;
  }
  .class-info-right {
    float: right;
  }
  .class-info-right iframe {
    width: 370px;
    height: 370px;
  }

  .dl-class-info dt {
    background: #FFDFAE;
    padding: 6px 12px;
  }
  .dl-class-info dd {
    margin: 5px 0 20px 10px;
  }

  /*------------------------------ ↓success-page ------------------------------*/
  .success-tab-menu a {
    display: block;
    padding: 8px 0;
    text-align: center;
    color: #fff;
    font-weight: 500;
    position: relative;
    transition: 0.2s;
  }
  .success-tab-menu li a:hover {
    background: #fff !important;
  }
  .success-tab-menu li:nth-child(1) a:hover {
    color: #6FB92C;
  }
  .success-tab-menu li:nth-child(2) a:hover {
    color: #E64E3A;
  }
  .success-tab-menu li:nth-child(3) a:hover {
    color: #874B93;
  }
  .list-success-taiken li {
    margin: 20px 0;
    padding: 10px;
    background: #FFFEEB;
  }
  /* 20250423修正 */
  .list-success-taiken .area-title {
    /* background: url(/success/img/icon.png) no-repeat right top; */
    background: url(/success/img/icon_202504.png) no-repeat right top;
  }

  .list-success-taiken figure {
    float: left;
    width: 170px;
    min-height:150px;
  }
  .list-success-taiken .area-title {
    float: left;
    width: 690px;
    margin: 10px 0 0 30px;
    min-height: 160px;
  }
  .list-success-taiken .area-title .title {
    font-size: 27px;
    color: #6FB92C;
    margin: 5px 0;
    line-height: 1.4;
  }
  .list-success-taiken .area-title .success-school {
    font-size: 20px;
  }
  .list-success-taiken .area-title span {
    font-size: 15px;
    color: #fff;
    background: #BD272D;
    padding: 0 4px;
    display: inline-block;
    border-radius: 3px;
    margin: 0 10px 0 0;
    vertical-align: middle;
    position: relative;
    top: -2px;
  }
  .list-success-taiken .text {
    margin: 20px 5px;
    font-size: 14px;
  }
  .block-success-number {
    margin: 50px 0;
  }
  .list-success-number.type02:after {
    content: '他多数合格';
    position: relative;
    top: 130px;
    right: -10px;
  }

  .list-success-number.type01 li {
    width: 31%;
    margin: 0 0 3% 3%;
  }

  .list-success-number.type02 li {
    width: 23%;
    margin: 0 0 3% 2.5%;
    line-height: 1.2;
  }
  .list-success-number.type02 li:nth-child(4n+1) {
    margin: 0 0 3% 0;
  }
  .list-success-number .title {
    font-size: 20px;
    color: #fff;
    background: #00A54B;
    padding: 1px 0;
  }
  .list-success-number .title span {
    display: block;
    font-size: 0.8em;
  }
  .list-success-number .number {
    font-size: 100px;
    color: #00A54B;
    box-sizing: border-box;
    padding: 0 50px 0 0;
  }
  .list-success-number .number span {
    font-size: 0.5em;
  }
  .list-success-number.type01 .number {
    background: url(/success/img/bg-type01.png) no-repeat center center;
  }
  .list-success-number.type02 .number {
    background: url(/success/img/bg-type02.png) no-repeat center center;
  }
  
  /*
  .success-wrap {
    width: 900px;
    margin: 0 auto;
  }
  .success-base {
    margin: 0 0 30px 0;
  }
  .success-main-bnr {
    background: url(/success/img/bnr.png) no-repeat;
    height: 240px;
    margin: 0 0 20px 0;
  }
  .dl-success {
    border: solid 1px #ff9900;
  }
  .dl-success dt {
    height: 80px;
    line-height: 80px;
    text-align: center;
    font-size: 36px;
    color: #ff9900;
    background: #fff;
    border-bottom: solid 1px #ff9900;
    background: rgba(255,153,0,0.1);
  }
  .dl-success dt:hover{
    opacity:0.8;
  }
  .dl-success dt h2 {
    background: url(../img/arrow-junior.png) no-repeat 95% center;
  }
  .dl-success dt.open h2 {
    background: url(../img/arrow-junior-open.png) no-repeat 95% center;
  }
  .dl-success dd {
    background: #fff;
    padding: 25px;
  }
  .dl-success .mincyo span{
    font-size:25px;
    vertical-align:middle;
  }
  .list-success li {
    width: 270px;
    float: left;
    text-align: center;
    box-sizing: border-box;
    border: solid 1px #ff9900;
    margin: 0 0 15px 18px;
    color: #fff;
  }
  .list-success li:nth-child(3n+1) {
    clear: both;
    margin: 0 0 15px 0;
  }
  .list-success .school-name-table {
    width: 100%;
    height: 55px;
    display: table;
  }
  .list-success .school-name {
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
    background: #ff9900;
    line-height: 1.5;
  }
  .list-success .school-name span{
    display:block;
    font-size:12px;
  }
  .block-success-junior-high .dl-success {
    border: solid 1px rgba(231,79,59,1);
  }
  .block-success-junior-high .dl-success dt {
    border-bottom: solid 1px rgba(231,79,59,1);
    background: rgba(231,79,59,0.3);
    color: rgba(231,79,59,1);
  }
  .block-success-junior-high .dl-success dt h2 {
    background: url(../img/arrow-jh.png) no-repeat 95% center;
  }
  .block-success-junior-high .dl-success dt.open h2 {
    background: url(../img/arrow-jh-open.png) no-repeat 95% center;
  }
  .block-success-junior-high .list-success li {
    border: solid 1px rgba(231,79,59,1);
  }
  .block-success-junior-high .list-success .school-name {
    background: rgba(231,79,59,0.9);
  }
  .block-success-high .dl-success {
    border: solid 1px #ac52ba;
  }
  .block-success-high .dl-success dt {
    border-bottom: solid 1px #ac52ba;
    background: #efe7f0;
    color: #b376bc;
  }
  .block-success-high .dl-success dt h2 {
    background: url(../img/arrow-high.png) no-repeat 95% center;
  }
  .block-success-high .dl-success dt.open h2 {
    background: url(../img/arrow-high-open.png) no-repeat 95% center;
  }
  .block-success-high .list-success li {
    border: solid 1px #ac52ba;
  }
  .block-success-high .list-success .school-name {
    background: #b376bc;
  }
  .list-success .success-number {
    font-size: 100px;
    line-height: 240px;
    height: 240px;
    background: url(/success/img/sakura.png) no-repeat center center;
    padding: 10px 0;
  }
  */
  /*------------------------------ ↓flow-page ------------------------------*/
  .block-flow-main p.text {
    margin: 0 20px 30px;
    font-size: 15px;
  }
  .block-flow-main {
    pointer-events: none;
  }
  .block-flow-main .flow-tel {
    text-align: center;
    margin: 20px 0 30px;
  }
  .block-flow-main .flow-tel img {
    margin: 0 10px;
    vertical-align: middle;
  }
  /*------------------------------ ↓faq-page ------------------------------*/
  .block-faq-base dt {
    position: relative;
    color: #00A54B;
    font-size: 18px;
    padding: 15px 0 15px 50px;
    border-bottom: solid 1px #00A54B;
    background: url(../img/arrow-close.png) no-repeat 95% center;
  }
  .block-faq-base dt:hover {
    opacity: 0.7;
  }
  .block-faq-base {
    margin: 0 0 40px 0;
  }
  .block-faq-base .title-base-me {
    margin: 0 0 15px 0;
  }
  .block-faq-base dt.open {
    background: url(../img/arrow-open.png) no-repeat 95% center;
  }
  .block-faq-base dt:before {
    position: absolute;
    content: '';
    background: url(/special/img/q.png);
    width: 40px;
    height: 40px;
    left: 0;
    top: 10px;
  }
  .block-faq-base dd {
    font-size: 15px;
    padding: 5px 0 20px 50px;
    margin: 15px 0 0;
    background: url(/special/img/a.png) no-repeat left top;
  }
  /*------------------------------ ↓special-page ------------------------------*/
  .special-main-bnr {
    background: url(/special/img/bnr01.png) no-repeat center top;
    width: 100%;
    height: 340px;
    margin: 0 0 30px 0;
  }
  .sec-special-bnr {
    overflow: hidden;
    margin: 0 0 40px 0;
  }
  .sec-special-bnr .area-strength {
    width: 470px;
    float: left;
  }
  .sec-special-bnr .area-parents {
    width: 470px;
    float: right;
  }
  .sec-special-bnr figure {
    text-align: center;
  }
  .sec-special-bnr .text {
    margin: 5px 0 15px;
    text-align: center;
  }
  .sec-special-bnr .btn-green-base {
    height: 40px;
    line-height: 40px;
    width: 50%;
  }
  .list-special-videos li {
    float: left;
    width: 290px;
    margin: 0 8px;
  }
  .list-special-videos li img {
    max-width: 100%;
    height: auto;
  }
  .list-special-videos li:nth-child(3n+1) {
    clear: both;
  }
  .sec-special-videos .text {
    text-align: center;
    margin: 15px 0 20px;
  }
  .sec-special-videos + .sec-special-videos {
    margin: 40px 0 0 0;
  }
  .list-special-videos iframe {
    width: 100%;
    height: 160px;
  }
  /*------------- ↓あすなろ学院の強み ------------*/
  .block-strength-main {
    position: relative;
    width: 960px;
    margin: 0 auto;
  }
  .special-strength-bnr {
    background: url(/special/img/st-img00.png) no-repeat center top;
    width: 100%;
    height: 339px;
    margin: 0 auto;
  }
  .block-strength-main .image {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 476px;
    height: 410px;
    background: url(/special/img/st-img01.png) no-repeat;
  }
  .sec-strength .inner {
    background: #fff;
    padding: 100px 0 35px;
  }
  .sec-strength .title01 {
    background: url(/special/img/st-img02.png) no-repeat center center;
    height: 237px;
  }
  .sec-strength .title02 {
    background: url(/special/img/st-img03.png) no-repeat center center;
    height: 257px;
  }
  .sec-strength .text {
    text-align: center;
    font-size: 14px;
    line-height: 2;
  }
  .sec-strength hr {
    width: 70%;
    margin: 50px auto;
    border: none;
    border-top: dotted 2px #e0801b;
  }
  .sec-strength .list-btn-base {
    margin: 70px auto 0;
    text-align: center;
  }
  .list-btn-base li {
    display: inline-block;
    margin: 0 10px;
  }
  /*----------------- ↓TVCM ---------------*/
  .list-tvcm li {
    float: left;
    width: 450px;
    margin: 25px 0 25px 20px;
  }
  .list-tvcm li:nth-child(2n+1) {
    clear: both;
    margin: 25px 0;
  }
  .list-tvcm li img {
    width: 100%;
    height: auto;
  }
  .list-tvcm .area-video iframe {
    width: 450px;
    height: 250px;
  }
  .list-tvcm .title {
    color: #009b4b;
    font-size: 18px;
  }
  /*----------------- ↓授業アーカイブ ---------------*/
  .block-archives-base {
    padding: 25px 0;
  }
  .block-archives-base .area-border {
    border: solid 1px #009b4b;
    padding: 20px;
    overflow: hidden;
  }
  .block-archives-base .area-border .spot-video {
    float: left;
    width: 388px;
    border: solid 1px #009b4b;
  }
  .block-archives-base .area-border .spot-video iframe {
    width: 100%;
    height: 215px;
    vertical-align: bottom;
  }
  .block-archives-base .area-border .spot-text {
    float: right;
    width: 450px;
    font-size: 14px;
  }
  .block-archives-base .area-border .spot-text li {
    display: inline-block;
    margin: 0 20px 0 0;
  }
  .block-archives-base .area-border .archives-title {
    color: #009b4b;
    font-size: 18px;
  }
  .block-archives-base .area-border .spot-text p {
    margin: 0 0 15px 0;
  }
  .block-archives-base .area-border .spot-text figure {
    text-align: center;
  }
  /*----------------- ↓保護者の方へ ---------------*/
  .parents-main-img {
    text-align: center;
    position: relative;
    z-index: 4;
    top: 30px;
  }
  .block-parents-list {
    background: url(/special/img/parents-bg.png);
    padding: 25px 0;
    min-width: 1000px;
    position: relative;
    z-index: 1;
  }
  .list-parents-list li {
    background: #fff;
    padding: 15px;
    border-radius: 4px;
    box-sizing: border-box;
  }
  .list-parents-list li.two-column {
    width: 100%;
    overflow: hidden;
    float: none;
    margin: 0 0 2%;
  }
  .list-parents-list li.two-column .area-left {
    float: left;
    width: 50%;
    box-sizing: border-box;
    padding: 10px;
  }
  .list-parents-list li.two-column .area-right {
    float: left;
    width: 50%;
    box-sizing: border-box;
    padding: 10px;
    border-left: dashed 2px #ccc;
  }
  .list-parents-list li {
    float: left;
    width: 49%;
    margin: 0 0 2% 2%;
  }
  .list-parents-list li:nth-child(2n+2) {
    clear: both;
    margin: 0 0 2% 0;
  }
  .list-parents-list li .title {
    color: #FF9605;
    font-size: 20px;
    padding: 5px 0 5px 40px;
    border-bottom: solid 1px #FF9605;
    margin: 0 0 15px 0;
  }
  .list-parents-list li .sub-title {
    color: #FF9605;
    font-size: 19px;
  }
  .list-parents-list li .text {
    margin: 0 0 1.5em 0;
    line-height: 1.5;
    font-size: 15px;
  }
  .list-parents-list li:nth-child(1) .title {
    background: url(/special/img/parents-number01.png) no-repeat left center;
    background-size: 36px 36px;
  }
  .list-parents-list li:nth-child(2) .title {
    background: url(/special/img/parents-number02.png) no-repeat left center;
    background-size: 36px 36px;
  }
  .list-parents-list li:nth-child(3) .title {
    background: url(/special/img/parents-number03.png) no-repeat left center;
    background-size: 36px 36px;
  }
  .list-parents-list li:nth-child(4) .title {
    background: url(/special/img/parents-number04.png) no-repeat left center;
    background-size: 36px 36px;
  }
  .list-parents-list li:nth-child(5) .title {
    background: url(/special/img/parents-number05.png) no-repeat left center;
    background-size: 36px 36px;
  }
  .list-parents-list li .title span {
    font-size: 12px;
  }

  .block-parents-voice .white-base {
    padding: 30px 32px;
  }
  .list-parents-voice li {
    background: #FFFEEB;
    width: 48%;
    margin: 1%;
    box-sizing: border-box;
    padding: 15px;
    float: left;
    box-shadow: 0px 3px 5px 1px #ccc;
    position: relative;
  }
  .list-parents-voice li:nth-child(2n+1) {
    clear: both;
  }
  .list-parents-voice .title-area {
    padding: 10px 0 10px 100px;
    background: url(/special/img/parents-icon.png) no-repeat left top;
    min-height: 100px;
    border-bottom: solid 1px #ccc;
  }
  .course-junior .block-entered .list-parents-voice .title-area {
    background: url(/course/img/junior-voice01.png) no-repeat left center;
  }
  .course-junior .block-entered .list-parents-voice .title-area.junior-voice-male {
    background: url(/course/img/junior-voice02.png) no-repeat left center;
  }
  .course-junior .block-entered .list-parents-voice .long-type .title-area {
    background: url(/course/img/junior-voice02.png) no-repeat left top;
  }
  .course-junior-high .block-entered .list-parents-voice .type-jh01 .title-area {
    background: url(/course/img/jh-voice01.png) no-repeat left top;
  }
  .course-junior-high .block-entered .list-parents-voice .type-jh02 .title-area {
    background: url(/course/img/jh-voice02.png) no-repeat left top;
  }
  .course-high .block-entered .list-parents-voice .title-area {
    background: url(/course/img/high-voice01.png) no-repeat left top;
  }
  .list-parents-voice .title-area .title {
    color: #00A54B;
    font-size: 18px;
    font-weight: bold;
  }
  .list-parents-voice .text-area .text {
    background: url(/special/img/bg-line.png) repeat;
    line-height: 30px;
    font-size: 14px;
    min-height: 250px;
  }
  .list-parents-voice li.long-type {
    width: 100%;
  }
  .list-parents-voice li.long-type .text-area .text {
    width: 100%;
    min-height: 0;
  }
  .block-entered .list-parents-voice {
    margin: 0 0 30px 0;
  }
  .course-high .list-parents-voice li:nth-child(1):before {
    content: '';
    position: absolute;
    right: 20px;
    top: 0px;
    background: url(/course/img/high-voice02.png) no-repeat;
    width: 154px;
    height: 155px;
  }
  .course-high .list-parents-voice li:nth-child(2):before {
    content: '';
    position: absolute;
    right: 20px;
    top: 0px;
    background: url(/course/img/high-voice03.png) no-repeat;
    width: 154px;
    height: 155px;
  }
  /*------------------------------ ↓company-page ------------------------------*/
  .list-company-main {
    border-top: solid 1px #ff9900;
    margin: 0 0 40px 0;
  }
  .list-company-main li {
    overflow: hidden;
    color: #0b4427;
    border-bottom: solid 1px #ff9900;
  }
  .list-company-main .area-left {
    display: inline-block;
    width: 25%;
    text-align: center;
    box-sizing: border-box;
    vertical-align: middle;
    background: #ffe0b2;
    padding: 20px 0;
    font-weight: 500;
  }
  .list-company-main .area-right {
    display: inline-block;
    width: 70%;
    box-sizing: border-box;
    vertical-align: middle;
    margin: 0 0 0 3%;
  }
  /*------------------------------ ↓recruit-page ------------------------------*/
  /* .recruit-main-bnr {
    background: url(../img/recruit/bnr.png) no-repeat center top;
    height: 240px;
  }
  .sec-recruit01 {
    margin: 20px 0 0 0;
  }
  .sec-recruit01 .text {
    margin: 0 25px 25px;
    font-size: 14px;
    color: #212121;
    line-height: 1.9;
  }
  .title-recruit-point {
    text-align: center;
  }
  .list-recruit-point {
    margin: 20px 0;
  }
  .list-recruit-point li {
    float: left;
    width: 282px;
    margin: 0 10px;
  }
  .list-recruit-point .text {
    font-size: 12px;
  }
  .list-recruit-point .text a {
    text-decoration: underline;
  }
  .list-recruit-point .text a:hover {
    color: #03C;
  } */
  /*------------------------------ ↓inquiry-page ------------------------------*/
  .inquiry-main .title-privacy {
    font-size: 20px;
    font-weight: 500;
    border-bottom: solid 2px #000;
    padding: 0 0 10px 0;
    margin: 0 0 10px 0;
  }
  .inquiry-main .subtitle-privacy {
    margin: 20px 0;
  }
  .inquiry-main .dl-privacy dd {
    margin: 0 0 20px 0;
  }
  .inquiry-main .area-privacy-signature {
    display: inline-block;
    border-top: dashed 1px #000;
    border-bottom: dashed 1px #000;
    padding: 5px;
  }
  .inquiry-page .privacy-top-text {
    text-align: center;
    margin: 30px 0;
    font-weight: 500;
    font-size: 18px;
  }
  .list-inquiry-choice {
    margin: 20px auto;
    width: 800px;
  }
  .list-inquiry-choice li {
    float: left;
    margin: 0 10px;
  }
  .form-base {
    background: #fff;
    box-sizing: border-box;
    width: 800px;
    padding: 20px 30px;
    margin: 20px auto 35px;
  }
  .form-base label {
    font-weight: 500;
    cursor: pointer;
  }
  .form-base select {
    font-size: 16px;
  }
  .form-base input[type="radio"] + label {
    margin: 0 16px 0 5px;
  }
  .form-base .input-address input {
    width: 90%;
  }
  .form-base .input-school input[type="text"] {
    width: 400px;
  }
  .form-base textarea {
    width: 95%;
  }
  .list-form-base li {
    overflow: hidden;
    line-height: 35px;
    padding: 15px 0;
  }
  .list-form-base li .area-left {
    float: left;
    width: 200px;
    position: relative;
    font-size: 15px;
    font-weight: 500;
  }
  .list-form-base li .area-left .hissu {
    display: inline-block;
    text-align: center;
    background: #e74c3c;
    color: #fff;
    font-size: 13px;
    height: 30px;
    line-height: 30px;
    width: 60px;
    position: absolute;
    top: 0;
    right: 0;
  }
  .list-form-base li .area-right {
    float: left;
    width: 510px;
    margin: 0 0 0 28px;
    font-size: 14px;
  }
  .area-submit a:hover {
    opacity: 0.7;
  }
  .area-submit .btn-policy {
    margin: 0 0 25px 0;
    font-size: 18px;
  }
  .area-submit .btn-policy label {
    padding: 0 0 0 10px;
    cursor: pointer;
    transition: 0.2s;
  }
  .area-submit .btn-policy label:hover, .area-submit .btn-policy input:checked + label {
    color: #ff4500;
  }
  .area-submit input[type="submit"] {
    width: 360px;
    height: 50px;
    background: url(/inquiry/img/btn-submit.png) no-repeat;
    border: none;
    cursor: pointer;
  }
  .form-course-box {
    margin: 25px 0;
    border: solid 1px #999;
  }
  .form-course-box .course-title {
    text-align: center;
    padding: 10px;
    color: #fff;
  }
  .form-course-box.course-junior-high .course-title {
    background: #E74E3A;
  }
  .list-form-table li {
    overflow: hidden;
    display: table;
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #999;
  }
  .list-form-table li p {
    display: table-cell;
    padding: 8px;
    font-size: 14px;
  }
  .list-form-table li p + p {
    border-left: 1px solid #999;
  }
  .list-form-table li p.event-title {
    width: 27%;
    font-size: 15px;
    font-weight: bold;
  }
  .form-event-text {
    line-height: 30px;
    height: 30px;
    font-weight: 600;
  }
  .form-event-text span {
    display: inline-block;
    width: 60px;
    height: 30px;
    line-height: 30px;
    background: #e74c3c;
    color: #fff;
    text-align: center;
    margin: 0 0 0 20px;
    font-size: 13px;
  }
  .thanks-text {
    padding: 0 0 30px 0;
  }
  .accent { font-weight: bold; color: #f00; }
  
  
  /*---------------- ↓taiken --------------------*/
  .taiken-main .white-base {
    padding: 40px 20px 20px;
  }
  .taiken-main figure {
    text-align: center;
    margin: 0 0 40px 0;
  }
  .list-taiken01 {
    width: 90%;
    margin: 0 auto 30px;
  }
  .list-taiken01 li {
    border-bottom: dashed 2px #ccc;
    padding: 5px 0 5px 38px;
    position: relative;
  }
  .list-taiken01 li:before {
    position: absolute;
    left: 5px;
    top: 7px;
    line-height: 1.5;
    background: #FF9800;
    height: 1.5em;
    width: 1.5em;
    border-radius: 50%;
    text-align: center;
    color: #fff;
  }

  .taiken-main .strong-text {
    font-size: 25px;
    font-weight: 500;
    text-align: center;
    margin: 50px 0;
  }
  .list-taiken02 li {
    /* width: 48%; */
    width: calc(33.33% - 2%);
    /* margin: 0 1%; */
    margin: 0 1% 2%;
    float: left;
    background: #009944;
    border-radius: 10px;
    box-sizing: border-box;
    padding: 5px;
  }
  .list-taiken02 .title {
    color: #fff;
    text-align: center;
    font-size: 22px;
    line-height: 30px;
    vertical-align: middle;
    padding: 8px 0;
  }

	/* 2024.9.6追加 */
	.long_title {
		font-size: 20px !important;
	}

  .list-taiken02 .title span {
    font-size: 30px;
    position: relative;
    top: 1px;
  }
  .list-taiken02 .text {
    background: #fff;
    padding: 10px;
    font-size: 13px;
    min-height: 94px;
    border-radius: 5px;
  }
  .btn-taiken {
    text-align: center;
    margin: 20px 0 40px;
  }
  .btn-taiken a:hover {
    opacity: 0.7;
  }
  /*------------------------------ ↓sitemap-page ------------------------------*/
  .list-sitemap {
    margin: 0 0 30px 0;
  }
  .list-sitemap > li:before {
    content: '●';
    color: #FF9900;
    font-size: 10px;
    padding: 0 6px 0 0;
    vertical-align: middle;
  }
  .list-sitemap > li {
    float: left;
    /* width: 33%; */
    width: 31%;
    font-size: 14px;
    margin: 0 0 3px 0;
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .list-sitemap > li:nth-child(3n+1) {
    clear: both;
  }
  .list-small-sitemap {
    margin: 0 0 20px 0;
  }

  /*------------------------------ ↓news-page ------------------------------*/
  .list-news-main {
    margin: 0 0 20px 0;
  }
  .list-news-main li {
    border-bottom: dotted 2px #cccccc;
    background: url(../img/arrow-news.png) no-repeat 99% center;
  }
  .area-news-info .cat-tag {
    background: #009b4b;
    display: inline-block;
    height: 20px;
    line-height: 20px;
    text-align: center;
    width: 100px;
    border-radius: 5px;
    color: #fff;
    font-size: 11px;
    margin: 0 10px 0 0;
  }
  .area-news-info time {
    display: inline-block;
    line-height: 20px;
    font-size: 14px;
  }

  .list-news-main .text {
    color: #333;
    margin: 5px 0;
    width: 93%;
    transition: 0.2s;
  }
  .list-news-main li:hover .text {
    color: #009b4b;
  }
  .news-page .wp-editor {
    margin: 10px 0 50px;
    padding: 0 0 40px 0;
    border-bottom: 2px dotted #e0801b;
  }
  .wp-editor hr {
    clear: both;
    margin: 30px 0;
    color: #ebe8e0;
    background-color: #ebe8e0;
    height: 4px;
    border: none;
  }
  .wp-editor img {
    max-width: 100%;
    height: auto;
  }
  .wp-editor .alignleft {
    /* float: left; */
    text-align: left;
    margin: 0 10px 10px 0;
  }
  
  .wp-editor .alignright {
    /* float: right; */
    text-align: right;
    margin: 0 0 10px 10px;
  }
  .wp-editor h2 {
    background: url(../img/title-bg-me.png) no-repeat left bottom;
    font-size: 23px;
    color: #f3990f;
    font-weight: 500;
    width: 100%;
    box-sizing: border-box;
    padding: 0 0 5px 50px;
    position: relative;
    margin: 0 0 30px 0;
    letter-spacing: 1px;
  }
  .wp-editor h2:before {
    content: '';
    width: 31px;
    height: 36px;
    background: url(../img/title-bg-icon.png);
    position: absolute;
    left: 10px;
    bottom: 6px;
  }
  .news-page .wp-editor h3 {
    font-size: 21px;
    font-weight: 500;
    border-bottom: dotted 2px #cccccc;
    margin: 0 20px;
    padding: 10px 0 0 0;
  }
  .wp-editor p {
    margin: 18px;
    font-size: 15px;
  }
  .wp-editor a {
    color: #00F;
    text-decoration: underline;
  }
  .wp-editor a:hover {
    color: #F00;
  }
  .news-page .wp-editor .area-news-info {
    text-align: right;
  }
  .news-page .wp-editor .area-news-info p {
    margin: 0 10px 10px 0;
  }
  .btn-green-base a.btn-back {
    background: url(../img/slider-prev03.png) no-repeat 5% center;
    background-size: 10px 17px;
  }
  .btn-green-base a.btn-back:hover {
    background: url(../img/slider-prev02.png) no-repeat 5% center;
    background-size: 10px 17px;
  }
  /*-- lpページ --*/
  .area-feature-bnr {
    background: #FFF9D6;
    padding: 25px 0;
  }
  .sp-tamai .tamai-video {
    width: 560px;
    height: 360px;
  }
  .world-box01 {
    border: solid 3px #009438;
    padding: 0 15px 30px;
    background: #fff;
    margin: 20px auto;
    width: 560px;
  }

  
  
  /*------------------------------ ↓contact-form ------------------------------*/
  .seimei { width: 190px; margin-right: 10px; }
  
  /*------------------------------↓160607追加/feature/sp-0601-----------------------------*/
  .mgt20_10 {margin-top:20px;}
  .acmenu dd ul li a.tel {pointer-events: none;}

  
  /*------------------------------↓161224追加/feature/sp-1701-----------------------------*/
  .school-list {
    width: 100%;
    max-width: 640px;
    margin: 3% auto;
    text-align: center;
    font-size: 1.4em;
    background:url(/img/img1-05.jpg) no-repeat;
  }
  .school-list li a:hover {
    color: #35aee0!important;
  }
  
  /*2017合格実績用*/
  .list-success-number-2017{background-color: #fff;width: 100%;border: solid 3px #00A54B;background: url(/success/img/bg-type03.png) repeat center center;background-color: #fff;}
  .list-success-number-2017 dl{padding: 15px; font-size: 1.2em;font-weight: bold;}
  .list-success-number-2017 dl:first-child{padding-bottom: 0;}
  .list-success-number-2017 dl dt,.list-success-number-2017 dl dd{display: inline-block;}
  .list-success-number-2017 dl dd{color: #00A54B;font-size: 1.5em; padding-left: 5px;}
  
  /* １週間無料体験　追加 CSS */
  
  .sp-taiken2017 h2{
    text-align: center;
    background-color: #F39800;
    color: #fff;
    max-width: 640px;
    margin: 0 auto;
  }

  
  
  /* 20171019 冬期講習会追加CSS */
  .toki_checkbox span.wpcf7-list-item{display: block; font-size: 12px;}
  .toki_checkbox h4{color: #f3990f; font-size: 20px; font-weight: bold;}
  .toki_checkbox .form-base input{width: auto;}
  
  
  /*------------------------------↓180113追加/flow/-----------------------------*/
  .text_link_color{font-weight: bold; color: #009b4b;}
  .text_link_color:hover{text-decoration: underline;}
  
  
  /* トップ、コース紹介用スライダー */
  .list-course-slider {
    background: #ffffff;
    padding: 15px;
    border: solid 1px #efefef;
    margin: 0 0 40px 0;
    overflow: visible;
  }
  
  /*------------------------------↓180118追加/asuvision用CSS/-----------------------------*/
  .asuvision-box{font-size: 20px;}
  
  .asuvision-box .asu-contents{border:2px solid #884792; background: #F6EBF3; padding: 30px;}
  .asuvision-box .asu-contents h3{color: #884792; font-size: 30px; text-align: center; margin-bottom: 30px; font-weight: bold;}

  .asuvision-box .asu-contents .col.cont01 .col2:first-child{width: 68%;}
  .asuvision-box .asu-contents .col.cont02 .col2:first-child{width: 59%;}
  .asuvision-box .asu-contents .col.cont03 .col2:first-child{width: 63%;}
  .asuvision-box .asu-contents .col.cont04 .col2:first-child{width: 85%;}
  
  .asuvision-box .asu-contents .col.cont01 .col2:last-child{width: 32%;}
  .asuvision-box .asu-contents .col.cont02 .col2:last-child{width: 41%;}
  .asuvision-box .asu-contents .col.cont03 .col2:last-child{width: 37%;}
  .asuvision-box .asu-contents .col.cont04 .col2:last-child{width: 15%;}
  
  .asuvision-box .asu-contents .col.cont01 .col2:last-child,
  .asuvision-box .asu-contents .col.cont02 .col2:last-child,
  .asuvision-box .asu-contents .col.cont03 .col2:last-child,
  .asuvision-box .asu-contents .col.cont04 .col2:last-child{text-align: right;}
  
  .asuvision-box .asu-contents .sp-only{display: none;}
  
  
  /*------------------------------↓180308追加学研グループロゴ用CSS/-----------------------------*/
  .gakkengroup{
    position: relative;
    top: 5px;
    margin-left: 10px;
  }
  .gakkengroup img{max-width: 160px;}
 
  
  
  /*------------------------------↓0407入試説明会用日時テーブル（再利用可）/-----------------------------*/
  .schedule_table th,
  .schedule_table td{
    padding: 15px;
    vertical-align: middle;
    border-style: solid;
    border-color: #ccc;
    border-width: 0 1px 1px 0;
    font-size: 18px;
    box-sizing: border-box;
  }
  
  .schedule_table td{text-align: left;}
  
  .small-text10{font-size: 10px;}
  
  
  /* 特集ページ用資料請求ボタン */
  /* .formbtn{} */
  .formbtn a{
    display: block;
    width: 70%;
    margin: 0 auto;
    background: linear-gradient(#ffc800 , #FF9901);
    /* background: #FF9901; */
    color: #fff;
    border-radius: 10px;
    padding: 20px 10px;
    font-size: 26px;
    font-weight: bold;
  }
  

  /*↓20181116_共通バナー用CSS/-----------------------------*/
  .common-banner{padding:20px 0;}
  .common-banner ul{
    display: table;
    max-width: 1000px;
    margin:0 auto;
    border-collapse: separate;
    border-spacing: 20px 0;
  }
  .common-banner li{display: table-cell; width: 50%;}
  .common-banner img{width: 100%;}
  
  
  /*↓20190124_採用情報CSS/-----------------------------*/
  .recruit-title{
      font-size: 24px;
      font-weight: bold;
  }
  
  .recruit-box{margin-bottom: 40px;}
  
  
  
  /* 20190213 map用 */
  
  .school_box_wrapper{
      position: absolute;
      z-index: 9999;
      display: block;
  }
  
  
  /* LP用 20210205 */
  #lp_hukushima-form .list-form-base li .area-left{width: 220px;}
  #lp_hukushima-form .list-form-base li .area-right{width: 490px}
  
  
  /*↓20210519_パスワード用CSS/-----------------------------*/
  .post-password-form{
    width: 960px;
    margin: 0 auto;
  }
  
  /* 202010917作文コンクール発表用CSS */
  
  #sakubun .result-title{
  color: #59B431;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 40px;
  }
  
  #sakubun .result-title span{font-size: 40px; display: block; line-height: 1.4;}
  
    
  #sakubun .result-wrap .result-text{
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 20px;
  }

  #sakubun .result-wrap h4{
    background: #92cf5b;
    padding: 10px 0;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    border-radius: 10px;
  }

  #sakubun .ranking-title{
    text-align: left;
    color: #59B431;
    font-weight: bold;
    font-size: 24px;
    /* border-bottom: 1px solid #59B431; */
  }

  #sakubun .sakubun-wrap b{
    display: block;
    margin-bottom: 30px;
    font-size: 20px;
    text-align: center;
  }
  #sakubun .sakubun-wrap p{line-height: 2; font-size: 16px;}

  
    /*タブ実装*/  
  .tab_box .tab_btn {
    width: calc(50% - 20px);
    padding: 8px 0;
    color: #333;
    background: #FED966;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease 0s;
  }
  

  /* 20220226追加 */
  .formlink-btn a{
    display: block;
    background: #e80000;
    color: #fff;
    padding: 20px;
    border-radius: 100px;
    max-width: 500px;
    margin: 0 auto 40px;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    box-shadow: 0 5px #7c0000;
    transform: translateY(0px);
    transition: all .3s cubic-bezier(.55,0,.1,1);
  }
  
  .sp-only,.sp-only img{display: none;}
  
  /*------------------------------↓20220427/ライン用テーブル/-----------------------------*/
  .line-listtable th,
  .line-listtable td{
    padding: 15px;
    vertical-align: middle;
    border-style: solid;
    border-color: #ccc;
    border-width: 0 1px 1px 0;
    font-size: 18px;
    box-sizing: border-box;
  }
  
}


/* その他 切り替え */
@media only screen and (max-width: 736px) {
	.bnr_uchijuku {
		width: 95%;
		margin-top: 1rem;
	}
  /*------------------------------↓180308追加学研グループロゴ用CSS/-----------------------------*/
  /* 20250215修正 */
  .gakkengroup{
    display: block;
    position: static;
    top: 0px;
    /* margin-left: 0px; */
    margin-left: 5px;
  }
}

@media screen and (min-width: 414px) and (max-width: 767px) {
  .list-course-2column li {
    width: 48%;
    margin: 1%;
    float: left;
  }

  /* 2024.10.16追加 */
  .links-wrap2 p{
    margin: 5px 0 10px;
  }

  .links-wrap2 p:last-child{
    margin: 5px 0 0;
  }
}

/*----------------------------- ↓ コース一覧 アコーディオンメニュー 20250201 ----------------------------*/

.courselist_accordion_title {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}

.courselist_accordion {
  margin: 3em auto;
}

.toggle {
  display: none;
}

.option {
  position: relative;
  margin-bottom: 1em;
}

.title,
.content {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}

.title {
  /* border: solid 1px #ccc; */
  border-radius: 10px;
  text-align: center;
  letter-spacing: 2px;
  padding: 1em;
  display: block;
  color: #fff;
  font-weight: bold;
}

/* .title::after,
.title::before {
  content: "";
  position: absolute;
  right: 1.25em;
  top: 1.25em;
  width: 2px;
  height: 0.75em;
  background-color: #999;
  transition: all 0.3s;
} */

/* .title::after {
  transform: rotate(90deg);
} */

.content {
  max-height: 0;
  overflow: hidden;
}

.content p {
  margin: 0;
  padding: 0.5em 1em 1em;
  font-size: 0.9em;
  line-height: 1.5;
}

.toggle:checked + .title + .content {
  max-height: 575px;
  /* max-height: 100%; */
  transition: all 1s;
  background-color: #fff;
  border-radius: 10px;
}

.toggle:checked + .title::before {
  transform: rotate(90deg) !important;
}

.course_list_es {
  background-color: #0097da;
}

.course_list_jhs {
  background-color: #004da0;
}

.course_list_hs {
  background-color: #00532b;
}

.courselist_content {
  padding: 2rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.courselist_content li {
  max-width: 32%;
  margin-right: 2%;
  margin-bottom: 2%;
}

.courselist_1row li {
  margin-bottom: 0;
}

.courselist_content li:nth-child(3n) {
  margin-right: 0;
}

.courselist_content li:last-child {
  margin-bottom: 0;
}

.courselist_content li img {
  max-width: 100%;
  height: auto;
}

.courselist_content li a :hover{ 
	opacity:0.5;
	transition:0.3s;
}

.courselist_accordion_top {
  margin: 0 auto 3em;
}

/* コース一覧 教室ページ用 20250201 */
.courselist_schoolpage {
  display: flex;
  justify-content: space-between;
}

.courselist_schoolpage_contents {
  width: 30%;
}

.courselist_schoolpage_contents h3 {
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 8px;
  border-radius: 15px;
}

.courselist_schoolpage_contents ol {
  margin-top: 15px;
}

.courselist_schoolpage_contents li {
  border-bottom: 1px solid #868686;
}

.courselist_schoolpage_contents li a {
  display: block;
  padding: 10px 5px;
  background: url(../img/sp/nav-arrow.png) no-repeat 98% center;
  background-size: 7px 12px;
}

.courselist_schoolpage_contents span {
  color: #0097da;
}

.course_list_notes {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.4;
  text-indent: -1em;
  padding-left: 1em;
}

/* コース一覧 専用ページ用 20250219 */
.courselist_link h3 {
  border-radius: 10px;
  text-align: center;
  letter-spacing: 2px;
  padding: 1em;
  display: block;
  color: #fff;
  font-weight: bold;
}

.courselist_link_es {
  background-color: #0097da;
}

.courselist_link_jhs {
  background-color: #004da0;
}

.courselist_link_hs {
  background-color: #00532b;
}

.courselist_link {
  background-color: #fff;
  border-radius: 10px 10px 0 0;
  margin-bottom: 70px;
}

.courselist_link ul {
  padding: 2rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.courselist_link li {
  max-width: 32%;
  margin-right: 2%;
  margin-bottom: 2%;
}

.courselist_link li:nth-child(3n) {
  margin-right: 0;
}

.courselist_link li:last-child {
  margin-bottom: 0;
}

.courselist_link li img {
  max-width: 100%;
  height: auto;
}

/* 全国統一小学生テスト 20250414 */
.yotsuya_mainvisual {
	max-width: 1060px;
	margin: 0 auto;
}

.yotsuya_mainvisual img {
	width: 100%;
	height: auto;
}

.yotsuya_gaiyou {
	width:100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background-color: #fff;
	margin: 0 auto;
}

.yotsuya_gaiyou tr {
	width:100%;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.yotsuya_gaiyou th {
	padding:8px 0;
	width:20%;
	color:#fff; 
	background-color:#D51330;
	border-right:1px solid #ccc;
	text-align: center;
	vertical-align:middle;
	font-weight:700;
}

.yotsuya_gaiyou td {
	width:80%;
	text-align: left;
	line-height: 1.4;
	vertical-align:middle;
	padding: 10px 15px;
}

.yotsuya_haiten {
	width:100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background-color: #fff;
	margin: 0 auto;
}

.yotsuya_haiten tr {
	width:100%;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.yotsuya_haiten th {
	color:#fff; 
	background-color:#D51330;
	border-right:1px solid #ccc;
	text-align: center;
	vertical-align:middle;
	font-weight:700;
}

.yotsuya_haiten th,.yotsuya_haiten td{
	width:12.5%; 
	padding:10px 0;
  line-height: 1.4;
	vertical-align: middle;
}
.yotsuya_haiten td {
	border-right:1px solid #ccc;
	text-align: center;
}

.yotsuya_text {
	margin-top: 10px;
}
.a_title {
	border-left: 5px solid #d51330;
	background-color: #f6f6f6;
	padding: 10px;
  margin: 40px auto 15px;
  font-size: 18px;
}

.yotsuya_school {
	width:100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background-color: #fff;
	margin: 0 auto;
}

.yotsuya_school tr {
	width:100%;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.yotsuya_school th {
	padding:8px 0;
	width:20%;
	color:#fff; 
	background-color:#D51330;
	border-right:1px solid #ccc;
	text-align: center;
	vertical-align:middle;
	font-weight:700;
}

.yotsuya_school td {
	width:80%;
	text-align: left;
	line-height: 1.4;
	vertical-align:middle;
	padding: 10px 15px;
}

.yotsuya_school a {
	color: #D51330;
}

/* 教室長からのメッセージ 20250423 */
.mb10 span {
  padding-left: 1em; 
}

.msg p {
  text-align: justify;
}

/* フローティングバナー 20250627 */
.float_banner {
	position: fixed;
	bottom: 0;
	z-index: 99;
	right: 0;
	line-height: 0;
}

/* 個別指導無料体験フォーム 20250818 */
.contact_mainV {
 width: 100%;
 margin: -30px auto 20px;
}

.contact_mainV img {
 width: 100%;
}

@media screen and (max-width: 767px) {
  /* コース一覧 アコーディオンメニュー 20250201 */
  .option {
    padding: 0 5%;
  }

  .courselist_accordion_top {
    margin: 2em auto;
    padding-bottom: 1em;
  }

  .courselist_content {
    padding: 1em;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .courselist_content li {
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }

  .toggle:checked + .title + .content {
    max-height: 2800px;
  }

  .courselist_1row li {
    margin-bottom: 4%;
  }

  /* コース一覧 アコーディオンメニュー ハンバーガーメニュー内 20250201 */
  .accordion_sp {
    width: 100%;
  }
  
  .toggle_sp {
    display: none;
  }
  
  .option_sp {
    position: relative;
  }
  
  .option_sp_1st {
    border: none!important;
  }
  
  .title_sp,
  .content_sp {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
  }
  
  .title_sp {
    border-top: solid 1px #cccccc;
    padding: 11px 20px;
    display: block;
    color: #0b4427;
    font-weight: bold;
  }
  
  .title_sp::after,
  .title_sp::before {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 1.25em;
    width: 2px;
    height: 0.75em;
    background-color: #999;
    transition: all 0.3s;
  }
  
  .title_sp::after {
    transform: rotate(90deg);
  }
  
  .content_sp {
    max-height: 0;
    overflow: hidden;
  }
  
  .content_sp p {
    margin: 0;
    padding: 0.5em 1em 1em;
    font-size: 0.9em;
    line-height: 1.5;
  }
  
  .toggle_sp:checked + .title_sp + .content_sp {
    max-height: 500px;
    transition: all 1.5s;
  }
  
  .toggle_sp:checked + .title_sp::before {
    transform: rotate(90deg) !important;
  }
  
  .accordion_sp li a {
    display: block;
    color: #0b4427;
    box-sizing: border-box;
    padding: 11px 35px;
    font-size: 12px;
    font-weight: 600;
    background: url(../img/sp/nav-arrow.png) no-repeat 95% center;
    background-size: 7px 12px;
  }

  /* コース一覧 教室ページ用 20250201 */
  .courselist_schoolpage {
    flex-direction: column;
  }

  .courselist_schoolpage_contents {
    width: 100%;
    margin-bottom: 20px;
  }

  .courselist_schoolpage_contents ol {
    margin-top: 5px;
  }

  .course_list_notes {
    font-size: 12px;
  }

  /* コース一覧 専用ページ用 20250219 */
  .courselist_link ul {
    padding: 5%;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .courselist_link li {
    max-width: 100%;
    margin-right: 0;
    margin-bottom: 4%;
  }

  .courselist_link {
    margin-bottom: 40px;
  }
  
  /* フローティングバナー 20250627 */
  .float_banner {
    position: fixed;
    z-index: 99;
    right: 0%;
    bottom: 80px;
    width: 180px;
  }
}

