@charset "utf-8";
@import url("hamburger_menu.css");

*{box-sizing: border-box;
	margin: 0;
	padding: 0;}
body{margin:0 auto;
	height: 100%;
	width:750px;
	-webkit-text-size-adjust: 100%; 
	font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	/*-----
	overflow-x: hidden;
	----*/
}
/*-----
opentype
truetype
----*/

@font-face {
  font-family: "font_M";
  src:url("../fonts/A-OTF-ShinMGoPro-Medium.otf") format("opentype");
}
@font-face {
  font-family: "font_B";
  src:url("../fonts/A-OTF-ShinMGoPro-Bold.otf") format("opentype");
}
@font-face {
  font-family: "font_T";
  src:url("../fonts/MPLUS1Code-VariableFont_wght.ttf") format("truetype");
}

/*----　初期設定　----*/
a{
	text-decoration:none;
	color: inherit;
	transition:ease-in-out 0.2s;
	font-family: "font_B";
	letter-spacing: 2px;
	white-space: nowrap;
	cursor:pointer;
}
a:hover{
	opacity: 0.8;
}
p{text-align: justify;
	font-size: 26px;
	color:#383838;
	font-family: "font_M";
	letter-spacing: 1px;
}
.haba{
	width: 730px;
	margin: auto;
}
.haba_2{
	width: 690px;
	margin: auto;
}
.haba_65{
	width: 650px;
	margin: auto;
}
.flex{
	display: flex;
	align-items: center;
	justify-content: center;
}
.flex_top{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.flex_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: center;
}
.flex_center_top{
	display: flex;
	align-items:flex-start;
	justify-content: center;
}
.flex_left{
	display: flex;
	align-items:center;
	justify-content: flex-start;
}
.flex_top_left{
	display: flex;
	align-items:flex-start;
	justify-content: flex-start;
}
.flex_right{
	display: flex;
	align-items:center;
	justify-content: flex-end;
}
.flex_between{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.flex_between_top{
	display: flex;
	align-items:flex-start;
	justify-content: space-between;
}
.flex_between_bottom{
	display: flex;
	align-items:flex-end;
	justify-content: space-between;
}
.flex_column{
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;	
}
.flex_column_top{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	align-items: center;	
}
.flex_column_left{
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
}
.tate{
	-ms-writing-mode: tb-rl;
 	writing-mode: vertical-rl;
}
.siro{
	color: #fff;
}

ol li,ul li{
	list-style-position: inside;
}
body{
	
}
.img{
	background-position: center;
	background-size:cover;
	background-repeat: no-repeat;
}
h1{
	font-size: 26px;
	color:#383838;
	font-family: "font_B";
	margin-left: 3px;
	font-weight: normal;
	text-align: center;
}
h2{
	font-size: 35px;
	font-family: "font_B";
	font-weight: normal;
	line-height: 45px;
	color:#383838;
	letter-spacing: -1px;
	padding-left: 10px;
}
.h3_title{
	background-color: #008DFF;
	height: 120px;
}
h3{
	font-size: 63px;
	font-family: "font_B";
	font-weight: normal;
	line-height: 50px;
	color:#fff;
	letter-spacing: -1px;
	text-align: center;
	border-bottom: 5px #fff solid;
	padding-bottom: 15px;
}
.BG_dark_B{
	background-color: #0C367F;
	width: 100%;
}
.BG_yellow{
	background-color: #FFFFC0;
	width: 100%;
}
.BG_pink{
	background-color: #FFCFE1;
	width: 100%;
}
.BG_white{
	background-color: #fff;
	width: 100%;
}
.BG_blue{
	background-color: #ABE7FF;
	width: 100%;
}
/*--------- ヘッダー ---------*/
header{
	background-color: #E1ECF3;
	padding-bottom: 15px;
	position:relative;
}
header .rogo{
	margin-right: 10px;
}
header .gakusei p{
	background-color: #008DFF;
	color: #fff;
	line-height: 30px;
	padding: 2px 12px 7px 12px;
	font-size: 20px;
	margin: 3px;
	border-radius: 7px;		
}
.shadow{
	position: absolute;
	bottom: 0;
	background: rgb(0,0,0);
background: linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(255,255,255,0) 100%);
	width: 100%;
	height: 5px;
	z-index: 10;
	
}
/*-------- スマホのボトムリンク -------*/
.tel_bottom{
	position: fixed;
	bottom: 0;
	border-top: solid #0C367F 5px;
	width:750px;
	height: 190px;
	z-index: 9999;
}
.fixed_tel{
	padding-top: 20px;
	padding-bottom: 10px;
	background-color: #ff547a;
	width: 83%;
	height: 100%;
}
.fixed_line{
	background-color: #00BB00;
}
.fixed_mail{
	background-color: #008DFF;
}
.fixed_mail img{
	margin-top: 18px;
}
.fixed_line,.fixed_mail{
	width: 20%;
	height: 100%;

}
.fixed_line p,.fixed_mail p{
	text-align: center;
	color: #fff;
	line-height: 26px;
	font-size: 18px;
}
.fixed_line p span,.fixed_mail p span{
	font-family: "font_B";
	font-size: 24px;
}
/*-------- トップイメージ -------*/
.index_top_img{
 margin-top: -5px;
}

/*----- 大手の塾で -----*/
.index_top_img .BG_dark_B{
	margin-top: -10px;
	padding: 30px 0;
}
.index_top_img .BG_dark_B p{
	color: #fff;
	text-align: center;
	line-height: 50px;
}
.index_top_img .BG_dark_B .p1{
	font-size: 35px;
	font-family: "font_B";
}
.index_top_img .BG_dark_B .p2 span{
	color: #FFFF00;
}

.index_top_img .BG_dark_B .p3{
	font-size: 35px;
	text-decoration: underline;
}

/*----- 生徒さん一人一人に -----*/
.index_top_img .BG_yellow{
	margin-top: -10px;
	padding: 30px 0;
}
.index_top_img .BG_yellow p{
	text-align: center;
	line-height: 50px;
}
.index_top_img .BG_yellow .p1{
	font-size: 50px;
	line-height: 70px;
	font-family: "font_B";
	color: #FF528E;
}
.index_top_img .BG_yellow .p2{
	width: 650px;
	text-align: justify;
	margin: auto;
	line-height: 40px;
	margin-top: 30px;
	margin-bottom: 10px;
}
.index_top_img .BG_yellow .p3{
	font-size: 22px;
	text-decoration: underline;
	line-height: 35px;
	color: #0A3480;
}
.index_top_img .BG_yellow .p3 span{
	color: #E15A24;
	text-decoration: underline;
}
.index_top_img .BG_yellow .flex_column{
	margin: 10px;
}

/*-------- 料金について --------*/
.top_price .kyouka{
	background-color: #D2E9FF;
	padding-right: 30px;
	border-radius: 20px;
	margin-bottom: 40px;
}

.top_price .kyouka .img{
	width: 233px;
	min-width: 233px;
	height: 224px;
	border-radius: 20px 0 0 20px;
}
.top_price .kyouka .img1{
	background-image: url("../images/top_gakusei1.png")
}
.top_price .kyouka .img2{
	background-image: url("../images/top_gakusei2.png")
}
.top_price .kyouka .img3{
	background-image: url("../images/top_gakusei3.png")
}
.top_price .kyouka .text{
	width: 100%;
	margin-left: 30px;
}
.top_price #kyouka_koukou .text{
	margin-top: -15px;
}
.top_price .kyouka .p1{
	color: #0C367F;
	font-family: "font_B";
	font-size: 45px;
	white-space:nowrap;	
}
.top_price .kyouka .p2{
	background-color: #0C367F;
	color: #fff;
	width:100%;
	text-align: center;
	line-height: 30px;
	padding: 2px 0 8px 0;
	margin:10px 10px 0 20px; 
}
.top_price .kyouka .p3{
	font-size: 20px;
	line-height: 28px;
}

/*-------- アルテの強み --------*/
.top_tuyomi p{
	text-align: center;
	line-height: 50px;
}
.top_tuyomi .p1{
	font-size: 60px;
	line-height: 70px;
	font-family: "font_B";
	color: #FF528E;
	text-align: center;
}
.top_tuyomi .p2{
	margin: auto;
	line-height: 40px;
	margin-top: 30px;
	margin-bottom: 10px;
}
.top_tuyomi .button{
	font-size: 23px;
	line-height: 35px;
	background-color: #0A3480;
	color: #fff;
	padding: 5px 60px 13px 60px;
	border-radius: 40px;
}
.top_tuyomi .BG_pink{
	padding: 50px 0 80px 0;
}
.top_tuyomi .BG_pink img{
	padding: 0;
}
.top_tuyomi .BG_pink a{
	box-shadow: 0px 0px 15px 3px rgba(255, 115, 213, 0.8);
	margin: 30px 0;
	line-height: 0;
}

/*-------- お問合わせ --------*/
.contact{
	background-color: #E1ECF3;
}
.contact .otoi_title{
	color: #fff;
	background-color: #0C367F;
	font-family: "font_B";
	text-align: center;
	padding: 5px 0 10px 0;
	font-size: 35px;
	letter-spacing: 5px;
}
.contact .setumei{
	text-align: center;
}
.contact .setumei_2{
	font-size: 22px;
	margin-top: -20px;
	margin-bottom: 20px;
	color: #5E5E5E;
}
form{
	width: 600px;
	margin: auto;
}
.contact_text p,select{
	letter-spacing: 2px;
	text-align: center;
	font-size: 26px;
	color:#383838;
	font-family: "font_B";
}
.contact_text .hissu{
	padding: 1px 15px 5px 15px;
	background-color: #ff7ba6;
	color: #fff;
	font-size: 17px;
	border-radius: 5px;
	line-height: 23px;
	margin-bottom: -6px;
	margin-left: 10px;
}
.kakunin_text{
	letter-spacing: 2px;
	text-align: center;
	font-size: 26px;
	color:#383838;
	font-family: "font_M";
	margin-bottom: 20px;
	border: #808080 1px solid;
	width: 550px;
	border-radius: 10px;
	padding:0 10px 5px 10px;
	min-height: 60px;
	background-color:#FFFFD4;
}
.otoi_text{
	text-align: justify;
	font-size: 24px;
	font-family: "font_M";
}
.narabi{
	display: flex;
 	flex-direction: column;
	align-items: flex-start;
	padding: 0 60px 0 0;
}
.narabi div{
	padding-bottom: 5px;
}
.narabi_waku{
	display: flex;
	align-items:flex-start;	
}
.form_text{
	font-size: 22px;
}
select{
  position: relative;
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.container {
    position: relative;
    width: 100%;
}
.container:after {
    content: "";
    position: absolute;
    right: 30px;
    top: 32px;
    width: 15px;
    height: 15px;
    border-top: 3px solid #808080;
    border-left: 3px solid #808080;
    pointer-events: none;
    transform: translateY(-50%) rotate(
-135deg);
}
input[type=text],input[type=email],
input[type=tel],select,textarea{
	width: 100%;
	height: 70px;
	font-size: 22px;
	padding: 10px;
	background-color:#FFFFD4;
	border-radius: 10px;
	border: 2px solid #ccc;
	margin-bottom: 15px;
	font-family: "font_M";
	
}
textarea{
	height: 400px;
	resize: none;
	background-color:#FFFFD4;
}

/*-------ボタンデザイン-------*/
.kaku_flex{	
	width: 600px;
	margin: auto;
}
input[name=kakunin],input[name=modoru],input[name=sousin]{
	cursor: pointer;
	padding: 10px 0 13px 0;
	width: 100%;
	margin-top: 50px;
	font-size: 23px;
	color: #fff;
	background:#0C367F;
	border:#FFFFFF solid 3px;
	border-radius: 15px;
	letter-spacing: 2px;
	font-family: "font_M";
}
input[name=kakunin]:hover,input[name=modoru]:hover,
input[name=sousin]:hover{
	background:#fff ;
	border:#0C367F solid 3px;
	color: #0C367F;
}
input[name=modoru]{
	background: #99d800;
}
input[name=modoru]:hover{
	border:#99d800 solid 3px;
	color: #99d800;
}

/*----エラーリスト-------*/
.error_list{
	width: 550px;
	margin: 0 auto 30px auto;
	padding: 10px 30px;
	color: #ff2e5a;
	font-size: 20px;
	text-align: left;
	border: 1px solid #ff2e5a;
	border-radius: 5px;
	background-color: #fff;
}
.error_list li{
	margin-left: 20px;
}

/*----完了画面ここから------*/
.arigatou{
	padding: 40px;
	border-radius: 10px;
	margin: auto;
}
.arigatou h2{
	text-align: center;
	font-size: 40px;
	font-family: "font_B";
	font-weight: normal;
}
.arigatou p{
	font-size: 24px;
	margin-top: 30px;
	line-height: 40px;
}
/*---スクロールボックス---*/
.scroll_box{
	width: 100%;
	height: 200px;
	border: solid 1px;
	overflow: auto;
	background-color: #fff;
	padding: 30px 20px;
}
.scroll_box p{
	font-size: 18px;
	text-align: justify;
	margin-bottom: 20px;
}
.scroll_box p span{
	font-size: 22px;
	text-align: justify;
}
.scroll_box hr{
	margin-top: -20px;
	margin-bottom: 10px;
	border-right: none;
	border-left: none;
	border-bottom: none;
}

/*---フッター---*/
footer p{
	font-size: 20px;
	letter-spacing: 1px;
	text-align: center;
	font-family: "font_B";
}

footer .gakusei p{
	background-color: #008DFF;
	color: #fff;
	line-height: 30px;
	padding: 2px 12px 7px 12px;
	font-size: 20px;
	margin: 3px 5px;
	border-radius: 7px;		
}
footer .access p{
	font-size: 26px;
}
footer .access a{
	margin: 10px;
	padding: 5px;
}
footer .BG_gray{
	padding: 10px 0;
	background-color: #A3A3A3;
	margin: 30px 0;
}

/*---ナビ---*/
.footer_nav{
	width: 650px;
}
.footer_nav div{
	display: flex;
	flex-flow: column;
}
.footer_nav a{
	letter-spacing: 1px;
	font-size: 23px;
	color:#383838;
	font-family: "font_M";
	text-align: left;
}
.footer_nav a span{
	color: #0C367F;
	font-family: "font_B";	
}

/*---コピーライト---*/
.Copywriter{
	font-size: 15px;
	text-align: center;
	margin-top: 20px;
	color: #fff;
	background-color: #0C367F;
	padding-bottom: 200px;
	padding-top: 5px;
}




















