@charset "UTF-8";

/*
	Theme Name: キッズカレッジなかテーマ
	Description: KIDS COLLEGE NAKA | 子ども大学なか
	Theme URI: https://kidscollegenaka.com/
	Author: KIDS COLLEGE NAKA | 子ども大学なか
	Author URI: https://kidscollegenaka.com/
	Version: 1.0.1
*/

@import url('https://fonts.googleapis.com/css?family=Roboto:400,100,300,500,700,900');
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/****************************************

          RESET

*****************************************/
html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, sup,
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
canvas, iframe,
details, summary,
fieldset, form, label, legend,
table, caption,
tbody, tfoot, thead,
tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
}
html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    line-height: 1.4;
}

* {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

a,
a:visited {
    color: inherit;
}
article,
aside,
footer,
header,
nav,
section,
main {
    display: block;
}

* {
    box-sizing: border-box;
}

*:before,
*:after {
    box-sizing: inherit;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

ol,
ul {
    list-style: none;
}

img,
video {
    max-width: 100%;
}

img {
    border-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    cont
}
[hidden] {
    display: none !important;
}

[disabled] {
    cursor: not-allowed;
}

:focus:not(:focus-visible) {
    outline: none;
}
.sr-only {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
    left: -9999px;
    top: -9999px;
}
p {
    text-align: justify;
    text-justify: inter-ideograph;        
}

/****************************************

          General Setting

*****************************************/
#fade {
	width: 100%;
	height: 100vh;
	background:#fff;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 15000;
}
img.responsiveimg {
		width:100%;
		height:auto;
}
body.overflow-hidden {
  /* when primary navigation is visible, the content in the background won't scroll */
    overflow: hidden;
}
body{
color:#555;
background-color:#fff;
margin: 0;
line-height: 1.6;
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
a {text-decoration: none; color: #555;}
a:link {color: #555;}
a:hover {color: #00a8ec;text-decoration: none;}
a:visited {color: #555;}
/* For modern browsers */
.cf:before,
.cf:after {
    content:"";
    display:table;
} 
.cf:after {
    clear:both;
} 
/* For IE 6/7 (trigger hasLayout) */
.cf {
    zoom:1;
}
html br.clear {
	height:0px;
	clear:both;
	display: hidden;
	line-height:0;
	font-size:0px;
	zoom:1;
}
br.brsp {
    display:none;   
}
@media screen and (max-width: 767px){
    br.brsp {
        display:block;   
    }    
}

/* -------------------------------- 

HEADER & FOOTER

-------------------------------- */


/* HEADER */
.header {
	background:#cdcdcd;
}
.fixed {
background-color: rgba(205,205,205,0.8);
}
h1 {
	font-size:0;
	margin:0;
}
.flex {    
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	    
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
}
/* FOOTER */ 
.footer {
    border-top:1px solid #eee;
}
.copyright {
	font-size:1rem;
	text-align:center;
	padding:15px 0;
}
.copyright ul {
    margin:0 0 10px;   
}
.copyright span {
}
#page-top {
    position: fixed;
    bottom: 30px;
    right: 30px;
    margin:0;
    z-index:999;    
}
#page-top a {
    text-decoration: none;
    font-size:16px;
    width: 30px;
    height:30px;
	padding:2px 0 0;	
    text-align: center;
    display: block;
    background:#00a8ec;
    color:#fff;
    border-radius:15px;
}
@media screen and (max-width: 767px){
    .footer {
        padding-bottom:60px;
    }    
    #page-top {
        position: fixed;
        bottom: auto;
        top:15px;
        right: 15px;
       margin:0;
        z-index:9999;    
    }        
}
.spfootnav {
    position:fixed;
    bottom:0;
    z-index:2;
    width:100%;
    background:#eee;   
}
.spfootnav ul.top {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	 
	border:1px solid #00a8ec;  
	border-left:none;
	border-right:none; 
}
.spfootnav ul.top li {
    width:calc(100% / 2 - 1px);   
    text-align:center;
    border-left:1px solid #00a8ec;
}
.spfootnav ul.top li:first-child {
     width:calc(100% / 2 );   
    border:none;   
}
.spfootnav ul.top li a {
    color:#00a8ec;
    display:block;
    font-weight:300;    
    font-size:1.4rem;
    padding:15px 0;
}
.spfootnav ul.top li a i {
    padding-right:.5rem;   
    font-size:2rem;
    vertical-align:middle;
}
.spfootnav ul.second {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	 
	border:1px solid #00a8ec;  
	border-left:none;
	border-right:none; 	
}
.spfootnav ul.second li {
    width:calc(100% / 4 );   
    text-align:center;
    border-left:1px solid #00a8ec;
}
.spfootnav ul.second li:first-child {
    border:none;   
}
.spfootnav ul.second li a {
    color:#00a8ec;
    display:block;
    font-size:1.2rem;
    font-weight:300;
    line-height:1;
    padding:10px 0;
}
.spfootnav ul.second li a i {
    display:block;
    font-size:2rem;
    margin-bottom:.5rem;
}
a.contentsbtn {
    display:inline-block;
    margin:0 auto;
    font-size:1.6rem;
    padding:10px 15px;
    background:#00a8ec;
    color:#fff;
    border-radius:20px;  
}
a.contentsbtn.long {
    display:inline-block;
    margin:0 auto;
    font-size:1.6rem;
    padding:10px 45px;
    background:#00a8ec;
    color:#fff;
    border-radius:15px;  
}
a.contentsbtn.orange {
    background:#ffaa00;;   
}
a.contentsbtn i {
    padding-right:.3rem; 
}
/*  MAIN SLIDE */
.section-container {
    margin-top:77px;    
}
.swiper-slide {
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;   
}
.swiper-slide a {
    display:block;    
}
.s-fade-wrap {
  position: relative;
  margin: 0 auto;
  max-width:100%;
  height:600px;
  justify-content:center;
  align-items:center;
}
.s-fade-wrap a {
    display:block;   
}
.s-fade-text {
    opacity: 0;
    text-align:center;
}
.s-fade-text h2 {
    display:inline-block;
}
.s-fade-text h2 img {
    width:250px;
    height:auto;    
}
.s-fade-text span {
    font-size:4rem;
    letter-spacing:.3rem;
    color:#fff;
    display:block;
    margin-top:5px;
    color:#fff;
    font-weight:bold;
    text-shadow:0 3px 10px #000;
}
.swiper-slide-active .s-fade-text {
  animation: slideFromRight 5s ease-in-out 1s 1 normal forwards;
}
.s-fade-text span a {
    background:#ff0000;
    color:#fff;
    font-size:2rem;
    padding:10px 15px;
    border-radius:10px;
    display:inline-block;  
    text-shadow:none;  
}
@keyframes slideFromRight {
  0%, 10% {
    transform: translateY(-10px);
    opacity: 0;
  }
  10%, 85% {
    transform: translateY(0px);
    opacity: 1;
  }
  100% {
    transform: translateY(10px);
    opacity: 0;
  }  
}
/* -------------------------------- 

CONTENTS

-------------------------------- */
section.ad {
    padding:60px 0;    
}
section.ad h2 {
    background:#ff0000;
    color:#fff;
    padding:15px;
    text-align:center;
    font-size:2rem;
    border-radius:20px;
    width:90%;
    margin:0 auto;    
}
/* TOPMAIN  */
/*矢印の色とサイズ*/
.slick-prev:before,
.slick-next:before {
    color: #111;
    font-size: 24px;
}
 
/*矢印の位置*/
.slick-next {
    right: 20px;
    z-index: 110;
}
.slick-prev {
    left: 15px;
    z-index: 100;
}

a.img-over,
a.img-over span {
    overflow: hidden;
    position:relative!important;
    float: left;
    margin: 0;
    border: 0px solid #ff0000;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    background:#ff0000;
}
a.img-over:hover {
    border: 5px solid #ff0000;
}
a.img-over:hover span {
    margin: -5px;
}

hr {
	margin:0;
	padding:0;
	height:1px;
	border:none;
}
.topcopy {
	text-align:center;
	font-size:1.2rem;
	padding:10px 0;
	font-weight:200;	
	border-bottom:1px solid #eee;
	background:#00a8ec;
	color:#fff;
}
.topcopy ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
	justify-content: flex-end;   
}
.topcopy li {
    text-align:center;
    width:100%;     
    font-size:1.6rem; 
    font-weight:400;   
}
.topcopy li a {
  font-size:1.2rem; 
  font-weight:400;
  background:#fff;
  color:#00a8ec;
  padding:5px 10px;
  display:inline-block;
  margin-left:10px; 
  border-radius:5px;
}
.topcopy li i {
  font-size:1.4rem;     
  color:#00a8ec;
} 

.topcopy li a span, .topcopy li span span {
    padding-right:.5em;   
}
section.about {
    padding:60px 0;   
}
.topreasonbox {
    padding:60px 0 30px; 
}
.title {
    padding:0;
    background: transparent;
    line-height: 1;
    font-size: 2.9rem;
    font-weight:500;
    letter-spacing:.3rem;
    width: 100%;
    margin: 0 0 60px;
}
.minititle {
    font-size: 2rem;
    margin-bottom:60px;
}
.title span.ballon {
    position:relative;
    background:#00a8ec;
    color:#fff;
    border-radius:50%;
    margin-right:3rem;
    position: relative;
    display: inline-block;
    width: 90px;
    height: 90px;
    line-height: 90px;
    vertical-align: middle;
    text-align: center;
    color: #FFF;
    border-radius: 50%;
    box-sizing: border-box;    
}
.title span.ballon i {
    padding-left:.6rem;    
    vertical-align:middle;  
    font-size:4rem; 
}
span.ballon:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -18px;
  margin-top: -8px;
  border: 8px solid transparent;
  border-left: 15px solid #00a8ec;
  z-index: 0;
}
.title span.ballon.pointballon {
    background:#ffaa00;
}
.title span.ballon.pointballon span {
    font-size:1.2rem;
    vertical-align: middle;
    letter-spacing:1px;
    padding-right:.3rem;       
}
.title span.ballon.pointballon:before {
  border-left: 15px solid #ffaa00;
}
.contents.second {
    margin-top:80px;
}
.pagetitle {
    padding:60px 0;
    background:url(img/news.jpg) center center no-repeat;
    background-size:cover;
    text-align:center;   
    box-shadow:0 5px 10px -3px rgba(0,0,0,0.2) inset, 0 -5px 10px -3px rgba(0,0,0,0.2) inset;
    color:#fff;
     font-size:3rem;
     text-shadow:0 0 10px #222;
}
.bd-green {
    border:5px solid #eeffff;
}
.bg-green {
    background:#eeffff; 
}
.backgreen {
    background:#00a8ec!important; 
    color:#fff!important; 
}
.bd-grey {
    border:5px solid #eee;
}
.bg-grey {
    background:#eee; 
}
.aboutcontents {
    font-size:1.4rem;      
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	    
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
}
.second .aboutcontents {
    margin-top:60px;    
}
.halfleft {
    width:calc(100% / 2);  
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	      
}
.halfright {
    width:calc(100% / 2);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;		
}
.halfleft p {
    padding:0 15px;   
}
strong {
    font-weight:300;
    background: linear-gradient(transparent 70%, rgba(255,170,0,.5) 0);
}
.conceptone {
    width:100%;   
}
.conceptone i {
    padding-right:1rem; 
    color:#00a8ec;
    font-size:2rem;     
}
.conceptone ul {
    display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;		   
}
.conceptone ul li {
    width:100%;	
    padding:0 15px;	    
 	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	  
}
.conceptone ul.studenttype {
    margin-top:-30px;   
}
.conceptone ul.studenttype li {
    padding:0 60px 30px;
}
.conceptone ul.studenttype li:last-child {
    padding:0 60px 0;
}
.conceptone ul li h3 {
    font-size:2.8rem;
    color:#00a8ec;
    font-weight:300;
    padding:0;
    display:block;
    width:100%;
    text-align:center;
    border-radius:20px;
    margin:0;
    letter-spacing:.3rem;
}
.conceptone ul li img {
    margin:0;  
}
.conceptone ul li span {
    font-weight:300;
    color:#555;
    line-height:1.6;
    font-size:1.3rem;
    display:block;
    letter-spacing:1px;
    margin-top:1rem;   
}
.conceptone .cmmovie {
    background:#eee;
    padding:30px;
    margin-top:30px;   
    border-radius:8px;
    text-align:center;
    margin:30px 15px 0;
}
.conceptone .cmmovie h3 {
    color:#00a8ec;   
    border: 3px solid #00a8ec;
    padding:10px 30px;
    display:inline-block;
    font-size:1.6rem;
    font-weight:600;
    border-radius:20px;
}
.conceptone .cmmovie ul {
    display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;     
    -webkit-flex-wrap:nowrap;
    -moz-flex-wrap:nowrap;
    -ms-flex-wrap:nowrap;
    flex-wrap:nowrap;
    margin:30px 0 0;	
}
.conceptone .cmmovie ul li {
    width:calc(100% / 7);
    display:block;    
}
.conceptone .cmmovie ul li a {
    display:block;
    position:relative;   
}
.conceptone .cmmovie ul li a span {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border: 3px solid #fff;
    border-radius: 50%;
    margin:0;
}
.conceptone .cmmovie ul li span {
    font-size:1rem;
    display:block;   
}
.conceptone .cmmovie ul li a span i {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    font-size: 2rem;
    padding:0;
}
.conceptone .cmmovie ul li img {
    width:100%;
    height:auto;
    border-radius:50%; 
    margin:0;
    border:3px solid #fff;    
}
.concepttwo {
    width:100%; 
}
.concepttwo ul {
    justify-content:space-between;  
}
.concepttwo ul li {
    width:calc(100% / 2 - 15px);	
    font-size:1.6rem;
    line-height:2;
    margin-bottom:30px;
}
.concepttwo ul.guide li {
    width:calc(100% / 5 - 15px);	
    font-size:1.6rem;
    line-height:2;
    margin-bottom:30px;
    font-weight:bold;
}
.concepttwo ul.guide li.txt {
    width:calc(100% / 5 * 4 - 15px);	
    font-size:1.6rem;
    line-height:2;
    margin-bottom:30px;
}
.concepttwo ul.guide li.txt span {
    display:block;
    font-weight:normal;
    font-size:1.2rem;   
}
.notice {
    background:#eee;
    padding:15px;
    margin-top:5px;
    border-radius:10px;   
}
.concepttwo ul li.head
.concepttwo ul li .image {
    position:relative;
    width:100%; 
    margin-bottom:15px;
}
.concepttwo ul li .image img {
    border-radius:8px;    
}
.concepttwo h3 {
    bottom:0;
    width:100%;
	font-size:3rem;
	color:#00a8ec;
	line-height:1.4;
	margin:0 0 15px;
	border-radius: 0px 0px 8px 8px;
}
.concepttwo .point {
    position: absolute;
    text-align: center;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	    
    font-size:1rem;
    align-items:center;
    background:#ffaa00;
    border:3px solid #fff;
    color:#fff;
    border-radius:50%;
    width:90px;
    height:90px;
    text-align:center;
	justify-content: center;        
}
.concepttwo .pointtxt {
    color:#00a8ec;
    padding:0 0 0 1.3rem;   
    font-weight:500;
    font-size:2rem;
    width: calc(100% - 90px);        
}
.concepttwo .pointtxt a {
    display:block;
    font-size:1.6rem; 
    margin-top:.8rem;
    color:#ffaa00;
    text-decoration:underline;
    font-weight:300;
    letter-spacing:.3rem;  
}
.concepttwo .point span {
    font-size:3rem; 
    padding-left:.4rem;
}
.concepttwo.voice {
    margin-left:30px;   
}
p.sub {
    background:#fff;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.33);
    padding:15px;
    width:60%;
    margin:0 auto;
    text-align:center;   
}
.messagebox {
    width:100%;
    background:#eeffff;
    padding:0; 
    box-shadow:0 5px 10px -3px rgba(0,0,0,0.2) inset, 0 -5px 10px -3px rgba(0,0,0,0.2) inset;
}
.messagelink {
    padding-top:30px;
    text-align:center;
    width:100%;
}
.messagelink a.contentsbtn {
    padding:10px 30px;   
}
.messagebox ul {
    width:90%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    justify-content:space-between;
    flex-wrap:wrap;	
    padding:60px 0 30px;
    margin:0 auto;    
}
.messagebox ul li {
    width:calc(100% / 2 - 15px);
    position:relative;
    background:#00a8ec;
    box-shadow: 0px 10px 14px rgba(0, 0, 0, 0.5);
    margin-bottom:30px;
}
.messagebox ul li img {
        border:10px solid #fff;       
}
.messagebox ul li h3 {
    position:relative;   
}
.messagebox ul li .messagename {
    position:absolute;
    bottom:30px;
    left:30px;
    font-size:2.6rem; 
    color:#fff;
    text-shadow:0 0 3px rgba(0,0,0,.9);  
}
.messagebox ul li .messagename span {
    display:block;
    margin-bottom:5px;
    line-height:1.4;
    font-size:1.2rem;   
}
.messagebox ul li p {
    position:relative;
    background:#00a8ec;
    color:#fff;
    padding:30px;
    width:100%;
    margin-top:0; 
    font-size:1.6rem;
    line-height:1.6;
}
.messagebox ul li a.contentsbtn {
    display:block;
    max-width:40%;
    padding:5px 15px;
    margin-top:10px;
    font-size:1.6rem;
    background:#fff;
    color:#00a8ec;
    text-align:center;
}
.messagebox ul li p:before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50%;
    margin-left: -15px;
    border: 8px solid transparent;
    border-bottom: 15px solid #00a8ec;
}
.story, .book, .careerwrap {
    padding:30px;   
}
.storylist {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
    width:90%;
	margin:0 auto;
}
.storylist li {
    width:calc(100% / 3); 
    padding:0 30px;  
    
}
.storylist li .photo {
    width:100%;
    height:230px;
    overflow:hidden;
    position:relative; 
}
.storylist li h2 img.icon {
    position:absolute;
    top:-45px;
    right:-30px;
    width:80px;
    height:80px; 
    transform: rotate(15deg);  
}
.storylist li h2 {
    position:relative;
    background: #fff;
    box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.33);    
    color:#00a8ec;
    font-size:1.6rem;
    padding:10px 60px 10px 10px;      
}
.storylist li h3 {
    margin:10px 0;
    color:#ffaa00;
    font-size:1.6rem;
}
.storylist li span, .storylist li h3 span {
    font-size:1.2rem;
    display:block;
    margin-top:5px;   
}
.storylist li p {
    font-size:1.2rem;
    line-height:1.6;
}
.accessbox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	       
}
.access, .accessinfo {
    width:calc(100% / 2); 
    padding:0 15px; 
    font-size:1.6rem; 
}
.accessinfo ul {
    border-top:1px dashed #eee;         
}
.accessinfo ul li {
    padding:15px 0;
    border-bottom:1px dashed #eee;   
}
.information {
    padding-top:60px;   
}
.information .halfleft {
    padding:0 15px;
}
.information h2.title {
    width:100%;
    margin:0; 
    background:#ccc;
    padding:10px;
    text-align:center;
    font-size:1.6rem;
}
.information .halfleft ul li {
    border-bottom:dotted #ccc;   
}
.information .halfleft ul li a {
    padding:15px 0;
    display:block;
    font-size:1.6rem;   
    color:#00a8ec;
    cursor:pointer;
}
.information .halfleft ul li a:hover {
    opacity:.5;   
}
.information .halfleft ul li a span.newsdate {
    font-siz:1.2rem;
    color:#555;   
}
.information .halfleft ul li a span.category {
    font-siz:1.1rem;  
    background:#eeffff;
    color:#00a8ec;
    padding:2px 10px;
    margin-left:1rem;
}
.entryarea {
    background:#00a8ec;
    color:#fff;
    padding:30px;
    border-radius:8px;
    border:3px solid #fff;
    box-shadow:0 0 5px #ccc;  
    margin-bottom:60px; 
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
    align-items:center;
}
.entryarea h3 {
    font-size:1.8rem;
    line-height:1.4;  
    width:calc(100% / 3);        
}
.entryarea h3 span {
    font-size:1.2rem;
    display:block;
    margin:0 0 5px 0;   
}
.entryarea h3 a {
    color:#fff;
    font-size:1.6rem;
    background:#fff;
    color:#00a8ec;
    padding:5px 30px;
    display:inline-block;
    border-radius:20px;
}
.entryarea h3 a i {
    padding-right:.3rem;   
}
.entryarea .btnarea {
    width:calc(100% / 3 * 2);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;    
}
.entryarea .btnarea a {
    width:50%;
    margin:0 0 0 15px;
    background:#fff;
    padding:15px;
    color:#00a8ec;
    border-radius:8px;
    text-align:center;
    border:3px solid #eeffff;
}
.entryarea .btnarea a:first-child {
    margin:0; 
    background:#ffaa00;
    border:3px solid #fff;
    color:#fff; 
}
.entryarea .btnarea a span {
    padding-right:1rem;   
}
.entryarea .btnarea a span.entrycap {
    padding:0;
    font-size:1.2rem;
    display:block;   
}
.accesstime {
    margin:30px 15px 0; 
    padding:30px;  
}
.contents .accesstime {
    margin-bottom:60px;
}
.accesstime ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.accesstime ul li {
    width:calc(100% / 4 - 20px);
    text-align:center; 
    background:#fff; 
    padding:0 0 10px;
    margin:0 10px 10px;  
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    text-align:center;
}
.accesstime ul li h3 {
    background:#eeffff;
    padding:10px;
    color:#00a8ec;  
    font-size:1.6rem;
    width:100%;
}
.accesstime ul li h3 span {
    margin-top:.3rem;
    font-size:1.2rem;
    display:block;   
}
.accesstime ul li i {  
    font-size:4rem;
    padding:15px 0 10px; 
    color:#00a8ec; 
    margin:0 auto;     
}
.accesstime ul li p {
    width:100%;    
    font-size:1.6rem;  
    margin-top:auto; 
    text-align:center;
}
.accesstime ul li p span {
    font-size:2rem;
    color:#ffaa00;
    padding:0 .4rem;   
}
/* YouTube */
.YouTube  {
    overflow: hidden;
    position: relative;
    /* paddingで高さを出している */
    height: 0;
    padding-top:30px;
    padding-bottom:56.25%;
    margin-top:15px;
}
.YouTube iframe,
.YouTube object,
.YouTube embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* twitter */
.TwitterWidget iframe#twitter-widget-0 {
    width:100% !important;
}
.TwitterWidget iframe { width: 740px !important; }
/* Google Map */
.GoogleMap {
    width:100%;
    overflow: hidden;
    position: relative;
    margin:30px 0 0;
    /* paddingで高さを出している */
    height: 0;
    padding-bottom:40%;
}
.GoogleMap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
}
.infosp {
    text-align:center;
    width:100%;
    font-size:1.6rem;
    background:#f8f8f8;
    border:3px dotted rgba(255,170,0,.5);
    box-shadow:0 0 4px #eee;
    padding:30px;
    margin-bottom:30px;
    border-radius:10px;
}
.infosp h3 {
    text-align:center;
    font-size:2rem;
    margin-bottom:15px;   
}
.infosp.top {
    text-align:center;
    width:100%;
    color:#ff0000;
    background:#f8f8f8;
    border:3px dotted #ff0000;
    padding:30px;
    margin:30px 0;
    border-radius:10px;
    font-size:1.6rem;    
}
#contact {
    padding-top:80px;
    margin-bottom:60px;   
}
.credit {
    padding:15px 30px 30px;
    border:3px dotted rgba(255,170,0,1);   
    border-radius:10px;
}
.credit h3 {
    font-size:1.6rem;
    text-align:center;
    color:#555; 
    margin-top:15px;  
}
.credit ul {
    display:flex;
    flex-wrap:wrap;
}
.credit ul li {
    width:100%;
    margin-left:15px;
    margin:0 auto;
    font-size:1.6rem;
    justify-content:center;
    align-items:center;    
}
.credit ul li.contact {
    justify-content:center;
    font-weight:bold;    
}
.credit ul li p {
    width:30%;    
}
.credit ul li h4 {
    padding:1rem 0 0;
    font-size:1.6rem;
    font-weight:bold;
}
@media screen and (max-width: 1199px){
.storylist li .photo {
    height: 180px;
}
}
@media screen and (max-width: 991px){
.storylist li .photo {
    height: 120px;
}
}
@media screen and (max-width: 767px){
    .aboutcontents, .second .aboutcontents {
        display:block;
        margin:30px 0;   
    }
    .topreasonbox .aboutcontents {
        margin:0;   
    }
    .halfleft {
        width:100%;   
    }
    section.about {
        padding:30px 0;   
    }
    .title {
        padding: 0;
        background: transparent;
        line-height: 1.4;
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: .2rem;
        width: 100%;
        margin: 0 0 15px;
    }
    .minititle {
    font-size: 1.6rem;
    }
    .title span.ballon {
        display:block;
        margin:0 auto 1.4rem;
        width: 50px;
        height: 50px;
        line-height: 50px;        
    }
    .title span.ballon i {
        padding-left:.3rem;    
        vertical-align:middle;  
        font-size:2rem; 
    }
    span.ballon:before {
        content: "";
        position: absolute;
        top:auto;
        right:auto;
        bottom: -15px;
        left: 50%;
        margin-left: -8px;
        border: 8px solid transparent;
        border-top: 15px solid #00a8ec;
        z-index: 0;
    } 
    .title span.ballon.pointballon {
        background:#ffaa00;
        display: -webkit-box;
	    display: -webkit-flex;
	    display: -ms-flexbox;
	    display: flex;	        
        -webkit-flex-wrap:wrap;
        -moz-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap;	
        justify-content: center; 
        align-items:center;
        width:90px;
        height:90px;
        line-height:1;
    }
    .title span.ballon.pointballon span {

    }    
    .title span.ballon.pointballon:before {
        content: "";
        position: absolute;
        top:auto;
        right:auto;
        bottom: -15px;
        left: 50%;
        margin-left: -8px;
        border: 8px solid transparent;
        border-top: 15px solid #ffaa00;
        z-index: 0;
    }     
    .pagetitle {
        padding:60px 0;
        background:url(img/news.jpg) center center no-repeat;
        background-size:cover;
        text-align:center;   
        box-shadow:0 5px 10px -3px rgba(0,0,0,0.2) inset, 0 -5px 10px -3px rgba(0,0,0,0.2) inset;
        color:#fff;
        font-size:2rem;
        text-shadow:0 0 10px #222;
    }
    .conceptone ul {
        padding: 0;
    }    
    .conceptone ul li {
        padding:0 5px;
        font-size:1.4rem;
        font-weight:600;
        color:#00a8ec;
        letter-spacing:.3rem;
    } 
    .conceptone ul li img {
        margin: 0 0 5px;
    }
    .conceptone ul.studenttype {
        margin:0;
    }   
    .conceptone ul.studenttype li {
        padding:0 0 10px;   
    }
    .conceptone ul.studenttype li:last-child {
        padding:0;
    }    
    .conceptone ul li h3 {
        font-size:1.2rem; 
        line-height:1.4;  
    }
    .conceptone ul li span {
        font-weight:300;
        color:#555;
        font-size:1.2rem;
        display:block;
        margin-top:1rem;   
    }
    .conceptone i {
        padding-right:1rem; 
        color:#00a8ec;
        font-size:1.6rem;     
    }  
    .conceptone .cmmovie {
        background: #eee;
        padding: 15px;
        border-radius: 8px;
        text-align: center;
        margin: 15px 0 0;
    }  
    .conceptone .cmmovie h3 {
        color: #00a8ec;
        border: 2px solid #00a8ec;
        padding: 10px 15px;
        display: inline-block;
        font-size: 1.4rem;
        font-weight: 600;
        border-radius: 20px;
    }
    .conceptone .cmmovie ul {
        margin: 0;
        -webkit-flex-wrap:wrap;
        -moz-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap;
        justify-content:center;
    }
    .conceptone .cmmovie ul li {
        width: calc(100% / 4);
        margin-top:10px;
        font-size:1.2rem;
        letter-spacing:0;
        line-height:1.4;
    }
    .conceptone .cmmovie ul li span {
        font-size:.8rem;
        display:block;
        letter-spacing:0; 
        margin:5px 0 0;  
        line-height:1.2;
    }
    .conceptone .cmmovie ul li a span {
        width: 25px;
        height: 25px;
        border: 2px solid #fff;
    }
    .conceptone .cmmovie ul li a span i {
        font-size: 1.4rem;
    }    
    a.contentsbtn {
        display: inline-block;
        margin: 0 auto;
        font-size: 1.3rem;
        padding: 10px 15px;
        background: #00a8ec;
        color: #fff;
        border-radius: 20px;
    }
    .concepttwo {
        width: 100%;
    }   
    .concepttwo h3 strong {
        font-weight:600;
    }     
    .concepttwo ul {
        display:block;    
    }    
    .concepttwo ul li {
        width:100%;
        padding:0;	
        margin-bottom:0;  
    } 
    .concepttwo ul li .image {
       margin-bottom:15px;
    }    
     .concepttwo ul li.txt {
        width:100%;
        padding:0;	
        margin-bottom:30px; 
        border-bottom:3px dotted #fff;
        padding:0 0 30px;
    }    
    .concepttwo ul.guide {
        border-top:1px solid #eee;    
        padding-top:15px;    
    }
    .concepttwo ul.guide li {
        width:100%;
        font-size: 1.4rem;
        line-height: 2;
        margin-bottom: 0;
        font-weight: bold;
    }
    .concepttwo ul.guide li.txt {
        width:100%;
        font-size: 1.4rem;
        line-height: 2;
        margin-bottom: 15px;
        padding:0 0 15px;
        border-bottom:1px solid #eee;
    }       
    p.sub {
        background: #fff;
        box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.33);
        padding: 15px;
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
    .messagebox {
        width: 100%;
        background: #eeffff;
        padding: 0;
        margin-bottom: 0;
    }    
    .messagebox ul {
        width:95%;
        display:block;
        margin:0 auto;
        padding:15px 0;
    }
    .messagebox ul li {
        width:100%;
        padding:0;
        position:relative;
        margin-bottom:15px;
    box-shadow: 0px 5px 7px rgba(0, 0, 0, 0.5);
    }
    .messagebox ul li:last-child {
        margin-bottom:0;
    }    
    .messagebox ul li p {
        position:relative;
        bottom:0;
        left:0;
        padding:15px;
        width:100%;    
    }    
    .story, .book {
        padding:30px 15px;   
    }
    .careerwrap {
        padding:15px;
    }
    .storylist {
        display:block;
        width: 100%;
        margin: 0 auto;
    }
    .storylist li {
        width:100%;
        padding:0;
        display: -webkit-box;
	    display: -webkit-flex;
	    display: -ms-flexbox;
	    display: flex;	
        -webkit-flex-wrap:wrap;
        -moz-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap;
        margin-bottom:30px;	 
        align-items:center;   
    }
    .storylist li:last-child {
        margin-bottom:0;	    
    }        
    .storylist li .photo, .storylist li .txt {
        width:calc(100% / 2 );    
    }   
    .storylist li .photo {
        height:180px;   
    }
    .storylist li p {
        width:100%;
        border-top:1px dotted #ccc;
        border-bottom:1px dotted #ccc;        
        padding:10px 0   
    } 
    .storylist li h2 img.icon {
        top:-15px;
        right:-15px;
        width: 50px;
        height: 50px;
    }    
    .accessbox {
        display:block;    
    }  
    .access, .accessinfo {
        width:100%;
        padding:0;    
    }
    .access img {
        margin:15px 0;   
    }
    .information {
        padding-top: 30px;
    }  
    .information .halfleft:first-child {
        margin-bottom:30px;   
    } 
    .entryarea {
        padding: 15px;
        margin-bottom:30px;
    } 
    .entryarea h3 {
        font-size:1.8rem;  
        width:100%;  
        text-align:center;      
    }
     .entryarea h3 span {
        margin-top:5px;
    }
    .entryarea .btnarea {
        width:100%;
        margin-top:15px;
	    display: -webkit-box;
	    display: -webkit-flex;
	    display: -ms-flexbox;
	    display: flex;   
	    justify-content:space-between; 
    }
    .entryarea .btnarea a {
    width: 49%;
    font-size:1.3rem;
    line-height:1.4;
    font-weight:600;
    margin: 0;
    padding:10px 0;
    } 
    .entryarea .btnarea a span {
    padding-right:.3rem;       
    }
    .accesstime {
        margin:30px 0 0; 
        padding:15px;  
    }
    .contents .accesstime {
    margin-bottom:30px;
    }
    .accesstime ul {
    margin-bottom:15px;
    justify-content:space-between; 
    }  
    .accesstime ul li {
        width: calc(100% / 2 - 10px);
        margin:0 0 10px;
    }
    .GoogleMap {
        padding-bottom: 60%;
        margin:0;
    }   
#contact {
    padding-top:60px;   
    margin-bottom:30px;   
}
.credit {
    padding:7px 15px 15px;
    border:3px dotted rgba(255,170,0,1);   
    border-radius:10px;
}
.credit h3 {
    font-size:1.4rem;
    text-align:center;
    color:#555; 
    margin-top:8px;  
}
.credit ul li {
    width:100%;
    margin:0 auto;
    font-size:1.4rem;
    justify-content:flex-start;
    align-items:flex-start;
    margin-bottom:15px;    
}
.credit ul li.contact {
    justify-content:center;
    font-weight:bold;    
}
.credit ul li p {
    line-height:1.4;
    width:100%;
}
.credit ul li h4 {
    line-height:1.4;
    width:100%;
    padding:0;
    font-size:1.4rem;
    font-weight:bold;
}              
}

/****************************************

         CONCEPT

*****************************************/
#first, #second, #third {
    margin-top:-80px;
    padding-top:80px;
       
}
.reasonbox {
    padding:60px; 
    margin-bottom:30px;  
}
h3.title_second {
    font-size:2.4rem;
    background:#eeffff;
    padding:30px;
    text-align:center;
    color:#00a8ec; 
    position:relative;  
}
h3.title_second:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #eeffff;
}
.reasonbox ul.white li {
    background:#fff;
    border-radius:8px;
    padding:30px;
    margin:0 0 30px;  
    box-shadow:0 0 3px #aaa;
    text-align:center;
}
.reasonbox ul.white li:last-child {
    background:#fff;
    border-radius:8px;
    padding:30px;
    margin:0;
}
.reasonbox ul.white li h3 {
    font-size:2.4rem;
    margin-bottom:15px;
    color:#00a8ec;   
    position:relative;
    display:inline-block;
    padding:10px 30px;
}

.reasonbox ul.white li h3:before, .reasonbox ul.white li h3:after { 
  content:'';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

.reasonbox ul.white li h3:before {
  border-left: solid 5px #eeffff;
  border-top: solid 5px #eeffff;
  top:0;
  left: 0;
}

.reasonbox ul.white li h3:after {
  border-right: solid 5px #eeffff;
  border-bottom: solid 5px #eeffff;
  bottom:0;
  right: 0;
}
.reasonbox ul.white li p {
    font-size:1.6rem;
    line-height:1.8;
    font-weight:300;  
}
#second .reasonbox ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	           
}
#second .reasonbox ul li {
    width:calc(100% / 3);
    padding:0 30px;
}
#second .reasonbox ul li.bottom {
    width:calc(100% / 4);
    margin-top:30px;
}
#second .reasonbox ul li p {
    font-size:1.3rem;
}
#second .reasonbox ul li h3 {
    padding:15px 0 10px;
    font-size:1.6rem;
    font-weight:600;
    color:#ffaa00;   
}
#second .reasonbox ul li h3 i {
    padding-right:.3rem;   
}
#second .reasonbox ul li img {
    border-radius:50%;   
}
.reasonblock {
    border-bottom:3px dashed #eee;   
    padding:0 0 30px;
    margin:0 0 30px;
    align-items:center;
}
.reasonblock img.wall {
    width:80%;   
}
.box {
    padding:15px;   
}
#ishii.power, #narikawa.power {
    flex-flow: row-reverse;    
}
.power .halfleft {
    background:#f8f8f8; 
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items:center;	      
}
.powerin {
    padding:30px;   
}
.power .halfleft p {
    padding:0;   
}
h3.powertitle {
    font-size:2.9rem;
    font-weight:500;
    line-height:1.6;
    margin:0;
    padding:0;
    letter-spacing:.3rem;
    color:#00a8ec       
}
h2.powername {
    font-size:2.9rem;
    margin:30px 0;
    padding:0;
    letter-spacing:.3rem;
    color:#00a8ec
}
h2.powername span {
    display:block;
    font-size:1.4rem;
    margin:0 0 10px;   
}
.power .halfleft h3 {
    width:100%;   
}
.power .halfleft img {
    object-fit:cover;   
}
.powercomment {
    padding:30px;
    background:#00a8ec;
    color:#fff; 
    position:relative;
    text-align:center;
}
.powercomment p {
    text-align:left;   
}
.powercomment:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #00a8ec;
}
.powerin a.contentsbtn {
    background:#ffaa00;
    margin:0 auto;
    margin-top:15px;   
}
.powerlink {
    margin-bottom:30px;   
}
@media screen and (max-width: 767px){
.contents.second {
    margin-top:60px;
}
    .section-container {
    margin-top: 60px;
    }
    .s-fade-wrap {
    height:calc(100vh / 5 * 3);
    }
    .s-fade-text h2 img {
    width: 150px;
    height: auto;
    }
    .s-fade-text span {
    font-size: 1.8rem;
    line-height:1.8;
    letter-spacing:0;
    text-shadow: 0 1px 5px #000;
    } 
    .s-fade-text span a {
        font-size:1.4rem;
        margin-top:10px;   
    }
    .reasonbox {
        padding:15px; 
        margin-bottom:15px;  
    }
    h3.title_second {
        font-size: 1.8rem;
        padding: 15px;
        line-height:1.6;
    } 
    h3.title_second:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -8px;
        border: 8px solid transparent;
        border-top: 8px solid #eeffff;
    }
    .reasonbox ul.white li h3 {
        font-size: 1.5rem;
        font-weight:600;
        line-height:1.4;
        margin-bottom: 15px;
        color: #00a8ec;
        position: relative;
        display: block;
        padding: 10px;
        text-align:center;
    } 
    .reasonbox ul.white li {
        text-align:left;
    } 
    .reasonbox ul.white li p {
        font-size:1.4rem;
    }  
    #second .reasonbox ul li {
        width:100%;
        padding:0 10px;
        margin-bottom:30px;
    }
    #second .reasonbox ul li.bottom {
        width:calc(100% / 2);
        margin-top:15px;
        padding:0 10px;
    }  
    #second .reasonbox ul li h3 {
        padding: 10px 0 5px;
        font-size: 1.5rem;
        font-weight: 600;
        color: #ffaa00;
    }
    .reasonblock img.wall {
    width: 100%;
    height:auto;
    }          
    .reasonblock .halfleft {
        margin-top:30px;
    } 
    .power .halfleft {
        background:#f8f8f8; 
	    display: -webkit-box;
	    display: -webkit-flex;
	    display: -ms-flexbox;
	    display: flex;
	    align-items:center;	      
    }
    .power .halfleft p {
        padding:0 15px; 
        font-size:1.4rem;  
        line-height:1.6;
    }
    .powerin {
        padding:15px 0; 
        text-align:center;  
    }
    .powerin a.contentsbtn {
        background: #ffaa00;
        margin: 15px 0;
    }
    h3.powertitle {
        font-size:2rem;
        font-weight:500;
        line-height:1.6;
        margin:0;
        padding:0 15px;
        letter-spacing:.3rem;
        color:#00a8ec;    
        text-align:left;  
    }
    h2.powername {
        font-size:2rem;
        margin:15px 0;
        padding:0 15px;
        text-align:left;  
    }
    h2.powername span {
        display:block;
        font-size:1.4rem;
        margin:0 0 10px;   
    }
    .powercomment {
        padding:15px;
        background:#00a8ec;
        color:#fff; 
        position:relative;
        font-size:1.4rem;  
        line-height:1.6;
    }
    .powercomment:before {
        content: "";
        position: absolute;
        top: -20px;
        left: 50%;
        margin-left: -8px;
        border: 8px solid transparent;
        border-bottom: 15px solid #00a8ec;
    }                   
}
/****************************************

         TEACHER

*****************************************/
.teacherlist {
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	  
    margin-bottom:0;     
}
.teacherthumb {
    width:calc(100% / 4);  
}
.teacherthumb a {
    display:block;   
    padding:30px;
}
.teacherthumb img {
    margin-bottom:5px;   
}
.teacherthumb span.subject {
    font-size:1.2rem!important;  
}
.teachername {
    font-size:2.6rem;
    font-weight:500;  
    letter-spacing:.3rem;
    margin-top:5px;
}
.teachername span {
    font-size:1.2rem;
    color:#00a8ec;
    display:block;
    margin:5px 0 10px;
}
.teacherthumb p {
    font-size:1.4rem;
}
.teacherdetail {
    padding:0 60px;   
}
.teacherphoto {
    width:calc(100% / 2);   
}
.teacherbox {
    width:calc(100% / 2);
    padding-left:30px;   
}
.teacherbox p {
    line-height:1.8;    
}
.teacherbox .minititle {
    font-size: 1.6rem;
    line-height:1.6;
    margin-bottom: 15px;
}
.book {
    justify-content:center;  
    margin-bottom:0;
    padding-top:45px;
}
.bookbox {
    width:calc(100% / 4);
    padding:0 15px 30px;  
}
.bookbox a {
    display:block;
    padding:0;   
}
.booktitle {
    font-size:1.6rem;
    color:#ffaa00;
    margin:10px 0 0;   
}
.booktitle span {
    color:#555;
    display:block;
    line-height:1.8;
    font-size:1.2rem;
    font-weight:200;
}
.bookbox hr {
    margin:5px 0; 
    background:#ccc;
}
.bookbox p {
    font-size:1.2rem;
}
.lecturebox li .halfleft {
    padding:0 15px 0;   
}
.lecturebox li .halfleft p{
        padding:0;
}
.lecturebox li img {
    padding:30px 0;   
}
.lecturebox li h2 {
    text-align:left;
    font-size:2rem;
    margin-bottom:10px;
}
.lecturehistory {
    background:#eeffff;
    margin:15px 0 0;
    padding:15px 15px 0;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
    justify-content:space-between;
}
.lecturehistory .history {
    width:calc(100% / 3.1);
    padding:0 15px 15px;
    margin:0 0 15px;
    background:#fff;
    border-radius:8px;
}
.lecturebox li h2.lecturecap {
    text-align:center;
    margin:30px 0 0;
}
.history h2.historytitle {
    font-size:1.6rem;
    color:#00a8ec;
    text-align:center;
    padding:10px 0;
    margin:10px 0;
    border-top:3px dotted #eeffff;
    border-bottom:3px dotted #eeffff;
}
.history h2.historytitle span {
    display:block;
    margin:5px 0;
    font-size:1.2rem;
}
.reasonbox ul.white li .history p {
    font-size:1.2rem;   
}
p.sublecture {
    font-size:1.4rem;   
}
section.voice .title {
    margin: 0 0 30px;
}
section.voice .storylist li {
    padding: 0 30px 30px;
}
.reasonbox ul.white.entryflow li {
    position:relative;
}
.reasonbox ul.white.entryflow li p span {
    display:block;
    margin-top:5px;
    font-size:1.4rem;  
    color:#ffaa00; 
}
.reasonbox ul.white.entryflow li:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #fff;
}
.reasonbox ul.white.entryflow li:last-child:before {
    display:none;   
}
.sidebox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	 
	justify-content:space-between;
	margin-bottom:30px;	          
}
.side_f {
    width:calc(100% / 8);    
    background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items:center;
	justify-content:center;	
}
.side_b {
    width:calc(100% / 8 * 7 - 2px);      
}
.career {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; 
    width:100%;  
}
.career .grid {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;   
	align-items:flex-start;
    width: calc(100% / 5);
    padding:10px;
    border:1px solid #eee;
    background:#fff;    
}
.career .grid.grid_b {
    width: calc(100% / 4); 
}
.career .grid p {
    width:100%;
    text-align:center; 
    padding:15px; 
    font-size:1.6rem;
    font-weight:500;
}
.career .grid span {
    font-size:1.1rem;
    font-weight:300;
    display:block;
    text-align:left;
    background:#f8f8f8;
    padding:5px;
    margin-top:5px;
}
@media screen and (max-width: 767px){
    .teacherlist {
	    display: -webkit-box;
	    display: -webkit-flex;
	    display: -ms-flexbox;
	    display: flex;		
        -webkit-flex-wrap:wrap;
        -moz-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap;	            
    }    
    .teacherthumb {
        width:calc(100% / 2); 
    }  
    .teacherthumb a {
        display: block;
        padding: 15px;
    } 
    .teachername {
        font-size:2rem;
    }            
    .teachername span {
        font-size:1.0rem;
        color:#00a8ec;
        letter-spacing:1px;
        display:block;
        margin:5px 0;
    } 
.teachersub {
        margin:30px 0 15px;
    }    
.teacherdetail {
    padding: 0 15px;
} 
.teacherphoto, .teacherbox {
    width: 100%;
}   
.teacherbox { 
    padding:15px 0 0;
} 
.book {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	    
    justify-content:space-between;
    padding:15px;
}
.bookbox {
    width: calc(100% / 2 - 7px) ;
    margin-top:0;
    padding: 0 0 30px;
} 
.bookbox a {
    display: block;
    padding: 0;
} 
.lecturebox li img {
    padding: 15px 0 0;
}
.lecturebox li .halfleft {
    padding: 15px 0 0;
}
.lecturehistory {
    padding: 15px;
    display:block;
}
.lecturehistory .history {
    width: 100%;
    padding: 15px;
    margin: 0 0 15px;
    background: #fff;
    border-radius: 8px;
}
.lecturehistory .history:last-child {
    margin:0;   
}
.reasonbox ul.white.lecturebox li  {
    background: #fff;
    border-radius: 8px;
    padding: 15px;
    margin: 0;
}
section.voice .title {
    margin: 0 0 30px;
}
section.voice .storylist li {
    padding: 0 0 15px;
}
.storylist li h2 {
    padding: 10px 30px 10px 10px;
}
.reasonbox ul.white.entryflow li:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 15px solid #fff;
}
.sidebox {
    display:block;
    margin:0;
}
.side_f {
    width:100%;
    padding:10px 0;
    background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	align-items:center;
	justify-content:center;	
}
.side_b {
    width:100%; 
}
.career .grid {
    width: calc(100% / 2); 
}
.career .grid.grid_b {
    width: calc(100% / 2); 
}
.career .grid p {
    padding:0; 
    font-size:1.4rem;
}
.career .grid span {
    font-size:.9rem;
}
}
/****************************************

         COURSE

*****************************************/
div#third, div#second, div#first {
    margin-top:-60px;
    padding-top:60px;
    margin-bottom:30px;
    width:100%;
}
div#first {
    margin-bottom:0;
}
ul.coursemenu {
 	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content:center;
	width:100%;
	margin:0 0 30px;      
}
ul.coursemenu li {
    margin:0 15px;   
}
h3.coursetitle {
    font-size:1.6rem;
    width:100%;
    padding:15px;
}
.sidebox.coursebox {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	 
	justify-content:space-between;
	margin-bottom:5px;
	width:100%;	          
}
.schedule {
    margin:60px 0;    
}
.course {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; 
    width:100%;  
}
.course .grid {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;   
	align-items:center;
    width: calc(100% / 12);
    padding:10px;
    border:1px solid #eee;
    background:#fff;    
}
.course .grid.sizem {
    width:calc(100% / 12 * 2);
    background:#00a8ec;
    color:#fff;
    text-align:center;
}
.course .grid.sizem.special {
    width:calc(100% / 12 * 2);
    background:#ff6600;
    color:#fff;
    text-align:center;
}
.course .grid.sizeml {
    width:calc(100% / 12 * 4);
}
.course .grid.sizel {
    width:calc(100% / 12 * 6);
}
.course .grid.sizell {
    width:calc(100% / 12 * 10);
}
.course .grid p {
    width:100%;
    padding:10px; 
    font-size:1.4rem;
    font-weight:700;    
}
.course .grid.sizem p {
    font-size:1.3rem;  
    text-align:center; 
}
.course .grid.sizel p {
    font-size:1.8rem;  
    text-align:left;
    color:#00a8ec;
    font-weight:bold;
}
.course .grid.sizel.special p {
    font-size:1.8rem;  
    text-align:left;
    color:#ff6600;
    font-weight:bold;
}
.course .grid.sizem, .course .grid.sizem p {  
    font-size:1.4rem;
}
.course .grid.sizems, .course .grid.sizems p {  
    color:#555;
    font-size:1.2rem;
}
.course .grid span {
    font-size:1.4rem;
    font-weight:700;
    display:block;
    text-align:left;
    background:#f8f8f8;
    padding:10px;
    margin-top:5px;
}
.course .grid span.date {
    font-size: 1.8rem;
    font-weight: 700;
    display: block;
    text-align: center;
    background: none;
    padding: 0;
    margin-top: 0;
}
.tabs {
    width:100%;   
    position:relative;
    background:#fff;
}
.tabs .hidetab {
    display:none;
}
.lessontab {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	       
}
.lessontab li{
    background:#eeffff;
    display:block;
    width:calc(100% / 2 );
    color:#00a8ec;
    font-size:1.4rem;
    height:60px;
    line-height:60px;
    text-align:center;
     cursor:pointer;
     -webkit-transition: .3s;
     transition: .3s;
 }
.lessontab li.select{
    background:#fff;
    color: #ffaa00;
    font-size:1.6rem;
}
.lessonlist {
    width:100%;      
}
.lessonlist li.coursearea {
    width:100%;
     -webkit-transition: .3s;
     transition: .3s;
}
.lessonlist li {
    width:100%;  
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
}
.lessonbox {
    background:#fff; 
    padding:0 0 30px; 
    width:100%; 
}
.lessonbox p {
    font-size:1.2rem;
    font-weight:1.4; 
    width:100%; 
    padding:10px 30px 0; 

}
.lessonbox ul {
    border:5px solid #f8f8f8;  
    margin:30px 30px 0; 
}
.lessonbox ul li {
    display:block;
    text-align:center;    
    width:100%;
    padding:20px;
    font-size:1.6rem;
    font-weight:200;
    letter-spacing:.3rem;
}
.lessonbox ul li:first-child {
    background:#f8f8f8;
    color:#ffaa00; 
    font-size:1.4rem;  
}
.lessonbox ul li:nth-child(odd){
    background:#f8f8f8;
}
.subcaption {
    margin: 0 0 30px;
    line-height:1.6;
    background:#f8f8f8;
    padding:30px;   
}
.subcaption p {
    text-align:center;
    margin-bottom:30px;   
}

.parentsbox div {
    background:#fff;
    padding:15px;
    margin:0;
    border-radius:8px;   
}
.parentsbox span {
    text-align:left;
}
.parentsbox span img {
    width:300px;
    height:auto;
    float:right;
    margin:0 0 30px 30px;
}
.privacybox, .parentslist {
    margin-bottom:60px;  
    padding:60px; 
}
.privacybox p {
    display:block;
    width:100%;  
    color:#00a8ec; 
}
.conceptone.privacybox ul li span, .conceptone.parentslist ul li span {
    font-weight: 300;
    color: #555;
    line-height: 1.6;
    font-size: 1.3rem;
    display: block;
    letter-spacing: 1px;
    margin: .5rem 0 3rem;
}
.conceptone.privacybox ul li:last-child span, .conceptone.parentslist ul li:last-child span {
    margin: .5rem 0 0;
}
.conceptone.privacybox ul li, .conceptone.parentslist ul li {
    display:block;
}
.conceptone.parentslist ul li {
    font-size:2.4rem;   
}
@media screen and (max-width: 767px){
ul.coursemenu {
    margin-bottom:15px;
}    
ul.coursemenu li {
    margin:0 5px;   
}
.schedule {
    margin:30px 0;    
}
.course .grid {
    width:calc(100% / 4 );
    padding: 5px;
    background: #f8f8f8;
}
.course .grid.sizem {
    width:100%;  
    background:#00a8ec; 
    color:fff; 
    text-align:left;    
}
.course .grid.sizeml {
    width:100%;  
    margin-bottom:15px;
}
.course .grid.sizemm {
    width:100%; 
    background:#f8f8f8;      
    color:#ffaa00;
}
.course .grid.sizems {
    width:calc(100% / 2 );  
    background:#fff; 
    color:#555;
}
.course .grid.sizel {
    background:#fff; 
    color:#555;
}
.course .grid.sizem p, .course .grid.sizemm p {
    text-align:left;       
} 
.course .grid.sizems p {
    text-align:center;           
}
.course .grid.sizem br {
    display:none;
}
.course .grid.sizel {
    width:100%;   
}
.course .grid p.teacher {
    font-size:1.2rem;  
}
.course .grid p.teacher a {
    font-size:1.2rem;   
    font-weight:500;
    color:#00a8ec;
}
.lessonlist li {
    width:100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
}
.lessonbox ul {
    border: 5px solid #f8f8f8;
    margin: 15px 15px 0;
}
.subcaption {
    margin: 0 0 30px;
    line-height: 1.6;
    font-size:1.4rem;
    background: #f8f8f8;
    padding: 15px;
    text-align:left;
}
.subcaption p {
    text-align: left;
    margin-bottom: 15px;
}
.parentsbox span img {
    width: 100%;
    height: auto;
    float: none;
    margin: 15px 0;
}
.privacybox, .parentslist {
    margin-bottom:30px;  
    padding:15px; 
}
.parentslist {
    margin-bottom:30px;  
}
.conceptone.parentslist ul li {
    font-size: 1.6rem;
    text-align:center;
}
.conceptone.parentslist ul li span {
    text-align:left
}
.parentsbox div {
    margin: 0 0 15px;
}
}
/****************************************

         FAQ

*****************************************/
.reasonbox ul.white.faq {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
	-webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	    
    justify-content:space-between;  
}
.reasonbox ul.white.faq li {
    width:calc(100% / 2 - 15px);
    background:#fff;
    border-radius:8px;
    padding:30px;
    margin:0 0 30px;  
    box-shadow:0 0 3px #aaa;
    text-align:center;
}
.reasonbox ul.white.faq li:last-child {
    background:#fff;
    border-radius:8px;
    padding:30px;
    margin:0;
}
.reasonbox ul.white.faq li h3 {
    font-size:1.8rem;
    margin-bottom:15px;
    color:#00a8ec;   
    position:relative;
    display:inline-block;
    padding:10px 30px;
}
.reasonbox ul.white.faq li h3:before, .reasonbox ul.white.faq li h3:after { 
  content:'';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

.reasonbox ul.white.faq li h3:before {
  border-left: solid 5px #eeffff;
  border-top: solid 5px #eeffff;
  top:0;
  left: 0;
}

.reasonbox ul.white.faq li h3:after {
  border-right: solid 5px #eeffff;
  border-bottom: solid 5px #eeffff;
  bottom:0;
  right: 0;
}
.reasonbox ul.white.faq li p {
    font-size:1.4rem;
    line-height:1.8;
    font-weight:300;  
}
@media screen and (max-width: 767px){
.reasonbox ul.white.faq li {
    width:100%;
    background:#fff;
    border-radius:8px;
    padding:30px;
    margin:0 0 15px;  
    box-shadow:0 0 3px #aaa;
    text-align:center;
}    
}
/****************************************

         NEWS

*****************************************/
.newsbox {
    background:#f8f8f8;
    padding:30px;
    border-radius:8px;   
    margin:30px 0;    
}
.newsbox .entrycon {
    border-top:3px dashed #eee;
    margin-top:30px;
    padding:30px 0 0;   
}
.newsbox .entrycontitle {
    background:#eee;
    text-align:center;
    padding:15px;
    margin:0 0 15px;
    color:#00a8ec;   
}
.newsbox .entrycon hr {
    background:#00a8ec;
    margin:10px 0;
}
.newsbox .entrycon a.box {
    background:#ffaa00;
    display:inline-block;
    padding:10px 30px;
    text-align:center;
    color:#fff;
    border-radius:20px;   
}
h2.newstitle {
    font-size:2.4rem;
    letter-spacing:.3rem;   
}
h2.newstitle span {
    font-size:1.2rem;
    letter-spacing:0; 
    line-height:1.8;
    display:block; 
    padding:0 0 5px 0;
}
h2.notfound {
    font-size:2.4rem;
    letter-spacing:.3rem;      
    color:#00a8ec;
    margin-bottom:45px;
}
.newsbox .entrycon a {
    text-decoration:underline;
    color:#ffaa00;   
}
.newsbox .entrycon a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f0c5";
  font-weight: 500;
  font-size:1.4rem;
  padding-left:.5rem;
  line-height:1.6rem;
}
.newsbox .entrycon ul {
    text-align:center!important;   
}
.newsbox .entrycon ul li {
    display:inline;
}
.newsbox .entrycon ul.flexall {
    text-align:center!important;  
    width:100%; 
}
.newsbox .entrycon ul.flexall li{
    width:calc(100% / 5);
    background:#fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	    
}
.newsbox .entrycon ul.flexall li a {
    padding:15px;
    display:block;
    border:1px solid #f8f8f8;
    width:100%;
}
.newslist h2.newstitle {
    font-size:1.6rem;   
    line-height:1.4;
}
.newslist {	
    justify-content:flex-start;  
    margin:30px -30px 0 0;     
}
.newslist li {
    width:calc(100% / 3 - 30px); 
    margin:0 30px 30px 0;  
}
.newslist li img {
    width:100%;
    height:100%;
    aspect-ratio: 3 / 2;
    object-fit:cover;
    background:#f8f8f8;
    margin:0 auto 10px;   
}
.form-horizontal .control-label {
    padding-top: 5px;
    margin-bottom: 0;
    text-align: right;
    vertical-align:middle;
    font-size:1.4rem;
    font-weight:300;
}
.label.req {
    background:#ffaa00;
    margin-left:.3rem;   
}
span.wpcf7-list-item {
    margin-left:1rem;          
}
span.wpcf7-list-item.first {
    margin-left:0;          
}
span.wpcf7-list-item-label {
    margin-left:.3rem;         
}
.form_bt input[type=submit] {
    border: none;
    background: #ffaa00;
    color: #fff;
    padding: 10px 0;
    text-align: center;
    width: 100%;
    letter-spacing: 2px;
    font-size: 16px;
    border-radius: 8px;
}
.form-group {
    margin-bottom: 30px;
}
@media screen and (max-width: 767px){
.entrycon {
    font-size:1.4rem;   
} 

.newslist li img {
    width:100%;
    height:120px;
    object-fit:contain;
    background:#f8f8f8;
    margin:0 auto 10px;   
}
.newslist li {
    width: calc(100% / 2 - 15px);
    margin: 0 0 30px 0;
} 
.newslist {
    justify-content: space-between;
    margin: 30px 0;
}
.newsbox .entrycon ul.flexall {
    text-align: center!important;
    width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;	    
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
}
.newsbox .entrycon ul.flexall li {
    width: calc(100% / 3);
    background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex!important;
    -webkit-flex-wrap:wrap
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;	
}
label {
    margin:0 0 10px;
    font-size:1.2rem;   
}
.label.req {
    background:#ffaa00;
    margin-left:.3rem;   
}
span.wpcf7-list-item {
    margin-left:1rem;          
}
span.wpcf7-list-item.first {
    margin-left:0;          
}
span.wpcf7-list-item-label {
    margin-left:.3rem;         
}
.form_bt input[type=submit] {
    border: none;
    background: #ffaa00;
    color: #fff;
    padding: 10px 0;
    text-align: center;
    width: 100%;
    letter-spacing: 2px;
    font-size: 16px;
    border-radius: 8px;
}
.form-horizontal .control-label {
    padding-top: 5px;
    margin-bottom: 5px;
    text-align: left;
    vertical-align:middle;
    font-size:1.4rem;
    font-weight:300;
}
.newsbox .entrycon ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;		
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content:space-between;	    
}
.newsbox .entrycon ul li {
    width:calc(100% / 2 - 15px);
}
.newsbox .entrycon a.box {
    width:100%;
    background: #ffaa00;
    display: inline-block;
    padding: 10px 10px;
    text-align: center;
    color: #fff;
    font-size:1.3rem;
    border-radius: 20px;
    margin-top:10px;
}
}