palt{
font-feature-settings: "palt";}

#footer a[href^="tel:"] {
	color: #D0E7F1;
}

.marker{
background:linear-gradient(transparent 60%, #fff799 60%);
font-weight:bold; 
}

.more{
	color: #545454;
	padding: 10px 35px 10px 10px;
	background: url(../images/common/arrow.png)no-repeat right center;
}

select{
	font-family: Arial,"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
	color: #333;
	font-weight: 300;
}


input[type="submit"] {
font-family: Arial,"Noto Sans JP","游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
	border: 0;
  font-weight: 500;
  color: #fff;
  border-radius: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
	background-color: #0B57DB;
	border: 1px solid #fff;
}

input[type="submit"]:hover {
	opacity: 0.6;

}

.line-bottom{
	border-bottom: #ddd solid 3px;
	position: relative;
	padding-bottom: 10px;
}

.line-bottom span::after{
	content: "";
	width: 100%;
	height: 3px;
		border-bottom: #001976 solid 3px;
	padding-bottom: 10px;
	display: inline-block;
	position: absolute;
	bottom:0;
	left: 0;
}


/*パンくずリスト
.bread{
	display: none;
}*/
	
/*パンくずリスト*/

	
.breadcrumb {
	border-radius: 0;
	color: #fff;
}
	


.bread ol li a{
	font-weight: 500;
	color: #fff;
}

.detail{
	position: relative;
	padding: 0 100px 0 20px;
	height: 44px;
	line-height: 44px;
}

.detail::after{
	content: "";
	position: absolute;
width: 40px;
	height: 40px;
	top: 50%;
	right: 2px;
	border-radius: 50%;
	transform: translateY(-50%);
	background-image: url(../images/common/detail.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-color: rgba(255,255,255,.3);
}


/*見出し装飾*/

.frame-midashi{
	padding: 10px;
	display: inline-block;
	position: relative;
}

.frame-midashi::before{
content: "";
	width: 100%;
	height: 100%;
	position: absolute;
		border: 1px solid #707070;
	top: 0;
	left: 0;
	z-index: 2;
}

.frame-midashi::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: #FFEA42;
	top: 3px;
	left: 3px;
}

.frame-midashi span{
	position: relative;
	z-index: 5;
}

.line-hand-border{
	line-height: 1.8;
	border-bottom: 3px solid #000;
	position: relative;
}

.line-hand-border::after{
	content: "";
	width: 84px;
	height: 62px;
	background:url(../images/thinking/line.png)no-repeat center center;
	background-size: contain;
	position: absolute;
	bottom: -12px;
}

/*画像固定比率*/
.pict-square {
	position: relative;
	width: 100%;
	padding-bottom: 100%;
	overflow: hidden;
  }
  
.pict3-1 {
	position: relative;
	width: 100%;
	padding-bottom: 33%;
	overflow: hidden;
  }
  
.pict3-2 {
	position: relative;
	width: 100%;
	padding-bottom: 67%;
	overflow: hidden;
}
  
.pict16-9 {
	position: relative;
	width: 100%;
	padding-bottom: 56%;
	overflow: hidden;
}
  .pict-square img,
  .pict3-2 img,
  .pict16-9 img,
  .pict3-1 img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
  }

/*---------------------
headerここから
---------------------*/


#main_img {
	position: relative;
    min-height: 400px;
	z-index: 3;
	height: 70vh;
	max-height: 800px;
	background-color: #191F3D;
}

#main_img::before,#main_img::after{
	content: "";
	position: absolute;
	z-index: 2;
}
#main_img::before{
	width: 80%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(../images/common/main-top.png)no-repeat;
	background-size: contain;
	max-width: 450px;
}

#main_img::after {
	width: 80%;
	height: 100%;
	max-width: 450px;
	right: 0;
	bottom: 0;
	background: url(../images/common/main-bottom.png)no-repeat right bottom;
	background-size: contain;
}
.copy {
	position: absolute;
	top: 50%;
	left:5%;
	transform: translateY(-45%);
	z-index: 3;
	max-width: 260px;
	width: 70%;
}



#main_img .of{
	width: 100%;
	height:100%;
	opacity: 0.7;
}

.important{
	position: absolute;
	bottom:0;
	right: 0;
	width: calc(100% - 1em);
	transform: translateY(10px);
	z-index: 5;
}

/*下層ページトップ*/

.child #main_img {
    min-height: 250px;
    max-height: 350px;
    height: 30vh;
}


.child #main_img::before{
	width: 60%;

}

.child #main_img::after {
	width: 60%;

}


/*メインスライダー*/

.slider-frame{
	padding-top: 35px;
	padding-bottom: 30px;
}

.slider{
	margin-top: auto;
	margin-bottom: 0;
}

.slider .of {
	width: 100%;
	height: 0;
	padding-bottom: 62%;
	overflow: hidden;
	position: relative;
}

.slider .of img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.slick-list{
	overflow: visible !important;
}



/*TOP画面コンテンツ*/
.first-frame {
	background-color: #E0E8EB;
}


.reason_frame,.main_frame {
	background: url(../images/common/reason_bg.png)no-repeat;
}

.course_link a,
.course_link_child a{
	border-radius: 10px;
	text-align: center;
	display: block;
	font-weight: bold;
	color: #fff;
	padding: 30px 0;
	background: url(../images/common/course-btn.png)no-repeat left;
	background-size: contain;
	background-color: #FF6484;
	position: relative;	
}
.course_link a::after,
.course_link_child a::after{
    position: absolute;
    content: "";
    right: 14px;
    top:calc(50% - 4px);
    width: 8px;
    height: 8px;
    border: 2px solid;
    border-color: #fff #fff transparent transparent;
    transform: rotate(45deg);
}

.course_link div:nth-child(2) a,
.course_link_child div:nth-child(2) a{
	background-color: #F39230;
}
.course_link div:nth-child(3) a,
.course_link_child div:nth-child(4) a{
	background-color: #52CFB6;
}
.course_link div:nth-child(4) a,
.course_link_child div:nth-child(6) a{
	background-color: #109FFF;
}
.course_link_child div:nth-child(3) a{
	background-color: #B973FF;
}
.course_link_child div:nth-child(5) a{
	background-color: #7ac650;
}

.about_frame{
	background: url(../images/common/about_bg.png)no-repeat 60% bottom;
}

.news_frame{
	background: url(../images/common/news_bg.png)no-repeat left top;
}

/*新着*/
.tab-link {
	border-bottom: 1px dashed #CFCFCF;
	padding: 8px 8px 15px;
}

.tab-link > div {
	max-width: 500px;
	width: 100%;
}


.tab-link > div .tab {
	display: inline-block;
	padding: 10px;
	border-radius: 6px;
	background: #f0f0f0;
	color: #646670;
	width: 50%;
	text-align: center;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	position: relative;
	cursor: pointer;
}

.tab-link > div .tab.active,
.tab-link > div .tab:hover {
	background-color: #F39230;
	color: #ffffff;
}

.tab-link > div .tab::after{
	content: "";
	position: absolute;
	width: 20px;
	height: 10px;
	border-style: solid;
	border-width: 15px 10px 0 10px;
	border-color: #f39130 transparent transparent transparent;
	bottom: 1px;
	left: 50%;
	transform: translate(-50%, 100%);
	opacity: 0;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.tab-link > div .tab.active::after,
.tab-link > div .tab:hover::after {
	opacity: 1;
}

.view{
	padding: 10px;
	border: 1px solid #ddd;
	text-align: center;
	position: absolute;
	bottom: 10px;
	left: 10px;
	width: calc(100% - 20px);
    display: none;
}


.view.show{
	display: block;
}

.view::before{
	content: "";
    position: absolute;
    left: 15px;
    top: calc(50% - 6px);
    width: 12px;
    height: 12px;
    border: 2px solid;
    border-color: #F39230 #F39230 transparent transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

  .tab-content {
    display: none;
  }
  .tab-content.show {
    display: block;
  }

.address,
.station {
	position: relative;
	padding-left: 18px;
}
.address::before {
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	width: 12px;
	height: 16px;
	background: url(../images/common/icon_map.png) no-repeat 0 0;
	background-size: 100%;
}
.station::before {
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	width: 12px;
	height: 16px;
	background: url(../images/common/icon_access.png) no-repeat 0 0;
	background-size: 100%;
}


/*------------------
記事一覧
--------------------*/
.topic-list .of{
	position: relative;
}

.topic-list .of .cate{
	position: absolute;
	top: 0;
	left: 0;
}

.tag {
	display: inline-block;
}

.tag span{
	background-color: #F2F2F2;
	padding:5px 10px;
	font-size: 13px;
	border-radius: 2px;
	color: #333;
}

.caption{
	background-color: #F1F7FF;
	border:1px solid #72A1E8;
	border-radius: 2px;
	padding: 0 5px;
	margin-right: 5px;
	width: 70px;
	text-align: center;
	display: inline-block;
}

/*---------------------
newsここから
----------------------*/

/*カテゴリ選択リスト*/

.category_frame{
		background: url(../images/common/about_bg.png)no-repeat 60% center;
}


.news-select{
	position: relative;
	height: 50px;
	cursor: pointer;
}

.news-select > div {
	transition: all .2s ease-in;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	border-radius: 2px;
}

/*toggleが開いたとき*/
.news-select.active > div {
	transition: all 300ms;
	box-shadow: 0 3px 56px rgba(54, 75, 97, 0.18);
	z-index: 4;
}

.index1{	z-index: 1;}
.index2{	z-index: 2;}

.news-trigger{
	position: relative;
	padding: 0 10px;
	height: 50px;
}

/*右端の十字アイコン（閉）*/
.news-trigger::before,
.news-trigger:after {
	position: absolute;
	top: calc(50% - 2px);
	right: 15px;
	content: '';
	display: inline-block;
	width: 16px;
	height: 16px;
	border-top: 2px solid #F39230;
	transition-duration: .15s;
}

.news-trigger::after {
	top: calc(50% - 9px);
	right: 22px;
	transform: rotate(90deg);
}

/*右端の十字アイコン（開）*/
.active .news-trigger::before {
	opacity: 0;
	top: calc(50% - 9px);
	right: 22px;
	transform: rotate(90deg);

	transition-duration: .15s;
}

.active .news-trigger::after {
	top: calc(50% - 17px);
	right: 15px;
	transform: rotate(180deg);

	transition-duration: .15s;
}


.news-select ul{
	margin-bottom: 0;
	display: none;
}

.news-select li a{
	display: block;
	padding: 12px 15px;
	color: #333;

transition: 0.4s ease-in;
}

.news-select li a:hover{
    background-color: #F2F2F2;
}

.news-select li:not(:first-of-type) a{
	border-top: 1px solid #F6F9FB;
}


.news-list li a{
	display: block;
	padding: 10px 20px 10px 10px;
	margin: 0 5px;
	border-radius: 6px;
	position: relative;
	transition: 0.4s ease-in;
}

.news-list li a::after{
content: "";
position: absolute;
right: 15px;
top:calc(50% - 6px);
width: 12px;
height: 12px;
border: 2px solid;
border-color: #5580C1 #5580C1 transparent transparent;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.news-list li a:hover{
	background-color: rgba(49,54,72,.05);
}

.news-list li .badge{
	padding: 5px 0;
	width: 100px;
	margin-right: 10px;
}


.news-list li a span{
	padding: 2px;
	margin-right: 5px;
	display: inline-block;
}

/* カリキュラム */
.btn_course {
	border: solid 2px #001976;
	border-radius: 8px;
	padding: 10px;
	background: rgba(255,255,255,.7);
	position: relative;
}
.btn_course::after {
	content: "";
	position: absolute;
	right: 10px;
	top: calc(50% - 4px );
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: #001976 #001976 transparent transparent;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.dl_course dt,
.dl_curriculum dt {
	width: 100px;
	font-weight: normal;
	text-align: center;
	background: #001976;
	color: #fff;
	border-radius: 6px;
	padding-top: 2px;
	padding-bottom: 3px;
	margin-bottom: 5px;
}
.dl_course dd {
	padding-top: 2px;
	padding-bottom: 3px;
	margin-bottom: 15px
}
.dl_curriculum dd {
	padding-top: 2px;
}

/*教室案内*/
.school_map {
    border: 2px solid #001976;
    position: relative;
    padding-bottom: 120%;
    height: 0;
    overflow: hidden;
    border-radius: 10px;
}
.school_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*よくある質問*/
.faq_list dt{
	background-color: #E1E1E1;
	padding:15px 50px 16px 70px;
	font-weight: bold;
	position: relative;
	cursor: pointer;
	margin-bottom: 10px;
}
.faq_list dt::before{
	position: absolute;
	content: "Q";
	font-size: 24px;
	color: #fff;
	background-color: #F39230;
	width: 40px;
	height: 40px;
	line-height: 35px;
	text-align: center;
	border-radius: 50%;
	top: 50%;
	left: 15px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.faq_list dt::after{
	content: "";
	position: absolute;
	border-left: #001976 3px solid;
	border-bottom: #001976 3px solid;
	height: 16px;
	width: 16px;
	top: 45%;
	right: 13px;
	-webkit-transform: rotate(-45deg) translateY(-55%);
	transform: rotate(-45deg) translateY(-55%);
}
.faq_list dd{
	display: none;
}
.faq_list dd{
	border: solid 1px #E1E1E1;
	padding: 25px 15px;
	margin-bottom: 30px;
}

/* 思考教育 */
.link-list a{
	display: flex;
	position: relative;
	align-items: center;
	border:1px solid #707070;
	width: 100%;
	color: #222;
	margin-bottom: 18px;
	padding: 0 35px 0 5px;
	transition: background-color .6s;
}

.link-list a::after {
    content: "";
    position: absolute;
    right: 15px;
    top: calc(50% - 7px );
    width: 14px;
    height: 14px;
    border: 2px solid;
    border-color: #1A1311 #1A1311 transparent transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}


.link-list a:hover{
	background-color: #D0E7F1;
}

.link-list a > div{
	width: 45px;
	height: 50px;
	display:flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}
.link-list a > div img{
	height: 30px;
}

.link-list a > span{
	line-height: 1.4;
	padding: 10px 0;
	font-size: 18px;
}




/*吹き出し*/
.bubble{
	position: relative;
    border: 1px solid #313648;
    padding:18px 15px;
    margin-bottom: 23px;
	font-weight: 600;
	font-size:26px;
	color: #1A1311;
    background-color: #fff;
}

.bubble::before {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 50px;
    margin-left: -15px;
    border: 10px solid transparent;
    border-top: 10px solid #fff;
    z-index: 2;
}

.bubble::after{
    content: "";
    position: absolute;
    bottom: -22px;
    left: 51px;
    margin-left: -17px;
    border: 11px solid transparent;
    border-top: 11px solid #313648;
    z-index: 1;
}

.voice{
	position: relative;
    border: 1px solid #f39230;
    padding:18px 15px;
    background-color: #fff;
}
.voice:after, .voice:before {
    top: 100%;
    left: 80%;
    border: solid transparent;
    content: "";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}
.voice::before {
	border-color: rgba(243, 146, 48, 0);
    border-top-color: rgb(243, 146, 48);
    border-width: 18px;
    margin-left: -18px;
}
.voice::after{
    border-color: rgba(255, 255, 255, 0);
    border-top-color: #ffffff;
    border-width: 17px;
    margin-left: -17px;
}

.think-menu a{
	display: block;
	border-bottom: 1px dashed #E1E1E1;
}

.btn_think {
	position: relative;
	display: block
}
.btn_think::after {
	position: absolute;
	content: "";
	left:0;
	top:0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(0,0,0,.2);
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.btn_think:hover::after {
	background: rgba(0,0,0,.4);
}
.think_title {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
	color: #fff;
	width: 90%;
	z-index: 2;
}

.flow li{
  position: relative;
	border: 1px solid #313648;
	padding: 10px;
	margin-bottom: 23px;
	border-radius: 6px;
	background-color: #fff;
}

.flow li:not(:last-of-type)::before {
  content: "";
  position: absolute;
  bottom: -20px;
  left: 50px;
  margin-left: -15px;
  border: 10px solid transparent;
  border-top: 10px solid #fff;
  z-index: 2;
}

.flow li:not(:last-of-type)::after {
  content: "";
  position: absolute;
  bottom: -22px;
  left:51px;
  margin-left: -17px;
  border: 11px solid transparent;
  border-top: 11px solid #313648;
  z-index: 1;
}

.arrow {position: relative;}
.arrow::after{
    position: absolute;
    content: "";
    left: 50%;
	transform: translateX(-50%);
    bottom: -15px;
    width: 10px;
    height: 10px;
    border: 3px solid;
    border-color: #333 #333 transparent transparent;
    transform: rotate(135deg);
}

/* 卒業生 */
/* 桜の花びらのスタイル */
.petal {
  position: absolute;
  background-color: #ffc0cb; /* 花びらの色 */
  border-radius: 150% 0 150% 0;
  animation: animate-petal 10s linear;
}

.petal::after {
  content: "";
  position: absolute;
  top: -14%;
  left: -10%;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #ffc0cb;
  border-radius: 150% 0 150% 0;
  transform: rotate(15deg);
}

/* 花びらが降るアニメーション */
@keyframes animate-petal {
  0% {
    top: 0;
    opacity: 0;
    transform: rotate(0deg);
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    top: 100vh;
    transform: rotate(3000deg);
  }
}
.report_img {
	height: 190px;
}
.midashi_question {
	background-color: #E1E1E1;
	padding:12px 50px 13px 60px;
	font-weight: bold;
	position: relative;
	cursor: pointer;
}
.midashi_question.pr10 {
	padding:12px 10px 10px 60px;
	cursor: auto;
}
.midashi_question::before, .midashi_question2::before {
	position: absolute;
	content: "Q";
	font-size: 20px;
	color: #fff;
	background-color: #F39230;
	width: 35px;
	height: 35px;
	line-height: 30px;
	text-align: center;
	border-radius: 50%;
	top: 50%;
	left: 12px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/* 教師 */
.ol_btn {
	border-top: dotted 1px #ccc;
	font-size: 18px;
	font-weight: 700;
	counter-reset:list;
	list-style-type:none;
	padding:0;
}
.ol_btn li{
	position:relative;
	padding: 15px 5px 14px 35px;
	border-bottom: dotted 1px #ccc;
}

.ol_btn li:before{
	counter-increment: list;
	content: counter(list);
	position: absolute;
	left: 5px;
	text-align: center;
	width: 20px;
	height: 20px;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 700;
	background: #001976;
	color: #fff;
	border-radius: 10px;
	line-height: 120%;
	font-size: 17px;
	font-family: 'arial narrow', sans-serif;
}
.ol_btn li a {
	color: #333;
	display: block;
	position: relative;
	padding-right: 15px;
}
.ol_btn li a::after {
	content: "";
	position: absolute;
	right: 10px;
	top: calc(50% - 4px );
	width: 8px;
	height: 8px;
	border: 2px solid;
	border-color: #001976 #001976 transparent transparent;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.interview_frame {
	box-shadow: 0px 0px 8px 1px rgba(10,10,10,0.2);
}

.interview-list{
	max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.interview-list .of{
	width: 100%;
	height: 0;
	padding-bottom: 100%;
	position: relative;
	overflow: hidden;
	border-radius: 50%;
}

.interview-list a{
	max-width: 300px;
	margin-left: auto;
	margin-right: auto;
}

.interview-list .of img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.fixed-link{
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
z-index: 30;
	box-shadow: 0 -8px 16px rgb(0 0 0 / 15%);
}

.fixed-link a{
	transition: background-color .4s;
}

.fixed-link a::after{
	content: "";
	position: absolute;
	width: 10px;
	height: 10px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	top: 50%;
	right: 20px;
	transform: translateY(-50%)rotate(-45deg);
}

/*-------------------------
footer ここから
--------------------------*/

.foot-link a{
display:flex;
	text-align: center;
	color: #ffffff;
	align-items: center;
	justify-content: center;
	min-height: 100px;
	font-size: 23px;
	font-weight: bold;
}

#footer{
	color: #fff;
}

#footer a{
	color: #fff;
	transition: 0.6s;
	font-size: 14px;
}

#footer a:hover{
	opacity: 0.5;
}

.sns{
	text-align: center;
}



/* 新着情報 */
.local_navi {
	background-color: #F6F9FB;
}
.local_navi .navigation li a{
	display: block;
    border-radius: .25rem!important;
	padding: .5rem;
	color: #333;
	background-color: #fff;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.local_navi .navigation li a:hover{
	opacity: 0.6;
}

.local_navi .navigation li {
	position: relative;
    width: 100%;
	padding-right: 10px!important;
    padding-left: 10px!important;
    margin-bottom: .5rem !important;
}

.kiji_frame ul li {
  position: relative;
	padding-left: 1em;
}
.kiji_frame ul li::after {
  display: block;
  content: '';
  position: absolute;
  top: 12px;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: #1F8EFC;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.kiji_frame ol{
	counter-reset:list;
	list-style-type:none;
	padding:0;
}
.kiji_frame ol li{
	position:relative;
	padding-left: 20px;
}

.kiji_frame ol li:before{
	counter-increment: list;
	content: counter(list);
	position: absolute;
	left: -5px;
	text-align: center;
	width: 15px;
	top: 0;
	font-weight: 700;
	font-family: 'arial narrow', sans-serif;
}

.kiji_frame ol li::after{
	content: ".";
	position: absolute;
	left: 7px;
	top: 0;
}
.kiji_frame .cal-ol li {
	margin-bottom: 10px;
}
.kiji_frame .cal-ol li:last-child {
	margin-bottom: 0;
}


.kiji_frame img {
	max-width: 100%;
	height: auto;
	border: 1px solid #ddd;
}

.kiji_frame h1{
	color: #001976;/*文字色*/
  padding: 0.5em 0;/*上下の余白*/
  border-top: solid 3px #001976;/*上線*/
  border-bottom: solid 3px #001976;/*下線*/
	font-size: 36px;
margin-bottom: 25px;
	font-weight: 600;
	margin-top: 20px;
}

.kiji_frame h2 {
  position: relative;
	color: #fff;
	font-size: 30px;
	padding: 10px 5px 10px 15px;
  background: #000e42;
	margin-bottom: 25px;
	margin-top: 20px;
}

.kiji_frame h2:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #000e42;
  width: 0;
  height: 0;
}


.kiji_frame h3 {
	border: solid 1px #999;
	padding: 12px 5px 12px 15px;
	position: relative;
	font-size: 26px;
	font-weight: 600;
	margin-bottom: 25px;
	margin-top: 20px;
}

.kiji_frame h4 {
	background-color: #E1E1E1;
	padding: 10px 5px 10px 15px;
	position: relative;
	font-size: 23px;
	line-height: 1.4;
	font-weight: 600;
	margin-bottom: 20px;
	position: relative;
	border-left: #F39230 5px solid;
}

.kiji_frame h5{
	font-size: 22px;
    line-height: 1.4;
	border-bottom: 1px #CCCCCC solid;
	    font-weight: 600;
	margin-bottom: 20px;
	padding-bottom: 10px;
}
.kiji_frame h6{
    font-size: 21px;
    line-height: 1.4;
	color: #F39230 ;
	margin-bottom: 20px;
	font-weight: 600;
}

/*ページナビ*/
.wp-pagenavi {
	clear: both;
	font-size: 14px;
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	border: none;
	background: #EEF2F5;
	padding: 6px 10px;
	margin: 2px;
	display: inline-block;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
background: -webkit-linear-gradient(left, #2228F6 0%, #1F8EFC 100%);
    background: linear-gradient(90deg, #2228F6 0%, #1F8EFC 100%);
	color: #fff;
	border: none;
}

.wp-pagenavi span.current {
	font-weight: 500;
}

/*
--------------------------------------
画面幅576px以上（576px ～）
--------------------------------------
*/

@media print, screen and (min-width:576px){

#main_img {
    min-height: 500px;
}
.copy {
	max-width: 320px;
}
.child #main_img {
    min-height: 320px;
	max-height: 420px;
	height: 50vh;
}
	
.child #main_img::before{
	max-width: 400px;
}

.child #main_img::after {
	max-width: 400px;
}
	
.slider-frame > div {
	max-width: 500px;
}

.footer-btn{
	min-width: 320px;
}
	
.local_navi .navigation li{
		-ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}

/*カリキュラム*/
.dl_course dt, .dl_curriculum dt {
	float: left;
}
.dl_course dd, .dl_curriculum dd {
	margin-left: 115px;
}

/*教室案内*/
.school_map {
    padding-bottom: 70%;
}

/*卒業生*/
.report_img {
	height: 250px;
}

/* 教師 */
.ol_btn {
	font-size: 24px;
}

/*採用情報*/
.joblist .item{
	flex-flow: row;
	color: #333;
}

.joblist-img img {
	width: 150px;
max-height:inherit;
}
.joblist dl{
	font-size: 14px;
}
.joblist dd{
	padding-left: 100px;
}
.fixed-b .btn_tel{
	display: block;
}

/*会社案内*/
.company_img{
	height: 400px;
}
	
/* 組織図 */
.side_section {
	left: calc( 50% + 40px );
}
.side_section::before {
	left: -40px;
	width: 40px;
}
.section {
    padding: 20px 10px 20px 9px;
}
	
/*オリジナル商品*/
.original .row{
	position: relative;
}

.original .f-img{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}
	
.original .f-img .of{
	height:inherit;
}

.original .card-body {
	min-height: 350px;
}
}

/*
--------------------------------------
画面幅768px以上（768px ～）
--------------------------------------
*/
@media print,
screen and (min-width: 768px) {


.copy {
	left:25%;
	transform:translateX(-50%)translateY(-40%);
}	

	
.first-txt{
	margin-right: -60px;
	position: relative;
	z-index: 3;
}


.first-img::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 30%;
	height:100%;
background: rgb(224,232,235);
background: linear-gradient(270deg, rgba(224,232,235,0.022572481459465554) 0%, rgba(224,232,235,1) 100%);
	z-index: 2;
}


.slider-frame > div {
	max-width: 800px;
}

/* 思考教育 */
.link-list a > div{
	width: 100px;
	padding-right: 18px;
}

.link-list a > div{
	width: 70px;
	height: 60px;
	padding-right:10px ;
}
.link-list a > div img{
	height: 40px;
}

.link-list a > span{
	line-height: 1.4;
	padding: 10px 0;
	font-size: 23px;
}

.think-menu a{
	border-bottom:0;
}

/*吹き出し*/
.bubble{
	font-size: 28px;
}
	
/*卒業生*/
.report_img {
	height: 180px;
}

/*新着情報*/
.view{
	padding-left: 50px;
	border:0;
	text-align: right;
	position: relative;
	width: auto;
	top: 8px;
	left: auto;
}

.arrow::after{
    right: -20px;
	left: auto;
	transform: translateX(0);
    bottom: auto;
	top: 50%;
	transform: translateY(-50%);
    transform: rotate(45deg);
}

.sns{
	text-align: left;
}


}

/*
================================
PC表示用ここから（992px ～）
================================
*/
@media print, screen and (min-width: 992px) {


	.slider-frame > div {
		max-width: 1000px;
	}
	

	.fixed-link{
		top: calc(90px + 10%);
		bottom: auto;
		left: auto;
		right: 0;
		box-shadow: 0 0 16px rgb(0 0 0 / 15%);
	}

	.fixed-link a{
		writing-mode: vertical-rl;
		width:60px ;
		font-size: 14px;
	}
	
	.fixed-link a::after{
		content: none;
	}


.bread ul{
	padding:0 50px 0 100px;
}
	
/*代表挨拶*/
	
.top-message{
	margin-bottom:80px;
	padding-bottom: 50px;
	margin-right: -100px;
	padding-right: 100px;
}

.top-img{
	min-width: 300px;
	width: 500px;
	height: auto;
}
	
/*採用情報*/	
.fixed-b{
	border: 0;
	position: relative;
}
	
/*教師*/
.interview-list{
	max-width: 980px;

}
	/*吹き出し*/
.bubble{
	font-size: 30px;
}

.link-list a > span{
	font-size: 24px;
}

/*footer*/

.anchor_ajust {
	padding-top: 70px;
	margin-top: -70px;
}

}/*900px表示終わり*/


/*
-------------------------------
画面幅1200以上（1200px ～）
-------------------------------
*/
@media (min-width: 1200px) {
.about_frame{
	background-position: right bottom;
}

.slider-frame > div {
	max-width: 1200px;
}

}

.movie_frame {
	max-width: 800px;
}
.movie-wrap {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}

.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}