/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

body {
line-height: 1;
}

ol, ul, li {
list-style: none;
}

b,strong {
font-weight: bold;
}

a:focus {
outline: none;
}

blockquote, q {
quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
content: '';
content: none;
}

table {
border-collapse: collapse;
border-spacing: 0;
}

body {
-webkit-text-size-adjust: none;
}



/* 全体の設定
---------------------------------------------------------------------------*/
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

html,body {
background: #fff;
}

html {
overflow-y: scroll;
}

body, input, select, textarea {
color: #000;
font-size: 16px;
font-family: 'Noto Sans JP', sans-serif;
line-height: 1.6;
}

a {
color: #000;
text-decoration: none;
}

a:hover {
color: #999;
}

a img:hover {
filter: alpha(opacity=70);
opacity: 0.70;
}

em, i {
font-style: italic;
}

h1, h2, h3, h4, h5, h6 {
color: #000;
font-weight: 400;
margin: 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
color: inherit;
border: 0;
}

.clear {
clear: both;
}

.cf:after {
content: "."; 
display: block;
height: 0; 
clear: both; 
visibility: hidden;
font-size:0.1em;
line-height:0;
}

.pc {
display: block;
}

.sp {
display: none;
}

a[href^="tel:"] {pointer-events: none;}



/* レイアウト PC
---------------------------------------------------------------------------*/
#wrapper {
width: 100%;
margin: 0 auto;
}

.cont {
width: 980px;
margin: 0 auto;
}



/* ヘッダー PC
---------------------------------------------------------------------------*/
header {
width: 100%;
height: 100vh;
background: url(../img/top_visual01.jpg) no-repeat;
background-position: 50% 50%;
background-size: cover;
}

header .h_box {
background: #fff;
width: 100%;
height: 105px
margin: 0 auto;
}

header .inner {
width: 1100px;
margin: 0 auto;
}

.logo {
display:table-cell;
height: 80px;
padding: 5px 0 0 0;
font-size: 2.4em;
font-weight: bold;
vertical-align: middle;
}

.logo span {
padding: 0 0.2em 0 0;
font-size: 0.75em;
vertical-align: middle;
}

.logo img {
width: auto;
height: 70px;
margin: 5px 10px 10px 0;
vertical-align: middle;
}

header .cont {
position: relative;
width: 1100px;
height: calc(100vh - 105px);
margin: 0 auto;
}

header h1 {
padding: 30px 0 15px;
color: #fff;
font-size: 3.3em;
font-weight: bold;
text-shadow: 0 0 8px #2854aa;
font-feature-settings: "palt";
line-height: 1;
}

header h1 span {
font-size: 1.8em;
}

header .block {
position: absolute;
bottom: 80px;
left: 0;
width: 480px;
margin: 0;
padding: 0;
}



/* フッター PC
---------------------------------------------------------------------------*/
footer {
width: 100%;
margin: 50px auto 0;
padding: 0;
}
 
footer .cont {
width: 980px;
margin: 0 auto;
padding: 80px 0 20px;
}

footer .copyright {
width: 100%;
padding: 30px 0 20px;
font-size: 14px;
text-align: center;
line-height: 1;
}

footer .copyright br {
display: none;
}

#pagetop {
position: fixed;
bottom: 40px;
right: 30px;
z-index: 100;
}

#pagetop img {
-moz-box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
-webkit-box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
}

#pagetop:hover {
filter: alpha(opacity=80);
opacity: 0.8;
}



/* コンテンツ PC
---------------------------------------------------------------------------*/
section {
padding: 50px 0;
text-align: left;
}

section.nopad {
padding: 0 0 50px 0;
}

section h2 {
margin: 0 0 20px 0;
font-size: 2.8rem;
font-weight: bold;
line-height: 1.33;
font-feature-settings: "palt";
}

section h2.tit01 {
position: relative;
background: #fff100;
padding: 0.6rem 1.6rem 1.2rem;
font-size: 2.1rem;
font-weight: bold;
text-align: left;
}

section h2.tit01:before {
position: absolute;
top: -12px;
left: -12px;
width: calc(100% - 4px);
height: calc(100% - 4px);
content: '';
border: 4px solid #000;
}

section h2.tit02 {
position: relative;
margin: 0 0 20px 0;
padding: 1rem 0rem 0.2rem;
font-size: 2.1rem;
font-weight: bold;
border-bottom: 6px solid rgba(240,176,200,1);
}

section h2.tit02:before {
position: absolute;
bottom: -6px;
left: 0;
background: rgba(232,125,170,1);
width: 20%;
height: 6px;
content: '';
}

section h3.tit01 {
margin: 0 0 10px 0;
padding: 10px 15px 7px;
color: rgba(232,125,170,1);
font-size: 1.25rem;
font-weight: bold;
text-align: center;
line-height: 1.33;
border-bottom: 3px dotted rgba(232,125,170,0.5);
}

section h3.tit02 {
background: rgba(232,125,170,1);
margin: 0 0 10px 0;
padding: 8px;
color: #fff;
font-size: 1.8rem;
font-weight: bold;
text-align: left;
line-height: 1.33;
border-left: 15px solid #f0b0c8;
}

section h4.bod {
margin: 0 0 15px 0;
padding: 0 0 0 8px;
font-size: 1.5rem;
font-weight: bold;
line-height: 1.8;
text-align: left;
border-left: 10px solid rgba(232,125,170,1);
}

section p {
font-size: 16px;
margin: 0 0 30px 0;
padding: 0 4px;
line-height: 1.8;
text-align: left;
}

section p.cap {
font-size: 14px;
}

.block1 {
width : 50%;
margin: 0 auto;
}

.block1 li img {
width : 100%;
height: auto;
}

.block2 {
margin: 20px auto 0;
font-size: 0;
}

.block2 li {
display: inline-block;
width : 48%;
margin: 0 1%;
padding: 10px;
font-size: 15px;
vertical-align: top;
}

.block2 li img {
width : 100%;
height: auto;
}

section .block2 li p {
padding: 0 10px;
text-align: left;
font-size: 14px;
}

.block3 {
margin: 20px auto 0;
font-size: 0;
}

.block3 li {
display: inline-block;
width : 32%;
min-height: 240px;
margin: 0 0 20px 0;
padding: 0;
font-size: 15px;
text-align: center;
vertical-align: top;
}

.block3 li:nth-child(3n-1){
margin: 0 2%;
}

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

.block3 li img {
width : 100%;
height: auto;
}

section .block3 li p {
padding: 0 10px;
text-align: left;
font-size: 14px;
}

.support {
margin: 0 0 20px 0;
}

.support li {
font-size: 1.1rem;
font-weight: bold;
border-bottom: 2px dotted #000;
padding-top: 3px;
padding-bottom: 3px;
padding-left:1.7em;
text-indent:-1.7em;
}

.support li span {
padding: 0 0.2em 0 0;
color: rgba(232,125,170,1);
font-size: 1.75rem;
}

#follow h3 {
padding: 0 0 10px 0;
font-size: 1.5rem;
font-weight: bold;
font-feature-settings: "palt";
}

#follow h3 span {
padding: 0 0.3em 0 0;
color: rgba(232,125,170,1);
font-size: 2rem;
font-weight: bold;
}

.follow_box {
margin: 0 auto 30px;
}

.photo_block {
float: left;
width: 40%;
}

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

.text_block {
float: left;
width:60%;
padding: 0 0 0 2em;
}

#present {
background: rgba(225,189,52,0.15);
padding: 40px 10px;
text-align: center;
}

.present_block {
background: #2555aa;
padding: 8px 10px;
color: #fff;
font-size: 2rem;
font-weight: bold;
text-align: center;
-moz-box-shadow: 0 5px 8px rgba(0,0,0,0.3);
-webkit-box-shadow: 0 5px 8px rgba(0,0,0,0.3);
box-shadow: 0 5px 8px rgba(0,0,0,0.3);
}

h3.present_tit {
padding: 12px 0;
font-size: 1.8rem;
color: #fff;
font-weight: bold;
border-top: 3px dashed rgba(255,255,255,0.66);
border-bottom: 3px dashed rgba(255,255,255,0.66);
}

h3.present_tit br {
display: none;
}

h3.present_tit02 {
padding: 0 0 30px 0;
font-size: 2rem;
color: #2555aa;
font-weight: bold;
line-height: 1.6;
}

h3.present_tit02 span {
padding: 0 6px;
font-size: 2.8rem;
border-bottom: 3px solid #2555aa;
line-height: 1.2;
}

.reason {
margin: 0 0 20px 0;
}

.reason li {
padding: 5px 4px;
font-size: 1.5rem;
font-weight: bold;
border-bottom: 2px dotted #000;
}

.reason li span {
padding: 0 10px 0 0;
color: rgba(232,125,170,1);
font-size: 1.75rem;
}

section#voice h3{
background: #fff;
margin: 0 0 30px 0;
font-size: 2rem;
font-weight: bold;
text-align: center;
line-height: 1.33;
}

section#voice h3 span {
display: block;
width:14em;
margin: 0 auto 10px;
padding: 10px 0 10px 0;
font-size: 1.33rem;
border-top: 3px dotted #000;
border-bottom: 3px dotted #000;
}

section#qaa h3 {
display:table-cell;
width: 100%;
font-size: 1.33rem;
font-weight: bold;
text-align: left;
vertical-align: middle;
}

section#qaa h3.parent01 {
background: url(../img/parent01.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.parent02 {
background: url(../img/parent02.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.student01 {
background: url(../img/_student01.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.student02 {
background: url(../img/_student02.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.student03 {
background: url(../img/_student03.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.student04 {
background: url(../img/_student04.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

section#qaa h3.student05 {
background: url(../img/_student05.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
height: 120px;
}

.teacher01 { 
background: url(../img/teacher01.jpg) no-repeat;
background-position: 10px 0;
background-size: 120px 120px;
padding: 20px 0 20px 140px;
min-height: 120px;
border-bottom: 3px dotted #000;
}

.teacher02 { 
background: url(../img/teacher02.jpg) no-repeat;
background-position: 10px 0px;
background-size: 120px 120px;
padding: 10px 0 20px 140px;
min-height: 120px;
border-bottom: 3px dotted #000;
}

.teacher03 { 
background: url(../img/teacher03.jpg) no-repeat;
background-position: 10px 0px;
background-size: 120px 120px;
padding: 10px 0 20px 140px;
min-height: 120px;
border-bottom: 3px dotted #000;
}

.tel {
font-size: 1.6rem;
font-weight: bold;
line-height: 1.2;
}

.btn01 a {
display: block;
background: rgba(0,26,62,1);
width: 60%;
margin: 0 auto;
padding: 0.8em;
color: #fff;
font-size: 1.6rem;
font-weight: bold;
text-align: center;
}

.btn01 a:hover {
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
background: rgba(0,26,62,0.8);
}

.btn02 a {
display: block;
background: rgba(232,125,170,0.96);
width: 84%;
margin: 10px 0 0 0;
padding: 0.5em;
color: #fff;
font-size: 1.66rem;
font-weight: bold;
line-height: 1.33;
text-align: center;
}

.btn02 a:hover {
background: rgba(232,125,170,0.8);
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
}

.tbl01 {
background: #fff;
width: 100%;
margin: 40px auto;
font-size: 15px;
line-height: 1.5;
}

.tbl01 th {
background: rgba(232,125,170,0.66);
width: 25%;
padding: 18px 28px;
color: #fff;
font-weight: bold;
text-align: center;
vertical-align: middle;
border-bottom: 1px dotted rgba(255,255,255,0.66);
}

.tbl01 td {
width: 75%;
padding: 18px 28px;
text-align: left;
vertical-align: middle;
border-bottom: 1px dotted rgba(0,26,62,0.33);
}

.tbl01 td:nth-of-type(1) {
border-top: 1px dotted rgba(0,26,62,0.33);
}



/* フォーム PC
---------------------------------------------------------------------------*/
.form_inner {
width: 980px;
margin: 0 auto;
padding: 60px 0 20px;
text-align: center;
}

input, button, textarea, select {
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}

input,
textarea,
select {
background: #fff;
margin: 0;
padding: 8px 10px;
width: 100%;
font-size: 15px;
font-family: inherit;
-moz-border-radius: 2px; 
-webkit-border-radius: 2px;
border-radius: 2px;
border: 1px solid #ddd;
-webkit-box-sizing:border-box;
box-sizing: border-box;
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
opacity: 0.7;
}

input::-webkit-input-placeholder {
color: #999;
font-weight: normal;
}

input:-ms-input-placeholder {
color: #999;
font-weight: normal;
}

input::-moz-placeholder {
color: #999;
font-weight: normal;
}

.req {
color: rgb(255, 255, 255);
font-size: 66%;
background: rgb(255, 0, 0);
padding: 2px 4px;
vertical-align: 2px;
}

button[type="submit"] {
display: block;
background: rgba(232,125,170,1);
width: 100%;
max-width: 480px;
height: auto;
margin: 10px auto 30px;
padding: 18px 0;
color: #fff;
font-size: 18px;
font-weight: bold;
border: none;
-moz-border-radius: 2px; 
-webkit-border-radius: 2px;
border-radius: 2px;
-webkit-appearance: none;
}

button[type="submit"]:hover {
filter: alpha(opacity=80);
-ms-filter: "alpha(opacity=80)";
opacity: 0.8;
}

.btn-submit li {
display:inline-block;
width: 48%;
}

.btn-submit li input[type="button"], .btn-submit li input[type="submit"]{
background: rgba(11,56,120,1);
width: 90%;
height: auto;
margin: 10px auto 30px;
padding: 15px 0;
color: #fff;
font-size: 15px;
font-weight: bold;
border: none;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
-webkit-appearance: none;
}

.error_messe {
color: #ff0000;
text-align: center;
}



/*　その他 PC
---------------------------------------------------------------------------*/
img.float_l {
float: left;
padding: 0 20px 0 0;
vertical-align: top;
}

img.float_r {
float: right;
margin: 0 0 30px 20px;
vertical-align: top;
}

img.img_center {
display: block;
margin: 0 auto 20px;
text-align: center;
}

img.circle {
display: block;
margin: 45px auto 0;
border-radius: 50%;
width:  280px;
height: 280px;
}

.center {
text-align: center;
}

.svg-inline--fa {
margin: 0 0.5em;
}

.fb {
font-size: 133%;
font-weight: bold;
}

.red_txt {
color: #ff0000;
font-weight: bold;
}

.gray_txt {
color: #999;
}

.pic {
background: #fff;
font-size: 75%;
padding: 2px 4px;
vertical-align: 2px;
border: 1px solid #000;
}

.mgb20 {
margin-bottom: 20px;
}

.mgb30 {
margin-bottom: 30px;
}

.mgb30b {
margin-bottom: 30px;
}

.mgb40 {
margin-bottom: 40px;
}

.mgb60 {
margin-bottom: 60px;
}




/*ここからスマホ用環境の設定
---------------------------------------------------------------------------*/

@media screen and (max-width: 768px) {

* {-webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box
}

body, input, select, textarea {
font-size: 15px;
line-height: 1.6;
}

.pc {
display: none !important;
}

.sp {
display: block !important;
}

a[href^="tel:"] {pointer-events: auto;}



/* レイアウト SP
---------------------------------------------------------------------------*/
#wrapper {
width: 100%;
margin: 0 auto;
}

.cont {
width: 90%;
margin: 0 5%;
}



/* ヘッダー SP
---------------------------------------------------------------------------*/
header {
width: 100%;
height: 100vh;
background: url(../img/top_visual01.jpg) no-repeat;
background-position: 50% 100%;
background-size: cover;
}

header .h_box {
background: #fff;
width: 100%;
height: 70px
margin: 0 auto;
}

header .h_box .inner {
width: 94%;
margin: 0 3%;
}

.logo {
display:table-cell;
height: 60px;
padding: 3px 0 0 0;
font-size: 1.8em;
font-weight: bold;
vertical-align: middle;
}

.logo span {
padding: 0 0.1em 0 0;
font-size: 0.7em;
vertical-align: middle;
}

.logo img {
width: auto;
height: 60px;
margin: 5px 10px 10px 0;
vertical-align: middle;
}

header .cont {
width: 90%;
margin: 0 5%;
}

header h1 {
padding: 32px 0 12px;
color: #fff;
font-size: 2em;
font-weight: bold;
text-shadow: 0 0 8px #2854aa;
font-feature-settings: "palt";
line-height: 1.1;
}

header h1 span {
font-size: 1.5em;
}

header .block {
position: absolute;
bottom: 180px;
left: 0;
width: 100%;
margin: 0;
padding: 0;
}



/* フッター SP
---------------------------------------------------------------------------*/
footer {
width: 100%;
margin: 0 auto;
padding: 0 0 60px 0;
}
 
footer .cont {
width: 90%;
margin: 0 5%;
padding: 40px 0 20px;
}

footer .copyright {
width: 100%;
padding: 30px 0 20px;
font-size: 14px;
text-align: left;
line-height: 1;
}

footer .copyright br {
display: none;
}

#pagetop {
position: fixed;
bottom: 70px;
right: 2.5%;
z-index: 100;
}

#pagetop img {
width: 50px;
height: auto;
-moz-box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
-webkit-box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
box-shadow: 0px 0px 5px rgba(255,255,255,0.8);
}

#pagetop:hover {
filter: alpha(opacity=80);
opacity: 0.8;
}

#fixContact {
position:fixed;
bottom:0;
left: 0;
right: 0;
background: #2555aa;
width: 100%;
height: 70px;
padding: 0;
z-index: 99;
}

#fixContact ul {
text-align:center;
display: table;
margin:0;
padding:0 10px;
}

#fixContact ul li {
width:50%;
margin:0px;
display: table-cell;
vertical-align: middle;
}

#fixContact ul li img {
width:100%;
height: auto;
}

#fixContact {
display: block !important;
}



/* コンテンツ SP
---------------------------------------------------------------------------*/
section {
padding: 30px 0;
text-align: left;
}

section.nopad {
padding: 0 0 30px 0;
}

section h2 {
margin: 0 0 20px 0;
font-size: 2.1rem;
font-weight: bold;
line-height: 1.33;
font-feature-settings: "palt";
}

section h2.tit01 {
position: relative;
background: #fff100;
padding: 0.6rem 1rem 1.2rem;
font-size: 1.5rem;
font-weight: bold;
text-align: left;
}

section h2.tit01:before {
position: absolute;
top: -10px;
left: -10px;
width: calc(100% - 3px);
height: calc(100% - 3px);
content: '';
border: 3px solid #000;
}

section h2.tit02 {
position: relative;
margin: 0 0 20px 0;
padding: 1rem 0rem 0.2rem;
font-size: 1.5rem;
font-weight: bold;
border-bottom: 6px solid rgba(240,176,200,1);
}

section h2.tit02:before {
position: absolute;
bottom: -6px;
left: 0;
background: rgba(232,125,170,1);
width: 20%;
height: 6px;
content: '';
}

section h3.tit01 {
margin: 0 0 10px 0;
padding: 10px 0 7px;
color: rgba(232,125,170,1);
font-size: 1.1rem;
font-weight: bold;
text-align: center;
line-height: 1.33;
border-bottom: 3px dotted rgba(232,125,170,0.5);
}

section h3.tit02 {
background: rgba(232,125,170,1);
margin: 0 0 10px 0;
padding: 8px;
color: #fff;
font-size: 1.2rem;
font-weight: bold;
text-align: left;
line-height: 1.33;
border-left: 10px solid #f0b0c8;
}

section h4.bod {
margin: 0 0 15px 0;
padding: 0 0 0 8px;
font-size: 1.2rem;
font-weight: bold;
line-height: 1.8;
text-align: left;
border-left: 10px solid rgba(232,125,170,1);
}

section p {
font-size: 15px;
margin: 0 0 24px 0;
padding: 0 4px;
line-height: 1.8;
text-align: left;
}

section p.cap {
font-size: 14px;
}

.block1 {
width : 50%;
margin: 0 auto;
}

.block1 li img {
width : 100%;
height: auto;
}

.block2 {
margin: 20px auto 0;
font-size: 0;
}

.block2 li {
display: inline-block;
width : 100%;
margin: 0;
padding: 10px;
font-size: 15px;
vertical-align: top;
}

.block2 li img {
width : 100%;
height: auto;
}

section .block2 li p {
padding: 0 10px;
text-align: left;
font-size: 14px;
}

.block3 {
margin: 20px auto 0;
font-size: 0;
}

.block3 li {
display: inline-block;
width : 100%;
min-height: initial;
margin: 0 0 20px 0;
padding: 0;
font-size: 15px;
text-align: center;
vertical-align: top;
}

.block3 li:nth-child(3n-1){
margin: 0 0 20px 0;
}

.block3 li:nth-child(3n) {
margin: 0 0 20px 0;
}

.block3 li img {
width : 100%;
height: auto;
}

section .block3 li p {
padding: 0 10px;
text-align: left;
font-size: 14px;
}

.support {
margin: 0 0 20px 0;
}

.support li {
font-size: 1.1rem;
font-weight: bold;
border-bottom: 2px dotted #000;
padding-top: 3px;
padding-bottom: 3px;
padding-left:1.7em;
text-indent:-1.7em;
}

.support li span {
padding: 0 0.2em 0 0;
color: rgba(232,125,170,1);
font-size: 1.75rem;
}

#follow h3 {
padding: 0 0 10px 0;
font-size: 1.2rem;
font-weight: bold;
font-feature-settings: "palt";
}

#follow h3 span {
padding: 0 0.1.5em 0 0;
color: rgba(232,125,170,1);
font-size: 2rem;
font-weight: bold;
}

.follow_box {
margin: 0 auto 20px;
}

.photo_block {
float: none;
width: 100%;
margin: 0 0 20px 0;
}

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

.text_block {
float: none;
width: 100%;
padding: 0;
}

#present {
background: rgba(225,189,52,0.15);
padding: 25px 10px;
text-align: center;
}

.present_block {
background: #2555aa;
padding: 8px 10px;
color: #fff;
font-size: 1.2rem;
font-weight: bold;
text-align: center;
-moz-box-shadow: 0 5px 8px rgba(0,0,0,0.3);
-webkit-box-shadow: 0 5px 8px rgba(0,0,0,0.3);
box-shadow: 0 5px 8px rgba(0,0,0,0.3);
}

h3.present_tit {
padding: 12px 0;
font-size: 1.2rem;
color: #fff;
font-weight: bold;
border-top: 3px dashed rgba(255,255,255,0.66);
border-bottom: 3px dashed rgba(255,255,255,0.66);
}

h3.present_tit br {
display: block;
}

h3.present_tit02 {
padding: 0 0 30px 0;
font-size: 1.4rem;
color: #2555aa;
font-weight: bold;
line-height: 1.4;
}

h3.present_tit02 span {
padding: 0 6px;
font-size: 1.8rem;
border-bottom: 3px solid #2555aa;
line-height: 1.2;
}

.reason {
margin: 0 0 20px 0;
}

.reason li {
padding: 5px 4px;
font-size: 1.1rem;
font-weight: bold;
border-bottom: 2px dotted #000;
}

.reason li span {
padding: 0 7px 0 0;
color: rgba(232,125,170,1);
font-size: 1.25rem;
}

section#voice h3{
background: #fff;
margin: 0 0 24px 0;
font-size: 1.33rem;
font-weight: bold;
text-align: center;
line-height: 1.33;
}

section#voice h3 span {
display: block;
width:14em;
margin: 0 auto 10px;
padding: 8px 0 8px 0;
font-size: 1.1rem;
border-top: 3px dotted #000;
border-bottom: 3px dotted #000;
}

section#qaa h3 {
display:table-cell;
width: 100%;
font-size: 1rem;
font-weight: bold;
text-align: left;
vertical-align: middle;
}

section#qaa h3.parent01 {
background: url(../img/parent01.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.parent02 {
background: url(../img/parent02.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.student01 {
background: url(../img/_student01.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.student02 {
background: url(../img/_student02.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.student03 {
background: url(../img/_student03.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.student04 {
background: url(../img/_student04.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

section#qaa h3.student05 {
background: url(../img/_student05.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
height: 100px;
}

.teacher01 { 
background: url(../img/teacher01.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
min-height: initial;
border-bottom: 3px dotted #000;
}

.teacher02 { 
background: url(../img/teacher02.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
min-height: initial;
border-bottom: 3px dotted #000;
}

.teacher03 { 
background: url(../img/teacher03.jpg) no-repeat;
background-position: 0 0;
background-size: 90px 90px;
padding: 15px 0 15px 90px;
min-height: initial;
border-bottom: 3px dotted #000;
}

.tel {
font-size: 1.4rem;
font-weight: bold;
line-height: 1.2;
}

.btn01 a {
display: block;
background: rgba(0,26,62,1);
width: 60%;
margin: 0 auto;
padding: 0.8em;
color: #fff;
font-size: 1.6rem;
font-weight: bold;
text-align: center;
}

.btn01 a:hover {
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
background: rgba(0,26,62,0.8);
}

/*
.btn02 a {
display: block;
background: rgba(232,125,170,0.96);
width: 84%;
margin: 10px 0 0 0;
padding: 0.5em;
color: #fff;
font-size: 1.66rem;
font-weight: bold;
line-height: 1.33;
text-align: center;
}

.btn02 a:hover {
background: rgba(232,125,170,0.8);
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
}
*/


/*
.tbl01 {
background: #fff;
width: 100%;
margin: 40px auto;
font-size: 15px;
line-height: 1.5;
}

.tbl01 th {
background: rgba(232,125,170,0.66);
width: 25%;
padding: 18px 28px;
color: #fff;
font-weight: bold;
text-align: center;
vertical-align: middle;
border-bottom: 1px dotted rgba(255,255,255,0.66);
}

.tbl01 td {
width: 75%;
padding: 18px 28px;
text-align: left;
vertical-align: middle;
border-bottom: 1px dotted rgba(0,26,62,0.33);
}

.tbl01 td:nth-of-type(1) {
border-top: 1px dotted rgba(0,26,62,0.33);
}

*/


.btn01 a {
display: block;
background: rgba(0,26,62,1);
width: 90%;
margin: 0 auto;
padding: 0.6em;
color: #fff;
font-size: 1.2rem;
font-weight: bold;
text-align: center;
}

.btn01 a:hover {
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
background: rgba(0,26,62,0.8);
}

.btn02 a {
display: block;
background: rgba(232,125,170,0.96);
width: 90%;
margin: 10px auto 0;
padding: 0.5em;
color: #fff;
font-size: 1.2rem;
font-weight: bold;
text-align: center;
}

.btn02 a:hover {
background: rgba(232,125,170,0.8);
box-shadow: none;
color: #fff;
text-decoration: none;
transition: background .5s ease;
}

.tbl01 {
background: #fff;
width: 100%;
margin: 30px auto 28px;
font-size: 14px;
line-height: 1.5;
border-bottom: 1px dotted rgba(0,26,62,0.33);
}

.tbl01 th {
display: block;
background: rgba(232,125,170,0.66);
width: 100%;
padding: 8px 10px;
color: #fff;
font-weight: bold;
text-align: left;
vertical-align: middle;
border-bottom: 0px dotted rgba(255,255,255,0.66);
}

.tbl01 td {
display: block;
width: 100%;
padding: 15px 10px;
text-align: left;
vertical-align: middle;
border-bottom: 0px dotted rgba(0,26,62,0.33);
}

.tbl01 td:nth-of-type(1) {
border-top: 0px dotted rgba(0,26,62,0.33);
}

.form_inner {
width: 90%;
margin: 0 5%;
padding: 60px 0 20px;
text-align: center;
}

/*　その他 SP
---------------------------------------------------------------------------*/
img.float_l {
float: none;
display: block;
margin: 0 auto 20px;
vertical-align: top;
}

img.float_r {
float: none;
display: block;
margin: 0 auto 20px;
vertical-align: top;
}

img.img_center {
display: block;
margin: 0 auto 20px;
text-align: center;
}

img.circle {
display: block;
margin: 36px auto 10px;
border-radius: 50%;
width:  210px;
height: 210px;
}

.center {
text-align: center;
}

.mgb20 {
margin-bottom: 20px;
}

.mgb30 {
margin-bottom: 30px;
}

.mgb30b {
margin-bottom: 30px;
}

.mgb40 {
margin-bottom: 40px;
}

.mgb60 {
margin-bottom: 60px;
}

}


@media screen and (max-width: 640px) {
}


@media screen and (max-width: 320px) {
}

.pb20 {
	padding-bottom: 20px
}