.sp {
	display: none;
}
@media screen and (max-width: 640px) {
	.schoolmaintext {
		font-size: 14px;
		font-family: "���S�V�b�N��", "Yu Gothic Medium", "Yu Gothic", YuGothic, sans-serif;
		line-height: 1.67em;
		width: 100%;
		max-width: 230px;
		margin: 0 0 25px 20px;
	}
	h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
		font-size: 140%;
	}
	#wrapper {
		min-width: 100%;
	}
	.container {
		width: 100%;
		padding: 0 3%;
	}
	.sp {
		display: block;
	}
	.sp_c {
		text-align: center;
	}
	.sp_l {
		text-align: left;
	}
	.pc {
		display: none;
	}
	.image-l, .image-r,.image-l_programming, .image-r_programming,.image-l_robot, .image-r_robot, .image-l_ol,.image-r_ol {
		float: none;
		text-align: center;
		margin: 0 0 15px;
	}
	/*header*/
	#header, #header.fixed {
		padding: 10px 0;
	}
	#header .container {
		align-items: center;
	}
	.logo {
		width: 235px;
	}
	.menu-icon span {
		width: 24px;
		height: 3px;
		left: calc(50% - 12px);
	}
	.menu-icon span:nth-child(1) {
		top: 15px;
	}
	.menu-icon span:nth-child(2) {
		top: 23px;
	}
	.menu-icon span:nth-child(3) {
		top: 31px;
	}
	.menu-icon {
		padding: 20px 5px 10px;
		width: 55px;
		height: 55px;
		font-size: 10px;
		margin: 0;
		flex-shrink: 0;
	}
	.menu-icon.active span:nth-child(1), .menu-icon.active span:nth-child(3) {
		top: 23px;
	}
	#gnavi {
		top: 75px;
		height: calc(100% - 75px);
		padding: 40px 0;
	}
	#gnavi .container {
		display: block;
	}
	.gnv-col {
		width: 100%;
		margin: 0 0 20px;
		padding: 0 20px;
	}
	.gnv-list li {
		line-height: 1.8em;
		margin: 0 0 8px;
	}
	.gnv-col:last-child {
		max-width: 300px;
		margin: 0 auto;
		min-width: auto;
	}
	/*Mainvisual*/
	#index #mainvisual h2,
	#index #mainvisual .h2 {
		font-size: 14vw;
		margin: 0 0 4vw;
	}
	.idx-main-h2txt {
		font-size: 5vw;
		margin: -4vw 0 2vw;
	}
	.idx-main-txt01 {
		width: 32vw;
		height: 22vw;
		font-size: 4vw;
		padding-top: 3.5vw;
	}
	.idx-main-txt02 {
		width: 54%;
	}
	.idx-main-bnr {
		margin-bottom: 0;
		padding: 0 3%;
	}
	.idx-main-bnr li:not(:last-child) {
		margin-right: 10px;
	}
	.idx-main-bnr li {
		width: calc(50% - 5px);
	}
	.idx-main-bnr li a {
		height: 100%;
		font-size: 3.7vw;
		border-width: 0.8vw;
	}
	.idx-main-bnr li:nth-child(1) .idx-main-bnr-img {
		width: 48%;
		top: 0;
		margin-right: -5%;
	}
	.idx-main-bnr li a:before {
		border-width: 4.5vw 4.5vw 0 0;
	}
	.idx-main-bnr li a:after {
		border-width: 0 0 4.5vw 4.5vw;
	}
	.idx-main-bnr li:nth-child(2) .idx-main-bnr-img img {
		width: 65%;
	}
	.idx-main-bnr li:nth-child(2) .idx-main-bnr-img {
		width: 37%;
	}
	.idx-main-bnr-txt {
		font-size: 100%;
		margin: 5% auto;
	}
	.box01 {
		padding: 50px 0;
	}
	.idx-h3 {
		font-size: 30px;
	}
	.box01 .idx-h3-en {
		font-size: 16px;
		margin: 0;
	}
	.box01 .idx-h3-en:before, .box01 .idx-h3-en:after {
		background: #ea6060;
		top: -2px;
		width: 6px;
		height: 6px;
	}
	.idx-main-btn {
		top: auto;
		bottom: -50px;
		width: 100%;
		left: 0;
		right: auto;
		display: flex;
		justify-content: space-between;
		padding: 5px;
		background: rgba(255, 255, 255, 0.9);
	}
	.idx-main-btn.fixed {
		bottom: 0;
	}
	.idx-main-btn li:not(:last-child) {
		margin-bottom: 0;
	}
	.idx-main-btn li {
		width: calc(50% - 3px);
	}
	.idx-main-btn li a {
		flex-direction: row;
		width: 100%;
		height: 100%;
		padding: 3px;
		font-size: 3vw;
	}
	.idx-main-btn-txt {
		writing-mode: inherit;
		writing-mode: rl-tb;
	}
	.idx-main-btn li a:before {
		margin: 0 7px 0 0;
		width: 30px;
		height: 30px;
		background-size: 16px auto !important;
	}
	.b01-list {
		margin: 0 0 30px;
		padding: 0 80px;
	}
	.b01-top {
		display: block;
		margin: 0 0 25px;
		text-align: center;
	}
	.b01-btn {
		margin: 0;
		text-align: center;
	}
	.b01-btn a {
		width: 200px;
		margin: 0 auto;
	}
	.box01 .slick-arrow {
		position: absolute;
		z-index: 5;
		width: 65px;
		height: 65px;
		border: none;
		outline: none;
		top: calc(50% - 32px);
		text-indent: -500000px;
		cursor: pointer;
	}
	.box01 .slick-prev {
		background: url("../images/b01_prev.png") no-repeat;
		background-size: 100% auto;
		left: 48px;
	}
	.box01 .slick-next {
		background: url("../images/b01_next.png") no-repeat;
		background-size: 100% auto;
		right: 48px;
	}
	.box01 .slick-list {
		overflow: visible;
	}
	.b01-item.slick-slide img {
		max-width: none;
		width: 100%;
	}
	.b01-item {
		margin: 0 50px;
	}
	.b01-itm-date {
		margin: 0 0 5px;
		font-size: 12px;
	}
	.box02 {
		padding: 50px 0;
	}
	.box02 .container {
		display: block;
	}
	.under #content .top-box02 {
		padding: 30px 0px;
	}
	.under #content .top-box02 .b02-left {
		width: 100%;
		padding-right: initial;
		border-right: initial;
		margin-right: initial;
	}
	.b02-left {
		width: 100%;
		padding: 0;
		margin: 0 0 40px;
		border: none;
	}
	.idx-h3-en {
		font-size: 16px;
		margin: 0;
	}
	.idx-h3-en:before, .idx-h3-en:after {
		width: 7px;
		height: 7px;
		top: -1px;
	}
	.b02-left-txt {
		font-size: 14px;
		padding-right: 25vw;
		text-align: left;
	}
	.b02-left .idx-h3 {
		padding-right: 25%;
	}
	.b02-left-main {
		padding: 4% 5%;
		background-size: auto 90%;
		background-position: right 10% center;
	}
	.b02-left-link dt {
		font-size: 14px;
		width: 120px;
	}
	.b02-left-link li a {
		font-size: 14px;
	}
	.b02-left-main:after {
		width: 25vw;
		height: 28vw;
		top: -29vw;
		right: 0;
	}
	.b02-right {
		width: 100%;
	}
	.b02-right .idx-h3-en {
		margin: 0;
	}
	.b02-right .idx-h3 {
		margin: 0 0 20px;
	}
	.b02-right-bnr {
		width: 100%;
		max-width: 360px;
		margin: 0 auto;
		border-radius: 10px;
		overflow: hidden;
	}
	.b02-right-bnr:not(:last-child) {
		margin-bottom: 15px;
	}
	.box03 {
		padding: 50px 0 20px;
	}
	.b03-list {
		padding: 0 20px;
	}
	.b03-item {
		width: calc(50% - 15px);
		margin: 0 0 30px;
	}
	.b03-itm-ttl {
		white-space: normal;
		font-size: 20px;
	}
	.b03-itm-txt {
		margin: 0;
	}
	.b03-itm-point {
		font-size: 12px;
		width: 60px;
		height: 60px;
	}
	.b03-item:nth-child(2n+2) .b03-itm-point {
		right: -30px;
		bottom: -20px;
	}
	.b03-itm-point:after {
		left: -2px;
		top: 8px;
		border-width: 5px 10px 5px 0;
	}
	.b03-item:nth-child(2n+1) .b03-itm-point {
		left: -30px;
		top: -20px;
	}
	.b03-itm-point span {
		font-size: 24px;
	}
	.b03-item:nth-child(4n+1) .b03-itm-point, .b03-item:nth-child(4n) .b03-itm-point {
		width: 80px;
		height: 66px;
	}
	.b03-item:nth-child(3) .b03-itm-point:after {
		right: -3px;
	}
	.box04 {
		padding: 50px 0;
		background: url(../images/b04_bg.jpg) no-repeat bottom right 20%, url(../images/b04_bg01.jpg);
	}
	.box04 .idx-h3 img {
		width: 230px;
	}
	.box04 .idx-h3 {
		margin: 0 0 15px;
	}
	.b04-txt {
		font-size: 16px;
		margin: 0 0 30px;
	}
	.b04-list {
		display: block;
	}
	.b04-item {
		width: 100%;
		margin: 0 0 10px;
		display: flex;
		justify-content: space-between;
		padding: 3%;
	}
	.b04-itm-img {
		flex-shrink: 0;
		width: 45%;
	}
	.b04-itm-main {
		width: 52%;
	}
	.b04-itm-num {
		margin: 0 auto 10px;
		width: 50px;
		height: 50px;
		font-size: 26px;
	}
	.b04-itm-ttl {
		font-size: 22px;
	}
	.box05 {
		height: 200px;
		background-size: auto 100%;
		background-image: url("../images/b05_bg_sp.jpg");
	}
	.box05:before {
		width: calc(100% - 20px);
		height: calc(100% - 20px);
		top: 10px;
		left: 10px;
	}
	.b05-txt {
		width: 90%;
	}
	.box06 {
		padding: 50px 0 20px;
	}
	.b06-list {
		padding: 0;
		display: block;
	}
	.b06-item {
		width: 100%;
		margin: 0 0 40px;
		padding: 3% 3% 1px;
	}
	.b06-itm-ttl {
		position: relative;
		top: 0;
		left: 0;
		writing-mode: unset;
		text-align: center;
		font-size: 26px;
		margin: 0 0 10px;
	}
	.b06-itm-en {
		writing-mode: unset;
		transform: none;
		top: 20px;
		right: 20px;
		font-size: 10vw;
	}
	.b06-itm-main {
		overflow: hidden;
		display: block;
	}
	.b06-itm-img {
		float: left;
		margin: 0 20px 10px 0;
	}
	.b06-itm-cnt {
		overflow: hidden;
		margin: 30px 0 20px;
		height: auto;
	}
	.b06-itm-txt {
		overflow: hidden;
		margin: 0 0 20px;
		font-size: 17px;
	}
	.b06-item .idx-btn {
		margin-bottom: -19px;
	}
	.b06-item:nth-child(1) .idx-btn a {
		border-color: #8ae082;
	}
	.b06-item:nth-child(2) .idx-btn a {
		border-color: #e39be8;
	}
	.b06-item:nth-child(3) .idx-btn a {
		border-color: #7390e8;
	}
	.b06-item:nth-child(2) .b06-itm-txt {
		text-align: left;
	}
	.b06-list:after {
		display: none;
	}
	.b06-item:nth-child(2) .b06-itm-ttl, .b06-item:nth-child(3) .b06-itm-ttl {
		right: 0;
		top: 0;
	}
	.b06-main-txt {
		width: 90%;
		top: 50px;
	}
	.b06-main-txt ul:nth-child(1) li:not(:last-child) {
		width: 200px;
	}
	.b06-main-txt ul {
		padding: 5px;
		margin: 0 0 25px;
	}
	.b06-main-txt ul:nth-child(1) li:last-child {
		width: 100px;
		height: 66px;
		right: calc(100% + 60px);
		top: -28px;
	}
	.b06-main-txt ul:nth-child(1) li:last-child:after {
		width: 90px;
		height: 72px;
		bottom: -27px;
		left: calc(100% - 18px);
	}
	.b06-main-txt li:last-child {
		font-size: 12px;
	}
	.b06-main-txt ul:nth-child(2) li:not(:last-child) {
		width: 350px;
	}
	.b06-main-txt ul:nth-child(2) li:nth-child(1) {
		width: 180px;
	}
	.b06-main-txt li:not(:last-child) {
		font-size: 14px;
	}
	.b06-main-txt ul:nth-child(2) li:nth-child(2) {
		width: 330px;
		margin: 5px 0 0 0;
	}
	.b06-main-txt ul:nth-child(2) li:nth-child(3) {
		width: 220px;
		margin: 5px 230px 0 0;
		font-size: 130%;
	}
	.b06-main-txt ul:nth-child(2) li:last-child {
		width: 100px;
		height: 66px;
		right: calc(100% + 70px);
		top: -28px;
	}
	.b06-main-txt ul:nth-child(2) li:last-child:after {
		width: 85px;
		height: 80px;
		bottom: -32px;
	}
	.b06-main-txt ul:nth-child(3) li:nth-child(3) {
		width: 250px;
		margin: 5px 380px 0 0;
	}
	.b06-main-txt ul:nth-child(3) li:not(:last-child) {
		width: 300px;
	}
	.b06-main-txt ul:nth-child(3) li:nth-child(2) {
		width: 450px;
		margin: 5px 50px 0 0;
	}
	.b06-main-cnt {
		width: 725px;
		position: relative;
		padding-right: 15px;
	}
	.b06-main {
		overflow: auto;
		padding: 20px 15px 40px;
	}
	.b06-main-about img {
		max-width: initial;
	}
	.b06-main-txt ul:nth-child(3) li:last-child {
		width: 100px;
		height: 61px;
		left: 25px;
		top: -5px;
	}
	.b06-main-txt ul:nth-child(3) li:last-child:after {
		width: 50px;
		height: 58px;
		bottom: -17px;
	}
	.b06-main-list li {
		width: calc((100%/6) - 3px);
		height: 410px;
	}
	.b06-main-itm-txt {
		font-size: 14px;
		letter-spacing: 0;
	}
	.box07 {
		padding: 50px 0;
	}
	.box07 .container {
		display: block;
	}
	.b07-new, .b07-column {
		width: 100%;
	}
	.b07-new {
		margin: 0 0 40px;
	}
	.b07-h3:before {
		width: 40px;
		height: 40px;
		background-size: 22px auto !important;
	}
	.b07-h3 {
		font-size: 30px;
		padding-left: 50px;
	}
	.b07-h3-en {
		font-size: 16px;
	}
	.b07-top {
		align-items: center;
		margin: 0 0 15px;
	}
	.b07-btn a:before {
		padding: 3px;
		margin-right: 8px;
	}
	.b07-itm-date {
		font-size: 13px;
		margin: 0 0 5px;
	}
	.b07-itm-ttl {
		font-size: 14px;
	}
	.b07-list a {
		padding: 12px 3px;
	}
	.footer01 {
		padding: 80px 0 40px;
	}
	.f01-ttl-en {
		font-size: 14px;
	}
	.f01-ttl {
		font-size: 32px;
		margin: 0 0 20px;
	}
	.f01-ttl-jp {
		border-bottom-width: 5px;
		padding: 0 5px 10px;
	}
	.f01-ttl-jp:after {
		border-width: 10px 8px 0 8px;
		bottom: -15px;
	}
	.f01-txt {
		font-size: 16px;
	}
	.f01-btn li {
		width: calc(50% - 5px);
		margin-right: 10px;
	}
	.f01-btn a {
		height: 100%;
		font-size: 18px;
		padding: 10px 30px 10px 10px;
	}
	.f01-btn a:after {
		width: 7px;
		height: 14px;
		right: 20px;
		top: calc(50% - 7px);
	}
	.f02-top-link {
		display: none;
	}
	.f02-main {
		flex-direction: column;
		align-items: center;
	}
	.f02-logo {
		margin: 0 0 20px;
	}
	.f02-tel {
		margin: 0 0 20px;
	}
	.f02-time {
		margin: 0;
		width: 100%;
	}
	.footer02 {
		padding: 40px 0;
	}
	.copyright {
		font-size: 10px;
		padding: 15px 0;
		margin: 0 0 50px;
	}
	#totop {
		width: 50px;
		right: 3%;
	}
	/*Under*/
	section, .section {
		margin-bottom: 50px;
	}
	.under #mainvisual {
		height: 300px;
		padding-top: 50px;
	}
	.under .under-h2 {
		font-size: 32px;
		padding-bottom: 10px;
		line-height: 1em;
		margin: 0;
	}
	.under .under-h2 span {
		line-height: 0.01em;
	}
	.under .under-h2:after {
		width: 80px;
		height: 3px;
		left: calc(50% - 40px);
	}
	.topic-path {
		margin-bottom: 70px;
	}
	.topic-path ul {
		width: 100%;
		padding: 10px 3%;
	}
	.under #content, .under #content.column-post-1 {
		width: 100%;
		padding: 0 3%;
	}
	.under .under-h3 {
		font-size: 22px;
		margin-bottom: 20px;
	}
	.under .under-h3 .eng {
		margin-top: 0;
	}
	.under h4, .under .under-h4 {
		font-size: 20px;
		margin-bottom: 15px;
		text-align: center;
	}

	.tbl-break th {
		text-align: center;
		border: none;
	}
	.tbl-break tr:first-child th {
		border-top: 1px solid #e1e1e1;
	}
	.tbl-break th, .tbl-break td {
		display: block;
		width: 100%;
	}
	.under h5, .under .under-h5 {
		font-size: 19px;
	}

	.under_col h2,.under_col .h2 {
        text-align: center!important;
        font-size: 22px!important;
        margin-bottom: 20px!important;
       	font-weight: bold!important;
	}
	.under-frm {
		padding: 30px 20px;
	}
	.under-slider li img {
		max-width: 100%;
		max-height: 400px;
	}
	.under-slider li {
		margin-bottom: 15px;
	}
	.under-slider-nav li {
		width: calc(100%/3 - 4px);
		margin: 0 2px 4px;
	}
	.under h5:before, .under-list li:before {
		top: 10px;
	}
	.anc-link li {
		width: calc(50% - 10px);
		margin: 0 5px 10px;
	}
	.under h5.faq-q, .under h4.faq-q {
		text-align: left;
	}
	.under h5.faq-q:before, .under h4.faq-q:before, .faq-a:before {
		padding: 2px 7px 6px;
		height: 34px;
	}
	.faq-a:before {
		top: -4px;
		padding: 1px 8px 4px;
	}
	.under #content:after {
		right: 5px;
		bottom: -60px;
		width: 110px;
		height: 60px;
	}
	.under #content section:nth-child(3):before {
		left: auto;
		right: 0;
		width: 50px;
		height: 50px;
		bottom: -40px;
	}
	.under #content section:nth-child(7):before {
		width: 50px;
		height: 50px;
		left: 0;
		bottom: -40px;
	}
	.under #content section:nth-child(10):before {
		width: 60px;
		height: 60px;
		bottom: -45px;
	}
	.under #content section:nth-child(14):before {
		width: 50px;
		height: 50px;
		left: calc(50% - 25px);
		bottom: -45px;
	}
	.ov-cnt {
		height: auto;
		flex-direction: column;
		padding: 15px 12px;
	}
	.ov-img {
		width: auto;
		width: 100%;
		height: 250px;
		margin: 0 auto 10px;
	}
	.ov-img img {
		max-width: 100%;
		max-height: 250px;
	}
	.ov-box {
		width: 100%;
	}
	.ov-txt06 {
		height: auto;
	}
	.ov-item {
		max-width: 450px;
		margin: 0 auto 40px;
	}
	.ov-post-map > iframe {
		height: 300px;
	}
	.ov-post {
		flex-direction: column;
	}
	.ov-post-l, .ov-post-r {
		width: 100%;
		margin: 0 auto 20px;
	}
	.tbl-block th, .tbl-block td {
		display: block;
		width: 100%;
	}
	.tbl-block th {
		text-align: center;
		border-bottom: 0;
	}
	.tbl-block td {
		border-bottom: 0;
	}
	.tbl-block tr:last-child td:last-child {
		border-bottom: 1px solid #e1e1e1;
	}
	.under-frame {
		padding: 30px;
	}
	.frm-ttl {
		font-size: 14px;
	}
	.frm-ttl_scratch {
		font-size: 14px;
	}
	.under .idx-main-btn {
		top: auto;
		bottom: -50px;
		margin: 0;
		max-width: 100%;
		position: fixed;
	}
	.under .idx-main-btn.fixed {
		bottom: 0;
	}
	.under .idx-main-btn li a {
		height: 100%;
		font-size: 3vw;
	}
	.under .idx-main-btn li a:before {
		width: 30px;
		height: 30px;
		background-size: 16px auto !important;
	}
	.under #main {
		padding-bottom: 40px;
	}
	/*#ttl01{
margin-top:-80px;
padding-top:80px;
}*/
	.column_text > figure > img {
		width: 100%;
		margin-bottom: .5em;
		border: 1px solid #aaa;
	}
	.column_text > figure.fLeft, .column_text > figure.fRight {
		max-width: 100%;
		margin: 0 0 1.5em;
	}
	.column-int {
		display: flex;
	}
	.column_text > figure.fLeft {
		width: 100%;
	}
	.column_text > figure.fRight {
		width: 100%;
	}
	.column-int .image-l {
		width: 20%;
		float: left;
		margin-right: 5px;
		flex-shrink: 0;
	}
	.column_text > p > img {
		max-width: 100%;
		border: 1px solid #aaa;
		overflow: hidden;
	}
	.b04-txt span {
		font-size: 18px;
		font-weight: bold;
	}
	.b01-top-text span {
		font-size: 18px;
		text-align: center;
	}
	.frm-ttl {
		padding: 10px 15px;
		line-height: 1.8em;
		text-align: center;
		font-size: 16px;
	}
	.column_text > figure > .imgTxt {
		font-size: 1.2em;
	}
	.imgTxt {
		font-size: 1.2em;
	}
	.ov-cate {
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.ov-txt {
		overflow: visible;
		white-space: normal;
		word-break: break-all;
	}
	.gnv-list a:before, .gnv-ttl:before, .gnv-ttl-home a:before {
		top: 8px;
	}
	.gnv-list a:before {
		top: 6px;
	}
	.column01-btn.idx-btn a, .column01-btn.idx-btn a.last-btn {
		margin: 0 10px 20px;
	}
	.column01-btn.idx-btn {
		justify-content: center;
	}
	.under .b01-list {
		margin: 0 auto 30px;
		padding: 0;
		justify-content: center;
	}
	.under .b01-item {
		margin: 0 10px 30px;
		height: 100%;
		width: 100%;
		border-radius: 0;
		display: flex;
	}
	.teacher-list {
		display: block;
	}
	.teacher-list > .teacher-item {
		width: 100%;
	}
	.teacher-itm-info {
		display: block;
	}
	.teacher-itm-ttl:not(:last-child) {
		margin: 0 0 10px;
	}
	.teacher-item:not(:last-child) {
		margin-bottom: 20px;
	}
	.teacher-col {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.teacher-col .teacher-item {
		width: calc(50% - 10px);
		margin: 0 0 20px;
		padding: 3%;
	}
	.teacher-row .teacher-item {
		width: calc(50% - 10px);
	}
	.teacher-row .teacher-item:nth-child(2n) {
		margin-right: 0;
	}
	.voice-item a {
		display: block;
	}
	.voice-itm-img, .voice-item:nth-child(even) .voice-itm-img {
		width: 220px;
		height: 220px;
		margin: 0 auto 30px;
	}
	.voice-itm-main {
		width: 100%;
	}
	.voice-itm-ttl {
		padding: 0 20px 20px;
		font-size: 16px;
	}
	.voice-itm-txt01, .voice-itm-txt02 {
		font-size: 14px;
	}
	.voice-itm-main:after, .voice-item:nth-child(even) .voice-itm-main:after {
		border-width: 0 20px 20px 20px;
		border-color: transparent transparent #ff7c80 transparent;
		top: -20px;
		left: calc(50% - 20px);
	}
	.voice-itm-info {
		padding: 3%;
	}
	.voice-main {
		display: block;
		margin: 0 0 30px;
	}
	.voice-main-img {
		width: 100%;
		max-width: 320px;
		margin: 0 auto 15px;
	}
	.voice-main-ttl {
		font-size: 180%;
	}
	.column-item a {
		/* display: block; */
	}
	.column-info {
		margin: 0 auto 10px;
	}
	.column-itm-ttl {
      font-size: 120%;
	}
	.column-itm-txt {
     font-size: 100%;
	}
	#content .colum-itm-cate {
		width: 120px;
	}
	.column-itm-img {
		width: 100%;
		max-width: 90px;
		height: auto;
		margin: 0 10px 15px 0;
		background-color: white;
	}
	.column-news-item {
		display: block;
	}
	.column-int .image-r {
		width: 20%;
		float: right;
		margin-left: 5px;
		flex-shrink: 0;
	}
	.column-news-item:nth-child(even) .column-news-itm-img {
		order: 2;
		margin: 0 0 0 5px;
	}
	.column-back {
		margin: 30px 0 0;
	}
	.column-select {
		text-align: center;
	}
	.column-detail-img {
		width: 220px;
		height: 220px;
		margin: 0 auto;
	}
	.voice-more-list {
		display: block;
	}
	.voice-more-item {
		width: 100%;
		margin: 0 0 30px;
	}
	.voice-more-itm-txt {
		font-size: 14px;
	}
	.voice-more-itm-ttl {
		font-size: 16px;
	}
	.voice-more-ttl {
		font-size: 22px;
		margin: 0 0 20px;
		padding-top: 40px;
	}
	.column-txt-small {
		font-size: 13px;
	}
	.column-note {
		width: 100%;
		padding: 20px 40px;
	}
	.column-note:before {
		font-size: 350%;
		top: 30px;
		left: 10px;
	}
	.column-note:after {
		font-size: 350%;
		right: 10px;
		bottom: 15px;
	}
	.column-img-col {
		display: block;
	}
	.column-img-col li {
		width: 100%;
		margin: 0 0 30px;
	}
	.under .b01-item a {
		display: flex;
		width: 100%;
	}
	.under .b01-itm-img {
		width: 50%;
		height: 150px;
		flex-shrink: 0;
		align-items: center;
	}
	/* .b01-itm-txt, .b01-itm-btn { */
	.b01-itm-btn {
		display: none;
	}
	.b01-itm-ttl {
		font-size: 15px;
	}
	.b01-itm-main {
		/* width: 50%;
		position: relative; */
		padding-bottom: 15px;
	}
.under_boximg_partner li {
    padding: 0 3px;
}
.under_boximg_partner {
    margin: -30px 0 50px;
}
.under #content .frame01_in {
    padding: 15px;
}
.under #content .tt_04 span::before, .under #content .tt_04 span::after {
    height: 26px;
}

.under #content .tt_04 span::before, .under #content .tt_04 span::after {
    height: 26px;
}
.under #content .tt_04 {
    font-size: 22px;
}
.under #content .tt_04 span {
    font-size: 18px;
    margin-bottom: 10px;
    padding: 0 30px;
}
.under #content .image_r, .under #content .image_l, .under #content .frame01_in.frame01_in_flex .image_l {
    text-align: center;
}
.under #content .image_r, .under #content .image_l, .under #content .frame01_in.frame01_in_flex .image_l {
    float: none;
    display: inline-block;
    width: 100%;
    text-align: center;
    margin: 0 auto 25px;
        margin-bottom: 25px;
}
.under #content .tt_06 {
    line-height: 1.4;
    padding: 10px;
    border-width: 3px;
    border-radius: 20px;
}
.under #content a, .under #content a.hover_no, .under #content a.hover_no:hover {
    font-size: 16px;
	text-align: center;
}
.under_boximg_partner2 li {
    padding: 0 4px;
}	
.under #content .list2_col_style > li {
    width: 100%;
    padding: 15px;
    border-width: 3px;
}	
.under #content .list2_col_style {
    flex-direction: column;
}
.under #content .list2_tt02 {
    font-size: 16px;
	font-weight: bold;
}
.under #content .list2_tt01, .under #content .list2_tt02 {
    font-size: 18px;
	font-weight: bold;
}
.under #content .list2_col_style > li + li {
    margin-top: 30px;
	margin-bottom: -20px;
}
.under #content .bg_gray {
    margin: 50px 0;
}
.under #content .tt01 {
    font-size: 18px;
    padding: 15px 15px 10px 15px;
    line-height: 1.4;
}	
  /*diagram_01*/
  .under #content .diagram_01 {
    flex-direction: column;
  }
.under #content .diagram_01 > li {
    padding: 20px 5px 0px 5px;
}
  .under #content .diagram_01 > li {
    margin-right: 0px;
    margin-bottom: 60px;
  }
  .under #content .diagram_01 > li > p {
    width: 100%;
    text-align: center;
  }
  .under #content .diagram_sub_01 {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .under #content .diagram_sub_01 > li {
    padding: 0px;
    height: 59px;
  }
  .under #content .diagram_sub_01 > li {
    width: calc(50% - 5px);
    margin-bottom: 20px;
  }
  .under #content .diagram_sub_01 > li:nth-child(n + 3) {
    margin-bottom: 0px;
  }
  .under #content .diagram_01 > li:before {
    left: 0;
    right: 0;
    content: "\21E9";
    text-align: center;
    bottom: -49px;
    top: auto;
    font-size: 40px;
	    line-height: 0.95;
  }
  .under #content .diagram_01 > li:last-child {
    margin-bottom: 0px;
  }
  
  .under #content .diagram_02 > li {
    margin-right: 5px;
  }
  .under #content .diagram_02 > li > p {
    width: 18vmin;
    height: 18vmin;
    font-size: 2.8vw;
  }
	.under #content .diagram_02 > li > p:before {
	border: 1px #fff dashed;
	top:2px;
	bottom: 2px;
	right:2px;
	left:2px;

	}
  .under #content .diagram_02 > li:last-child {
    font-size: 2.3vw;
    margin-right: 0px;
  }
	.under #content .diagram_03 {
		padding:10px;
	}
  .under #content .diagram_03 > li .diagram_03_ver {
    font-size: 13px;
	  padding: 0px 8px;
	line-height: 1.2;
	  display: flex;
    align-items: center;
  }

  .under #content .diagram_03 > li:nth-child(2n+1), .under #content .diagram_03 > li:nth-child(2n+1):before {
    border-radius: 5px;
  }
  .under #content .diagram_03 > li:nth-child(2n+1):before {
    border: 1px #fff dashed;
    top: 3px;
    left: 3px;
    right: 3px;
    bottom: 3px;
  }
  .under #content .diagram_03_sub01 > span {
    padding: 5px;
    border-width: 2px;
    border-radius: 10px;
  }
  .under #content .diagram_03_sub01:before {
    height: 8px;
    top: calc(50% - 4px);
  }
  .under #content .diagram_03_sub01 {
    width: calc(100% - 30px);
  }
  .under #content .diagram_03_ar01 {
    height: 36px;
    width: calc(100% - 36px);
    line-height: 1.4;
    font-size: 13px;
    text-align: center;
  }
  .under #content .diagram_03_ar01:before {
    border-width: 25px 0 25px 18px;
    right: -18px;
    top: calc(50% - 25px);
  }
  .under #content .diagram_03_ar01:after {
    border-width: 25px 18px 25px 0;
    border-color: transparent #d396e2 transparent transparent;
    left: -18px;
    top: calc(50% - 25px);
  }
  .under #content .diagram_03_sub01:after {
    border-width: 10px 10px 10px 0;
    top: calc(50% - 10px);
  }
  .under #content .diagram_03_sub01:before {
    width: calc(100% + 20px);
  }
  .under #content .diagram_03_sub01.arr_left:before {
    left: -5px;
  }
  .under #content .diagram_03_sub01.arr_right:before {
    right: -5px;
  }
  .under #content .diagram_03_sub01.arr_left:after {
    left: -15px;
  }
  .under #content .diagram_03_sub01.arr_right:after {
    right: -15px;
  }
  .under #content .diagram_03 > li:nth-child(4) .diagram_03_ar01 {
    margin-bottom: 45px;
  }
.under #content .diagram_03_sub01 {
    font-size: 12px;
    letter-spacing: -1px;
}

  .under #content .list2_col_style {
    flex-direction: column;
  }
  .under #content .list2_col_style > li {
    width: 100%;
    padding: 15px;
    border-width: 3px;
  }
  .under #content .list2_col_style > li + li {
    margin-top: 30px;
  }
  .under #content .list2_tt01, .under #content .list2_tt02 {
    font-size: 18px;
  }
.under #content .btn01 a {
    width: 290px;
    background-position: right 8px center;
}
.under .section p {
    letter-spacing: 0;
}
.under #content .btn01 a {
    width: 320px;
    background-position: right 12px center;
    background-size: 7px auto;
    font-size: 15px;
}

	.b01-itm-main:before {
		content: '';
		position: absolute;
		background: url(../images/icon_arr.svg)center no-repeat;
		background-size: contain;
		width: 15px;
		height: 18px;
		right: 9px;
		bottom: 10px;
	}
	.homestudy_course-select div p{
		float: none;
		width: 100%;
	}
	.homestudy iframe{
		margin: 0 auto 80px;
		width: 100%;
	}
	.quiz-bnr p:nth-child(2){
		width: 48%;
	}
	.quiz-bnr p:nth-child(3){
		width: 48%;
	}
	.b01-list .b01-item{
		/* min-height: 340px; */
		height: auto;
	}
}
@media screen and (max-width: 530px) {
	.b01-list {
		padding: 0 50px;
	}
	.b01-item {
		margin: 0 30px;
	}
	.box01 .slick-arrow {
		width: 40px;
		top: calc(50% - 20px);
	}
	.box01 .slick-prev {
		left: 30px;
	}
	.box01 .slick-next {
		right: 30px;
	}
	.idx-h3 {
		font-size: 24px;
	}
	.box01 .idx-h3-en {
		font-size: 14px;
	}
	.b01-itm-txt, .b01-itm-btn {
		font-size: 14px;
		height: 85px;
	}
	.b01-itm-ttl {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.b01-itm-main {
		padding: 10px;
	}
	.b02-right-ttl {
		font-size: 19px;
	}
	.b02-left-link dt {
		width: 80px;
	}
	.b02-right-txt {
		font-size: 14px;
	}
	.b02-right-bnr a:before {
		border-width: 22px 22px 0 0;
	}
	.b02-right-bnr a:after {
		border-width: 0 0 22px 22px;
	}
	.b02-right-bnr a {
		border-width: 2px;
		padding: 15px;
	}
	.f01-btn {
		display: block;
	}
	.f01-btn li {
		width: 90%;
		margin: 0 auto 10px !important;
		max-width: 300px;
	}
	.f02-time {
		line-height: 1.5em;
	}
	.f01-btn a {
		font-size: 16px;
	}
	.under .b01-itm-img {
		height: 150px;
	}
}
@media screen and (max-width: 425px) {
	.b02-left .idx-h3 {
		padding-right: 0;
	}
	.b03-item {
		width: 100%;
	}
	.b03-itm-ttl {
		height: auto !important;
	}
	.b04-item {
		display: block;
	}
	.b04-itm-img {
		width: 100%;
	}
	.b04-itm-main {
		width: 100%;
		padding: 0 0 10px;
	}
	.b04-itm-num {
		margin-top: -25px;
	}
	.box04 .idx-h3 img {
		width: 190px;
	}
	.b04-txt {
		font-size: 14px;
		margin: 0 0 20px;
	}
	.b06-itm-img {
		float: none;
		margin: 0 auto 20px;
	}
	.b06-itm-cnt {
		margin: 0 0 20px;
	}
	.b06-itm-main {
		display: flex;
	}
	.b06-item:nth-child(2) .b06-itm-txt {
		text-align: center;
	}
	.b06-itm-ttl {
		font-size: 20px;
		margin: 0 0 20px;
		white-space: normal;
	}
	.b06-item {
		padding: 5% 3% 1px;
	}
	.b06-itm-en {
		font-size: 13vw;
		top: 10px;
	}
	.b07-h3 {
		font-size: 24px;
		padding-left: 40px;
	}
	.b07-h3-en {
		font-size: 13px;
	}
	.b07-h3:before {
		width: 35px;
		height: 35px;
		background-size: 18px auto !important;
	}
	.f01-ttl {
		font-size: 23px;
	}
	.anc-link li,
	.anc-link2 li,
	.anc-link_ol li {
		width: calc(100% - 10px);
		margin: 0 5px 10px;
	}
	.teacher-col .teacher-item, .teacher-row .teacher-item {
		width: 100%;
		margin: 0 0 20px;
		padding: 20px;
	}
	.under .b01-itm-img {
		height: 120px;
		width: 40%;
	}
	.b01-itm-main {
		/* width: 60%; */
	}
	.b01-itm-ttl {
		font-size: 14px;
	}
	.schoolmaintext {
		max-width: 100%;
		margin: 0 auto 60px;
	}
	.b02-left-main:after {
		width: 21vw;
		height: 25vw;
		top: -80px;
	}
}
@media screen and (max-width: 375px) {
	.box01 .slick-list {
		overflow: hidden;
	}
	.b01-item {
		margin: 0;
	}
	.box01 .slick-prev {
		left: 0;
	}
	.box01 .slick-next {
		right: 0;
	}
	.under .b01-itm-img {
		height: 100px;
	}
	.b01-itm-ttl {
		font-size: 12px;
	}
	.b01-itm-main:before {
		width: 14px;
		height: 16px;
		right: 8px;
		bottom: 9px;
	}
}
@media screen and (max-height: 680px) and (min-width: 769px) {
	.idx-main-btn li a {
		height: 220px;
		font-size: 16px;
	}
	.idx-main-btn li a:before {
		width: 35px;
		height: 35px;
		background-size: 18px !important;
	}
	.idx-main-btn {
		top: 100px;
	}
}
@media screen and (max-height: 750px) {
	#index #mainvisual {
		min-height: 750px;
	}
	.idx-main-bnr {
		padding: 0 3%;
	}
	#index #mainvisual h2,
	#index #mainvisual .h2 {
		font-size: 12vw;
	}
	.idx-main-txt01 {
		width: 28vw;
		height: 19vw;
		font-size: 3.5vw;
		padding-top: 2.5vw;
	}
}

@media screen and (min-width: 751px) and (max-width: 1600px)  {
	#index #mainvisual h2,
	#index #mainvisual .h2 {
		font-size: 6vw;
	}
}

@media screen and (max-height: 750px) and (min-width: 1000px) {
	#index #mainvisual {
		min-height: 750px;
	}
	.idx-main-bnr {
		padding: 0 3%;
	}
	#index #mainvisual h2 {
		font-size: 5vw;
	}
	.idx-main-txt01 {
		width: 13vw;
		height: 10vw;
		font-size: 1.5vw;
		padding-top: 1.5vw;
	}
}