@CHARSET "UTF-8";

/* -------------------------------------- */
/* トップ画像コンテナ (tpimg-box) */
/* -------------------------------------- */
.tpimg-box{
	width:100%;
	margin:-5px auto 0;
}
.tpimg-box img{
	width:100%;
}

/* ====================================== */
/* 共通ユーティリティースタイル */
/* ====================================== */
.tx_c{
	/* 中央揃え */
	text-align:center;
}
.margin-top-2em{
	/* 上部マージン（会社情報などで使用） */
	margin-top:2.0em;
}

/* -------------------------------------- */
/* ページタイトル/コンテナ (cttl01-box) */
/* -------------------------------------- */
.cttl01-box{
	width:90%;
	margin:0 auto;
	position:relative;
}
.cttl01-box.first{
	margin-top:70px;
}
.cttl01-box > div{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:center;
	width:100%;
	margin:2.0em auto 0;
	padding:0.5em;
	border-radius:20px 20px 0 0;
	color:#fff;
}
.cttl01{
	font-size:1.3em;
}

/* -------------------------------------- */
/* 講座セクション (sbb01) */
/* -------------------------------------- */
.sbb01{
	margin-top:0;
	padding:2.5em 0 1.5em;
}
.sbb01 img{
	border-radius:10px;
}
.sbb01 > article{
	width:95%;
	margin:0 auto;
	position:relative;
}
.sbb01 > article > span{
	position:absolute;
	left:0;
	top:-3.0em;
	color:#fff;
	border-radius:40px;
	padding:0.3em 1.0em;
	font-size:1.3em;
}
.sbb01 > article > div{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:center;
	width:100%;
	margin:0 auto 2.0em;
	padding:1.0em;
	background-color:#fff;
	border-radius:20px;
}
.sbb01 > article > div > div:nth-child(1), .sbb01 > article > div > div:nth-child(2){
	padding:1.0em 0.5em;
	width:100%;
}
.sbb01 > article > div > div:nth-child(2) > table{
	width:100%;
	border-collapse:separate;
	border-spacing:5px;
}
.sbb01 > article > div > div:nth-child(2) > table th{
	color:#fff;
	width:20%;
	text-align:center;
	vertical-align:middle;
	padding:0.2em 0;
}
.sbb01 > article > div > div:nth-child(2) > table td{
	vertical-align:middle;
	font-weight:300;
	width:80%;
	font-size:0.8em;
}

/* -------------------------------------- */
/* 講座の説明部分 (sbb01-box / sbb01-txt) */
/* -------------------------------------- */
.sbb01-box{
	width:95%;
	margin:0 auto;
}
.sbb01-txt{
	width:95%;
	margin:0.5em auto;
	font-weight:300;
}
.sbb01-txt2{
	background-color:#fff;
	border-radius:10px;
	padding:1.0em 1.2em;
	margin-bottom:20px;
	font-weight:normal;
}

/* -------------------------------------- */
/* 背景色/ヘッダー色 (講座ごと) */
/* -------------------------------------- */
.ebg01{
	background-color:#FFE1BE;
}
.ebg02{
	background-color:#FC8328;
}
.jbg01{
	background-color:#CCE7EC;
}
.jbg02{
	background-color:#2A9BE6;
}
.hbg01{
	background-color:#C2E8CB;
}
.hbg02{
	background-color:#019F5E;
}
.nbg01{
	background-color:#4FB878;
}

/* -------------------------------------- */
/* 見出しスタイル (smkttl01など) */
/* -------------------------------------- */
.smkttl01{
	font-weight:bold;
	font-size:1.2em;
	margin:1.8em 0 1.0em;
	text-align:center;
	padding:0.5em;
	border-radius:15px 15px 0 0;
	background-color:#419361;
}
.smkttl01 span{
	color:#fff;
}
.smkttl01-2{
	font-weight:bold;
	font-size:1.3em;
	margin:2.0em 0 1.0em;
	text-align:center;
	padding:0.5em;
	border-radius:20px 20px 0 0;
}
.smkttl01-2 span{
	color:#fff;
}
.smk02ttl02{
	font-size:1.3em;
	margin:1.0em 0 0.3em 0;
	color:#4FB878;
}
.smkttl01.elem{
	background-color:#FC8328;
}
.smkttl01-2.elem{
	background-color:#FC8328;
}
.smk02ttl02.elem{
	color:#FC8328;
}
.smkttl01.junior{
	background-color:#2A9BE6;
}
.smkttl01-2.junior{
	background-color:#2A9BE6;
}
.smk02ttl02.junior{
	color:#2A9BE6;
}
.smkttl01.high{
	background-color:#019F5E;
}
.smkttl01-2.high{
	background-color:#019F5E;
}
.smk02ttl02.high{
	color:#019F5E;
}
.smk02ttl03{
	text-align:center;
	display:inline-block;
	font-size:1.5em;
	background-color:#374034;
	color:#FFFFFF;
	border-radius:45px;
	padding:0.2em 2.0em;
	margin:0 auto 1.0em;
}
.smk02ttl03-cntbox{
	text-align:center;
}

/* -------------------------------------- */
/* テーブルスタイル (tbl01) */
/* -------------------------------------- */
.tbl01{
	width:100%;
	border-spacing:0;
	margin:0 auto 15px;
	font-size:0.8em;
}
.tbl01 th{
	border:1px solid #444;
	padding:0.5em 0.2em;
	vertical-align:middle;
	color:#fff;
}
.tbl01 td{
	border:1px solid #444;
	padding:0.5em 0.6em;
	background-color:#fff;
	vertical-align:middle;
}
.tbl01 th.tx_c, .tbl01 td.tx_c{
	text-align:center;
}
.tbl01 th.fw-n, .tbl01 td.fw-n{
	font-weight:normal;
}
.tbl01 th.fw-b, .tbl01 td.fw-b{
	font-weight:bold;
}
.tbl01 span{
	color:#4FB878;
	font-weight:bold;
}
.tbl01 .nowrap{
	white-space:nowrap;
}
.sp{
	display:block;
}
/* テーブル内のリンクボタン */
.detail{
	font-size:0.75em;
	font-weight:bold;
	color:#4FB878;
	letter-spacing:-0.07em;
	padding:1px 7px;
	background-color:#fff;
	border:2px solid #4FB878;
	border-radius: 5px;
	cursor:pointer;
	display:inline-block;
	float:right;
}

/* -------------------------------------- */
/* ボックス・パーツスタイル */
/* -------------------------------------- */
.features-box02{
	margin:0 auto 1.0em;
	background-color:#FFF;
	border:2px solid #419361;
	padding:1.0em 1.0em 0em;
}
.features-box02 h3{
	color:#419361;
	font-size:1.2em;
	margin-bottom:0.5em;
	font-weight:bold;
}
.features-box02 p{
	margin-bottom:1.2em;
}
.features-box02 p.fw-n{font-weight:normal;}
.features-box02 p.fw-b{font-weight:bold;}
.tokuten_ttl01{
	padding:0.5em;
	font-size:1.2em;
	background-color:#ea3f25;
	text-align:center;
	color:#fff100;
	font-weight:bold;
}
.tokuten_box01{
	margin:1.0em auto;
}

/* -------------------------------------- */
/* その他テキスト・パーツ・非表示要素など */
/* -------------------------------------- */
.linkbtn01{
	display:block;
	margin:10px auto 0;
	text-align:center;
	color:#fff;
	border-radius:20px;
	width:90%;
	padding:0.3em;
}
#elem, #junior, #high{
	display:block;
	position:relative;
	top:-120px;
	visibility:hidden;
}
.end0805b{
	position:absolute;
	top:0;
	left:2.5%;
	width:95%;
	height:100%;
	background-color:white;
	opacity:0.6;
	z-index:1;
	border-radius:20px;
}
.end0805s{
	position:absolute;
	z-index:2;
	color:#fff;
	padding:1.0em 3.0em;
	border-radius:20px;
	font-size:1.3em;
	text-align:center;
}
/* TELの時間帯表記 */
.time-text{
	background-color: #59B972; 
	color: #fff; 
	padding: 5px 20px; 
	border-radius: 50px; 
	line-height: 2.6; 
	font-size: 80%;
}
.smk02tel01{
	display:inline-block;
	width:40%;
	margin:0.2em 0.5em;
	font-size:0.8em;
	border:2px solid #019F5E;
	border-radius:10px;
	text-align:center;
	padding:0.3em 0;
	font-weight:600;
}
.smk02tel01 span{
	color:#019F5E;
	font-size:0.8em;
}

/* -------------------------------------- */
/* 連絡先 (contact_box) */
/* -------------------------------------- */
.contact_btnbox{
	text-align:center;
}
.contact_box{
	text-align:center;
	display:inline-block;
	margin:1.0em;
	vertical-align:top;
}
.contact_box p{
	color:#009944;
}
.contact_box a, .contact_box span{
	background-color:#87C15C;
	display:inline-block;
	color:#FFFFFF;
	border-radius:9999px;
	padding:0.8em 0.3em;
	min-width:280px;
}
.contact_box p.close{
	color:#999999;
}
.contact_box span{
	background-color:#999999;
}
.contact_txt{
	margin-bottom:10px;
	color:#009944;
}

/* -------------------------------------- */
/* 連絡先その２ (contact_box02) */
/* -------------------------------------- */
.call-txt{
	margin-bottom:10px;
	color:#F84D4D;
	text-align:center;
}
.contact_box02{
	text-align:center;
	display:block;
	font-size:1.2em;
	margin:0 auto 30px;
}
.contact_box02 a{
	background-color:#F84D4D;
	border:3px solid #fff;
	box-shadow:2px 2px 5px rgba(0, 0, 0, 0.4);
	display:inline-block;
	color:#fff;
	border-radius:10px;
	margin-bottom:20px;
	width:90%;
	padding:0.8em 0;
	position:relative;
}
.contact_box02 span{
	background-color:#999;
	border:3px solid #fff;
	box-shadow:2px 2px 5px rgba(0, 0, 0, 0.4);
	display:inline-block;
	color:#fff;
	border-radius:10px;
	margin-bottom:20px;
	width:90%;
	padding:0.8em 0;
}
.contact_box02 label.disabled-link{
	background-color:#F84D4D;
	border:3px solid #fff;
	box-shadow:2px 2px 5px rgba(0, 0, 0, 0.4);
	display:inline-block;
	color:#fff;
	border-radius:10px;
	margin-bottom:20px;
	width:90%;
	padding:0.8em 0;
	position:relative;
	cursor:pointer;
}
.contact_box02 span.attention{
	padding:initial;
	margin:initial;
	font-size:0.6em;
	background-color:initial;
	border:none;
	box-shadow:initial;
	padding-top:10px;
}
/* アイコンのスタイル */
.contact_box02 a::before{
	content:'';
	position:absolute;
	top:0;
	bottom:0;
	right:15px;
	width:30px;
	height:30px;
	margin:auto;
	border-radius:20px;
	background-color:#fff;
}
.contact_box02 a::after{
	content:'';
	position:absolute;
	top:0;
	bottom:0;
	right:20px;
	width:0;
	height:0;
	margin:auto;
	border-top:9px solid transparent;
	border-right:0 solid transparent;
	border-left:15px solid #F84D4D;
	border-bottom:9px solid transparent;
	box-sizing:border-box;
}

/* -------------------------------------- */
/* 過去の的中例 (prediction) */
/* -------------------------------------- */
.prediction{width:100%;margin:2.0em 0;}
.prediction .pc{display:none;}
.prediction .sp{display:block;}
.prediction p{
	font:normal normal normal 19px/20px Hiragino Kaku Gothic ProN;
	font-weight:bold;
	text-align:center;
	color:#D90505;
	opacity:1;
	margin-bottom:3px;
}

/* -------------------------------------- */
/* ナビゲーション (course_nav) */
/* -------------------------------------- */
.course_nav-box{
	width:95%;
	margin:3.0em auto 0;
}
.course_nav ul, .course_nav2 ul{
	display:flex;
	justify-content:start;
	flex-wrap:wrap;
	align-items:flex-end;
	margin:0 -2px;
}
.course_nav ul li, .course_nav2 ul li{
	width:50%;
	padding:0 2px;
	text-align:center;
	box-sizing:border-box;
	margin-bottom:15px;
}
.course_nav2 ul li{
	width:100%;
}
.course_nav ul li a, .course_nav2 ul li a{
	position:relative;
	background-color:#419361;
	border-radius:5px;
	color:#FFFFEE;
	border:2px solid #419361;
	padding:0.5em 0;
	display:block;
	width:100%;
	font-size:0.8em;
	line-height:1.0em;
	height:40px;
	text-decoration: none;
}
.course_nav2 ul li a{
	height:auto;
	line-height:1.4em;
	font-size:0.9em;
}
.course_nav.crl ul li a, .course_nav2.crl ul li a{
	border-radius:999px;
}
.course_nav ul li a p{
	text-align:center;
	position:relative;
	top:50%;
	transform:translateY(-50%);
	line-height:1.2em;
	margin:0;
}
.nav_txt{
	padding-bottom:7px;
	display:block;
	text-align:center;
	font-size:0.7em;
	line-height: 1.2;
}
.nav_txt span{
	color:#419361;
}
.course_nav_arrow{
	font-size:1.3em;
	text-align:center;
	color:#419361;
	margin-top:-8px;
	line-height:1.0;
	position:relative;
	z-index:-1;
	transform: scale(2.0, 0.8);
}
.course_nav ul li a.elem, .course_nav2 ul li a.elem{
	background-color:#FEFBE0;
	color:#FC8328;
	border:2px solid #FC8328;
}
.course_nav ul li a.elem.inv, .course_nav2 ul li a.elem.inv{
	background-color:#FC8328;
	color:#FFF;
}
.course_nav_arrow.elem{
	color:#FC8328;
}
.course_nav ul li a.junior, .course_nav2 ul li a.junior{
	background-color:#EBFAFF;
	color:#2A9BE6;
	border:2px solid #2A9BE6;
}
.course_nav ul li a.junior.inv, .course_nav2 ul li a.junior.inv{
	background-color:#2A9BE6;
	color:#FFF;
}
.course_nav_arrow.junior{
	color:#2A9BE6;
}
.course_nav ul li a.high, .course_nav2 ul li a.high{
	background-color:#F9FFE0;
	color:#019F5E;
	border:2px solid #019F5E;
}
.course_nav ul li a.high.inv, .course_nav2 ul li a.high.inv{
	background-color:#019F5E;
	color:#FFF;
}
.course_nav_arrow.high{
	color:#019F5E;
}

/* -------------------------------------- */
/* アコーディオン (courseaccbox) */
/* -------------------------------------- */
.courseaccboxttl{
	background-color:#4FB878;
	color:#fff;
	padding:0.5em 1.0em;
	font-size:1.0em;
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 auto 0.7em;
	cursor:pointer;
}
.courseaccboxttl br.pc{
	display:block;
}
.courseaccboxttl br.sp{
	display:none;
}
.courseaccboxttl.elem{
	background-color:#FC8328;
}
.courseaccboxttl.junior{
	background-color:#2A9BE6;
}
.courseaccboxttl.high{
	background-color:#019F5E;
}
.courseaccboxtd01{
	margin-left:1.0em;
	transform:rotate(90deg) scale(1,2);
}
.courseaccbox{
	padding-bottom:1.0em;
}

/* -------------------------------------- */
/* キーポイントセクション (kpt01) */
/* -------------------------------------- */
.kpt01{
	background-color:#E3F5D9;
	border-radius:20px;
	margin:0 auto 20px;
	padding:20px;
}
.kpt01 img{
	display:block;
	border-radius:5px;
	margin:0 auto;
	width:100%;
}
.kpt01 p{
	text-align:justify;
	font-size:0.9em;
	padding-top:20px;
}
.kpt01 p.fw-n{
	font-weight:normal;
}
.kpt01-whtbox{
	padding:20px;
	background-color:#FFF;
	border-radius:12px;
}

/* -------------------------------------- */
/* 学年ボタン (achv-box01, gakunen-btn) */
/* -------------------------------------- */
.achv-box01{
	width:100%;
	padding:2.0em 0 1.0em;
	margin:0;
}
.achv-box01 div{
	width:90%;
	margin:0 auto;
	text-align:center;
}
.achv-box01 div > p{
	font-weight:300;
	text-align:left;
}
.achv-linkbtn01, .achv-linkbtn02{
	font-size:1.2em;
	padding:0.2em 1.0em;
	border-radius:40px;
	display:inline-block;
	margin:1.0em 0.5em;
	box-shadow:0px 0px 2px 0px rgba(136, 136, 136, 1);
}
.achv-linkbtn01{
	color:#FFFFFF;
	background-color:#009944;
}
.achv-linkbtn02{
	color:#009944;
	background-color:#FFFFFF;
}
.gakunen-btn span{
	margin:-4.0em 0 1.0em 0;
	display:inline-block;
	color:#fff;
	border-radius:40px;
	padding:0.3em 2.5em 0.2em 2.5em;
	font-size:1.3em;
}
.gakunen-btn.el span{
	background-color:#FC8328;
}
.gakunen-btn.ju span{
	background-color:#2A9BE6;
}
.gakunen-btn.hi span{
	background-color:#009944;
}

@CHARSET "UTF-8";

/* =========================================
   入塾の流れ 基本スタイル（スマホ・共通）
/* =========================================

/* --- メインボックス --- */
.flw-box01{
	width:100%;
	padding:2.0em 0 1.0em;
	margin:4.0em 0 0;
}
.flw-box01 div{
	width:90%;
	margin:0 auto;
	text-align:center;
}
.flw-box01 p{
	color:#202020;
	text-align:center;
	font-size:1.5em;
	border-bottom:3px solid #202020;
	line-height:2.5em;
}

/* --- 校舎一覧へのリンク --- */
.flw-box02{
	width:100%;
}
.flw-box02 div{
	width:90%;
	margin:0 auto;
	font-weight:300;
}
.flw-box02 p{
	text-align:center;
	margin:1.5em 0 1.5em 0;
}
.flw-box02 a{
	color:#009944;
	text-decoration:underline;
}

/* --- 資料請求へのリンク --- */
.flw-box03{
	width:100%;
	background-color:#E7F3D1;
}
.flw-box03 div{
	width:90%;
	margin:0 auto;
	padding:2.0em 0;
	font-weight:300;
}
.flw-box03 p{
	width:20.0em;
	margin:1.0em auto 0;
}

/* --- 校舎へお問合せ --- */
.flw-box04{
	width:100%;
	margin:2.5em 0 1.0em;
}
.flw-box04 div{
	width:90%;
	margin:0 auto;
}
.flw-box05{
	padding:2.0em 0 2.0em;
	background-color:#fff;
	box-shadow:0px 0px 5px 0px rgba(136, 136, 136, 0.5);
	border-radius:20px;
}
.flw-ttlno01{
	font-size:1.3em;
	color:#fff;
	background-color:#009944;
	border-radius:0 10px 10px 0;
	padding:0.2em 0.5em 0.2em 1.0em;
	margin:0 1.5em 0 0;
}
.flw-ttl01{
	font-size:1.2em;
}
.flw-txt01{
	padding:1.5em 2.5em 0;
	font-weight:300;
}
.flw-flex01{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	padding:1.0em 2.0em 0;
}
.flw-flex01 div{
	width:100%;
}

/* --- 面談・カウンセリング／体験授業 --- */
.flw-flex02{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	padding:1.0em 2.0em;
	font-weight:300;
}
.flw-flex02 div:nth-child(1){
	order:2;
	width:100%;
}
.flw-flex02 div:nth-child(2){
	order:1;
	width:100%;
	padding:0 1.0em 1.0em 1.0em;
}
.flw-txt02{
	width:95%;
	margin:0 auto;
	padding:0.5em 1.0em;
	background-color:#FFF2F2;
	border-radius:10px;
	color:#FF9797;
}

/* --- 入塾の緑の帯 --- */
.flw-box06{
	width:100%;
	margin:2.5em 0 0;
	background-color:#009944;
}
.flw-box06 div{
	width:90%;
	margin:0 auto;
	padding:2.5em 0;
	text-align:center;
	color:#fff;
}
.flw-txt03{
	text-align:center;
	margin:1.5em 0 4.0em;
}

/* ====================================== */
/* サンクスページ（.thanks-box）関連スタイル */
/* ====================================== */
.thanks-box{
	width:95%;
	margin:2.0em auto;
	font-weight:300;
}
.thanks-txt-box{
	margin:0 auto;
	background-color:#FFF;
	border:3px solid #374034;
	padding:1.5em 1.0em 0.5em; /* SP padding */
}
.thanks-txt-box h3{
	color:#009944;
	font-size:1.3em;
	margin-bottom:1.2em;
	font-weight:bold;
}
.thanks-txt-box p{
	margin-bottom:1.2em;
}

/* ====================================== */
/* プライバシーポリシー（.privacybox01）関連スタイル */
/* ====================================== */
.privacybox01{
	width:95%;
	margin:2.0em auto 0; /* margin-topが.thanks-boxと重複しているため共通化可能だが、今回はそのまま残す */
	background-color:#FFF;
	border:3px solid #374034;
	padding:2.0em 2.0em; /* SP/PC共通のpadding開始 */
}
.privacybox01 h3{
	color:#009944;
	font-size:1.2em;
}
.privacybox01 p{
	margin-bottom:1.2em;
}

/* ====================================== */
/* 会社情報（.company_sec01）関連スタイル */
/* ====================================== */
.company_sec01{
	width:90%; /* 他のブロックと幅が異なる */
	margin:0 auto;
	margin-top:2.0em;
}
.index_h2{
	width:100%;
	margin:0;
	background-color:#FEFFCF;
	border:3px solid #374034;
	text-align:center;
	padding:1.0em 0;
	font-size:1.0em;
	border-radius:20px;
}
.company_tbl01{
	width:100%;
	border-collapse:separate;
	border-spacing:0 0.3em;
}
.company_tbl01 th{
	padding:1.0em 0;
	width:30%;
	text-align:center;
	vertical-align:middle;
	background-color:#E1FFCF;
	border:2px solid #374034;
	border-right:none;
}
.company_tbl01 td{
	padding:1.0em 0;
	padding-left:1.5em;
	width:70%;
	text-align:left;
	vertical-align:middle;
	background-color:#FFF;
	border:2px solid #374034;
	font-size:0.7em;
}

/* ========================================================================= */
/* 校舎紹介ページの全般・基本設定 */
/* ========================================================================= */

/* スクロール対象アンカーの調整 (約24個のアンカーID) */
#acc01, #acc02, #acc03, #acc04, #acc05, #acc06, #acc07, #acc08, #acc09, #acc10, #acc11, #acc12, #acc13, #acc14, #acc15, #acc16, #acc17, #acc18, #acc19, #acc20, #acc21, #acc22, #acc23, #acc24{
	display:block;
	position:relative;
	top:-120px;
	visibility:hidden;
}

/* 講習会・申し込みボタンリスト */
.axs-flex01{
	display:flex;
	flex-wrap:wrap;
	background-color:rgba(255,151,151,0.32);
	border-radius:20px;
	padding:1.0em 0.5em;
	font-size:0.9em;
}

.axs-flex01 li{
	position:relative;
	width:50%; /* SP:2列表示 */
	padding:0.5em;
}

.axs-flex01 li a{
	width:100%;
	display:block;
	padding:0.7em 0;
	border:2px solid #FF9797;
	border-radius:15px;
	background-color:#fff;
}

/* 講習会ボタン右下の三角マーク */
.triangle{
	display:block;
	height:0;
	width:0;
	position:absolute;
	bottom:16px;
	right:16px;
	border-left:15px solid transparent;
	border-bottom:15px solid #FF9797;
}

/* ========================================================================= */
/* 校舎紹介ページのアクセスセクション（地図とリストのコンテナ） */
/* ========================================================================= */

.access_sec01{
	width:90%;
	margin:3.0em auto;
}

.accesslist{
	position:relative;
	text-align:center;
	margin:2.0em 0;
}

/* 地図（SP用デフォルト） */
.accesslist iframe{
	position:initial; /* SPでは通常の配置 */
	width:90%;
	height:250px;
}

/* ========================================================================= */
/* 校舎名・学年情報（SP / PC共通設定含む） */
/* ========================================================================= */

.col_kousyamei{
	width:100%; /* SP:全幅 */
	border-bottom:3px solid #FF9797;
	color:#374034;
	margin:0 auto;
}

.col_kousyamei span{
	font-size:1.0em;
	position:relative;
	padding-left:2.1em;
}

/* 校舎名アイコン */
.col_kousyamei span::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	width:1.7em;
	height:1.7em;
	transform:translateY(-50%);
	background-size:contain;
	vertical-align:middle;
	background-image:url(/images/icon/access_ico01.webp?v5);
}

.col_gakunen{
	height:2.0em;
	width:100%; /* SP:全幅 */
	border-bottom:none;
	text-align:center;
	padding-top:0.5em;
	font-size:1.0em;
}

.gakunen{
	padding:0.3em 0.8em;
	color:#fff;
	border-radius:15px;
}

/* 学年別カラーコード */
.gakunen.elem{
	background-color:#FC8328;
}
.gakunen.junior{
	background-color:#2A9BE6;
}
.gakunen.high{
	background-color:#019F5E;
}
.gakunen.kousotu{
	background-color:#1134A9;
}

/* 対象外の学年用 */
.disabled{opacity:0.2;}

/* ========================================================================= */
/* 校舎詳細（情報、画像、地図） */
/* ========================================================================= */

.kousya_detail{
	width:65%;
	padding:0.5em 0.2em;
	color:#374034;
	line-height:1.8em;
}

/* 校舎詳細内の背景色付きテキスト */
.kousya_detail div, .kousya_detail span{
	color:#fff;
	background-color:#FF9797;
	font-size:0.9em;
	line-height:1.3em;
	display:inline-block;
}

.kousya_detail div{
	padding:0.2em 1.1em;
}

.kousya_detail span{
	border-radius:40px;
	padding:0.2em 1.1em;
	text-align:right;
}

.kousya_img{
	width:35%;
	padding:0.5em 0.2em;
}

.kousya_img img{
	width:100%;
}

.kousya_map{
	width:100%; /* SP:全幅 */
	padding:0.5em 0.2em;
}

.kousya_map iframe{
	width:100%;
	height:250px;
}

/* ========================================================================= */
/* 校舎紹介ページの電話リンク */
/* ========================================================================= */

.tellink{
	margin:1.0em 0;
}

.tellink a{
	display:block;
	width:80%;
	margin:0 auto;
	text-align:center;
	padding:0.8em 0;
	color:#009944;
	border:5px solid #009944;
	border-radius:40px;
	background-color:#fff;
}

.tellink span{
	position:relative;
	padding-left:2.0em;
	font-size:1.5em;
}

/* 電話アイコン */
.tellink span::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	width:1.7em;
	height:1.7em;
	transform:translateY(-50%);
	background-size:contain;
	vertical-align:middle;
	background-image:url(/images/icon/access_ico02.webp);
}

/* ========================================================================= */
/* 校舎紹介ページの開設講座 */
/* ========================================================================= */

.kouza_ttl{
	border-bottom:3px solid #374034;
	color:#374034;
	margin-bottom:5px;
}

.kouza{
	width:31.8%; /* SP:約3分の1の幅 */
	margin:0.2em 0.2em;
	color:#fff;
	text-align:center;
	border-radius:5px;
	font-size:0.8em;
	vertical-align:middle;
	height:4.0em;
	display:flex;
	align-items:center;
	justify-content:center;
}

.kouza a{
	display:flex; /* 親要素のflexプロパティを継承し、中央揃えを維持 */
	width:100%;
	height:100%;
	align-items:center;
	justify-content:center;
}

/* 学年別カラーコード */
.kouza.elem{
	background-color:#FC8328;
}
.kouza.junior{
	background-color:#2A9BE6;
}
.kouza.high{
	background-color:#019F5E;
}
.kouza.kousotu{
	background-color:#1134A9;
}

/* ========================================= */
/* PC用スタイル（900px以上）
/* ========================================= */

/* 769px以上 */
@media only screen and (min-width:769px){
	/* ページタイトル/コンテナ */
	.cttl01-box > div{
		width:95%;
	}
	/* 講座セクション */
	.sbb01 > article > div{
		width:95%;
	}
	.sbb01 > article > div > div:nth-child(1){
		width:40%;
	}
	.sbb01 > article > div > div:nth-child(2){
		width:60%;
	}
	.sbb01 > article > div > div:nth-child(2) > table th{
		width:15%;
	}
	.sbb01 > article > div > div:nth-child(2) > table td{
		font-size:1.0em;
	}
	/* 連絡先 */
	.contact_box{
		margin:0;
	}
	/* 連絡先 (contact_box02) */
	.contact_box02{
		font-size:1.5em;
	}
	.contact_box02 a, .contact_box02 span, .contact_box02 label.disabled-link{
		padding:0.6em 4.0em;
		margin-bottom:30px;
		width:initial;
	}
	contact_box02 span.attention{
		font-size:0.6em;
		margin-bottom:0 !important;
		padding-top:10px;
	}
}

/* 900px以上 */
@media only screen and (min-width:900px){
	/* 講座の説明部分 見出し */
	.sbb01-box{
		width:95%;
	}
	.smkttl01, .smkttl01.elem, .smkttl01.junior, .smkttl01.high{
		font-size:1.3em;
		text-align:left;
		background-color:initial;
		padding:initial;
	}
	.smkttl01{
		border-bottom:8px solid #419361;
	}
	.smkttl01 span{
		padding:10px 40px 0;
		background-color:#419361;
		border-radius:15px 15px 0 0;
		min-width:200px;
		display:inline-block;
		text-align:center;
	}
	.smkttl01.elem{
		border-bottom:8px solid #FC8328;
	}
	.smkttl01.elem span{
		background-color:#FC8328;
	}
	.smkttl01.junior{
		border-bottom:8px solid #2A9BE6;
	}
	.smkttl01.junior span{
		background-color:#2A9BE6;
	}
	.smkttl01.high{
		border-bottom:8px solid #019F5E;
	}
	.smkttl01.high span{
		background-color:#019F5E;
	}
	.smk02ttl03{
		font-size:2.0em;
	}

	/* ボックス・パーツスタイル */
	.features-box02 h3{
		font-size:1.3em;
	}

	/* テーブルスタイル */
	.tbl01{
		width:100%;
		border-spacing:0;
		font-size:initial;
		margin:0 auto 20px;
	}
	.sp{
		display:none;
	}

	/* テーブル内のリンクボタン */
	.detail{
		letter-spacing:0;
	}

	/* ナビゲーション */
	.course_nav ul li, .course_nav2 ul li{
		width:33%;
		padding:0 5px;
	}
	.course_nav2 ul li{
		width:50%;
	}
	.course_nav ul li a, .course_nav2 ul li a{
		font-size:1.1em;
		height:auto;
	}
	.course_nav p{
		text-align:right;
	}
	.nav_txt{
		font-size:0.9em;
	}
	.course_nav ul li a p, .course_nav2 ul li a p{
		position:initial;
		top:initial;
		transform:initial;
	}

	/* アコーディオン */
	.courseaccboxttl{
		width:100%;
		font-size:1.2em;
	}
	.courseaccboxttl br.pc{
		display:none;
	}
	.courseaccboxttl br.sp{
		display:block;
	}

	/* キーポイント */
	.kpt01{
		width:600px;
	}
	.kpt01 p{
		font-size:1.0em;
	}

	/* 達成度・学年ボタン */
	.achv-box01{
		padding:1.0em 0 1.0em;
		margin:0;
	}
	.achv-box01 div{
		width:700px;
	}

	/* 電話番号のテキスト */
	.smk02tel01{
		font-size:1.1em;
	}
	.smk02tel01 span{
		font-size:1.1em;
	}

	/* 過去の的中例 (prediction) */
	.prediction{margin:3.0em auto;width:600px;}
	.prediction p{font:normal normal normal 25px/26px Hiragino Kaku Gothic ProN;font-weight:bold;}
	.prediction .pc{display:block;}
	.prediction .sp{display:none;}

	/* ---下記から「入塾の流れ」--- */
	/* メインボックス */
	.flw-box01{
		padding:0 0 1.0em;
		margin:8.0em 0 0;
	}
	.flw-box01 div{
		width:800px;
	}

	/* 校舎一覧 */
	.flw-box02 div{
		width:700px;
	}

	/* 資料請求 */
	.flw-box03 div{
		width:700px;
	}

	/* 校舎へお問合せ */
	.flw-box04 div{
		width:700px;
	}
	.flw-flex01 div{
		width:50%;
	}

	/* 面談・カウンセリング／体験授業 */
	.flw-flex02 div:nth-child(1){
		width:60%;
		order:1;
	}
	.flw-flex02 div:nth-child(2){
		width:40%;
		order:2;
	}

	/* ---下記から「サンクスページ」--- */
	.thanks-box{
		width:800px;
	}
	.thanks-txt-box{
		padding:2.0em 2.0em 1.0em;
	}
	.thanks-txt-box h3{
		font-size:1.4em;
	}

	/* ---下記から「プライバシーポリシー」--- */
	.privacybox01{
		width:800px;
		padding:2.0em 3.0em;
	}

	/* ---下記から「会社情報」--- */
	.company_sec01{
		width:800px;
	}
	.index_h2{
		font-size:1.3em;
	}

	/* ---下記から「校舎一覧」--- */
	/* 講習会・申し込みボタンリスト */
	.axs-flex01{
		padding:1.0em 2.5em;
	}
	.axs-flex01 li{
		width:33%; /* PC:3列表示 */
	}

	/* アクセスセクション */
	.access_sec01{
		width:800px; /* 固定幅 */
	}
	.accesslist iframe{
		position:absolute; /* 絶対配置に変更 */
		top:15%;
		right:1%;
		width:38%;
		height:62%;
	}

	/* 校舎名・学年情報 */
	.col_kousyamei{
		width:65%;
	}
	.col_kousyamei span{
		font-size:1.2em;
	}
	.col_gakunen{
		width:35%;
		border-bottom:3px solid #FF9797;
		text-align:right;
		padding-top:0;
		font-size:0.8em;
	}

	/* 校舎詳細 */
	.kousya_detail{
		width:41%;
	}
	.kousya_img{
		width:19%;
	}
	.kousya_map{
		width:40%;
	}
	.kousya_map iframe{
		height:100%;
	}

	/* 校舎一覧の開設講座 */
	.kouza{
		width:16%;
	}
}

/* 1000px以上 */
@media only screen and (min-width:1000px){
	/* トップ画像コンテナ */
	.tpimg-box{
		margin:90px auto 0;
		width:1000px;
	}
	/* ページタイトル/コンテナ */
	.cttl01-box{
		margin:8.0em auto 0;
		width:1000px;
	}
	.cttl01-box.first{
		margin-top:110px;
	}
	.cttl01{
		font-size:1.5em;
	}
	/* 講座セクション */
	.sbb01 > article{
		width:1000px;
	}
	/* ナビゲーション */
	.course_nav-box{
		width:1000px;
		margin:4.0em auto 0;
	}
	.course_nav{
		padding-left:9px;
	}
}