/*body {
	font-family : "游ゴシック体","Yu Gothic",YuGothic,sans-serif;
	font-size : 0.875rem;
	line-height : 1.8571428571;
	letter-spacing : 0.017em;
}*/

.photo-sp {
	display : none;
}
.photo-wrapper {
	/*  height:400px; */
	position : relative;
	width : 100%;
	margin : 0 auto;
}

.carousel-item {
	position : absolute;
	top : 0;
	right : 0;
	bottom : 0;
	left : 0;
	padding : 25px 50px;
	opacity : 0;
	transition : all 0.5s ease-in-out;
}

@media screen and (min-width: 769px) {
	.enclosure {
		width : 80%;
		max-width : 1600px;
		margin : 0 auto;
	}
	.logo {
		float : left;
	}
	.headbox {
		float : right;
		margin-top : 20px;
	}
	.mainimg img {
		width : 100%;
	}
	#menu {
		display : block;
		width : 100%;
		height : 40px;
		margin : 0 auto;
		padding : 0;
		background : #52caef;
		list-style-type : none;
	}
	#menu li {
		float : left;
		position : relative;
		z-index : 10;
		width : calc(100% / 6);
		margin : 0;
		padding : 0;
		text-align : center;
	}
	#menu li a {
		display : block;
		margin : 0;
		padding : 13px 0;
		color : #333333;
		font-size : 16px;
		font-weight : bold;
		line-height : 1;
		text-decoration : none;
	}
	@media screen and (max-width: 1200px) {
		#menu li a.menupadding {
			padding : 5px 0;
		}
	}
	#menu li ul {
		position : absolute;
		top : 100%;
		left : 0;
		margin : 0;
		padding : 0;
		list-style : none;
	}
	#menu li:last-child ul {
		left : -100%;
		width : 100%;
	}
	#menu li ul li {
		overflow : hidden;
		width : 200%;
		height : 0;
		color : #ffffff;
		-webkit-transition : 0.3s;
		   -moz-transition : 0.3s;
		    -ms-transition : 0.3s;
		     -o-transition : 0.3s;
		        transition : 0.3s;
	}
	#menu li ul li a {
		padding : 13px 15px;
		background : #52caef;
		font-size : 15px;
		font-weight : bold;
		text-align : left;
	}
	#menu li:hover>a {
		color : #f9e8ef;
		background : #05ace0;
	}
	#menu li:hover ul li {
		overflow : visible;
		height : auto;
		border-bottom : 1px solid #ffffff;
	}
	#menu li:hover ul li:first-child {
		border-top : 0;
	}
	#menu li:hover ul li:last-child {
		border-bottom : 0;
	}
	.spmenu {
		display : none;
	}
	.headbox {
		display : block;
	}
	#page-top {
		position : fixed;
		z-index : 20;
		right : 20px;
		bottom : 20px;
		opacity : 0.7;
		font-size : 77%;
		cursor : pointer;
	}
	#page-top a {
		display : block;
		width : 100px;
		padding : 30px 0;
		color : #ffffff;
		border-radius : 5px;
		background : #3f98ef;
		text-align : center;
		text-decoration : none;
	}
	#page-top a:hover {
		background : #999999;
		text-decoration : none;
	}
}/*@media screen and (min-width: 769px)*/


@media screen and (max-width: 768px) {
	.photo-wrapper {
		display : none;
	}
	.photo-sp {
		display : block;
		width : 100%;
	}
	img {
		/*width : 100%;*/
		max-width : 100%;
		height : auto;
	}
	.enclosure {
		width : 100%;
		margin : 0;
	}
	.contents p {
		padding : 15px;
	}
	.logo {
		display : none;
	}
	.sub_menu {
		width : 30%;
	}
	.sub_menu_left {
		float : left;
		width : 60%;
	}
	.sub_menu_right {
		float : right;
	}
	.headbox {
		float : none;
		width : 100px;
		margin : 0 auto;
	}
	#menu, .headbox {
		display : none;
	}
	.spmenu {
		display : block;
	}
	.drawer--left .drawer-nav {
		z-index : 11;
		left : 0;
	}
	.drawer-nav {
		position : relative;
	}
	.drawer-nav .drawer-menu li {
		border-bottom : 1px solid #ffffff;
	}
	#page-top {
		position : fixed;
		z-index : 20;
		right : 10px;
		bottom : 10px;
		opacity : 0.7;
		font-size : 77%;
		cursor : pointer;
	}
	#page-top a {
		display : block;
		width : 100px;
		padding : 10px 0;
		color : #ffffff;
		border-radius : 5px;
		background : #3f98ef;
		text-align : center;
		text-decoration : none;
	}
	#page-top a:hover {
		background : #999999;
		text-decoration : none;
	}
}/*@media screen and (max-width: 768px)*/

.wrap {
	padding : 16px;
}

#slide_wrap {
	overflow : hidden;
	position : relative;
}
#slide_wrap .slide_item {
	position : relative;
	opacity : 0;
	transition : opacity 2s linear, transform 7.5s linear;
	transform : scale(1);
}
#slide_wrap .slide_item:not(:first-child) {
	position : absolute;
	top : 0;
	left : 0;
}
#slide_wrap .slide_item.show_ {
	opacity : 1;
}
#slide_wrap .slide_item.zoom_ {
	transform : scale(1.1);
}
#slide_wrap .slide_item img {
	display : block;
}
#slide_wrap_sp {
	overflow : hidden;
	position : relative;
}
#slide_wrap_sp .slide_item_sp {
	position : relative;
	opacity : 0;
	transition : opacity 2s linear, transform 7.5s linear;
	transform : scale(1);
}
#slide_wrap_sp .slide_item_sp:not(:first-child) {
	position : absolute;
	top : 0;
	left : 0;
}
#slide_wrap_sp .slide_item_sp.show_ {
	opacity : 1;
}
#slide_wrap_sp .slide_item_sp.zoom_ {
	transform : scale(1.1);
}
#slide_wrap_sp .slide_item_sp img {
	display : block;
}

.str_on_pic, .str_on_pic_sp {
	position : relative;
}
.str_on_pic p {
	position : absolute;
	top : 10px;
	left : 10px;
	margin-right : 0;
	padding : 10px;
	color : white;
	border-top-left-radius : 40px;
	border-top-right-radius : 40px;
	border-bottom-right-radius : 40px;
	border-bottom-left-radius : 40px;
	background-color : rgba(51,51,104,0.1);
	font-family : Quicksand, sans-serif;
	font-size : 2.0em;
	font-weight : bold;
}
.str_on_pic_sp p {
	position : absolute;
	top : 20px;
	left : 10px;
	margin-right : 0;
	color : white;
	border-top-left-radius : 20px;
	border-top-right-radius : 20px;
	border-bottom-right-radius : 20px;
	border-bottom-left-radius : 20px;
	background-color : rgba(51,51,104,0.1);
	font-family : Quicksand, sans-serif;
	font-size : 1.5em;
	font-weight : bold;
}
.str_on_pic img {
	width : 100%;
}

footer {
	background : #ebf4fa;
}

span.aks {
	display : inline-block;
}

.gokei {
	padding : 0.3rem 2rem;
	background : #fff2cc;
}

.kingaku::after {
	float : right;
	padding : 0 10px;

/*content: "円（税込）";*/
	content : "\5186\FF08\7A0E\8FBC\FF09";
}

.gino_jigen::before {
	float : left;
	padding : 0 10px;
	font-weight : bold;

/*content: "技能時限";*/
	content : "\6280\80FD\6642\9650";
}

.gakka_jigen::before {
	float : left;
	padding : 0 10px;

/*content: "学科時限";*/
	content : "\5B66\79D1\6642\9650";
}

.jigen::after {
	float : right;
	padding : 0 10px;

/*content: "時限　";*/
	content : "\6642\9650\3000";
}


.twrapper {
	overflow : auto;
	white-space : nowrap;
}
.twrapper table {
	width : auto;
	border-collapse : separate;
}

.twrapper table tr:first-child th {
	border-top : 1px solid #dee2e6;
}
.twrapper table th:first-child, .twrapper table td:first-child {
	border-left : 1px solid #dee2e6;
}

.twrapper table th, .twrapper table td {
	-webkit-box-sizing : border-box;
	   -moz-box-sizing : border-box;
	        box-sizing : border-box;
	min-width : 40px;
	border-right : 1px solid #dee2e6;
	border-bottom : 1px solid #dee2e6;

	     -o-box-sizing : border-box;
	    -ms-box-sizing : border-box;
}

.twrapper table .fixcell {
	position : -webkit-sticky;
	position :         sticky;
	left : 40px;
	width : 40px;
	min-width : 40px;
	max-width : 100px;
	background-color : white;
}
.twrapper table .fixcell:first-child {
	left : 0;
}

.heading-005 {
	margin : 1rem 0.5rem;
	padding : 0 0.4em 0.2em;
	border-bottom : 3px double #2589d0;
	background-color : #ffffff;
}
.qa-001 {
	width : 100%;
	margin-bottom : 7px;
	border : 1px solid #d6dde3;
	border-radius : 5px;
}

.qa-001 summary {
	display : flex;
	align-items : center;
	justify-content : space-between;
	position : relative;
	padding : 0.8em 2em 0.8em 3em;
	background-color : #ecf0f1;
	font-weight : 600;
	cursor : pointer;
}

.qa-001 summary::-webkit-details-marker {
	display : none;
}

.qa-001 summary::before, .qa-001 p::before {
	position : absolute;
	left : 1em;
	font-size : 1.3em;
	font-weight : 600;
}

.qa-001 summary::before {
	color : #75bbff;
	content : "Q";
}

.qa-001 summary::after {
	width : 7px;
	height : 7px;
	margin-left : 10px;
	border-right : 3px solid #333333b3;
	border-bottom : 3px solid #333333b3;
	content : "";
	transition : transform 0.5s;
	transform : translateY(-25%) rotate(45deg);
}

.qa-001[open] summary::after {
	transform : rotate(225deg);
}

.qa-001 p {
	position : relative;
	margin : 0;
	padding : 0.8em 3em 1em;
	opacity : 0;
	transition : transform 0.5s, opacity 0.5s;
	transform : translateY(-10px);
}

.qa-001[open] p {
	opacity : 1;
	transform : none;
}

.qa-001 p::before {
	color : #ff8d8d;
	line-height : 1.2;
	content : "A";
}

.btn-recommend {
	position : relative;
	width : 100%;
	max-width : 500px;
	height : 80px;
	padding : 0.5rem;
	color : #ffffff;
	border-radius : 0.5rem;
	-webkit-box-shadow : 0 5px 0 #bdc3c7;
	        box-shadow : 0 5px 0 #bdc3c7;
	font-size : 1.4rem;
	font-weight : 700;
	line-height : 1.5;
	cursor : pointer;
	-webkit-user-select : none;
	   -moz-user-select : none;
	    -ms-user-select : none;
	        user-select : none;
	-webkit-transition : all 0.3s;
	        transition : all 0.3s;
	text-align : center;
	vertical-align : middle;
	text-decoration : none;
	letter-spacing : 0.1em;
}

.btn-recommend:hover {
	opacity : 0.6;
	color : #ffffff;
}

a.btn-recommend span {
	display : inline-block;
	width : 100%;
	margin-bottom : 0.5em;
	padding : 0.2rem;
	color : #444175;
	border-radius : 4px;
	background : #ffffff;
	font-size : 0.9rem;
	white-space : nowrap;
}

.ttl_background {
	display : flex;
	align-items : center;
	justify-content : center;
	position : relative;
	width : 100%;
	max-width : 400px;
	height : 70px;
	margin : auto;
	margin-bottom : 1rem;
	color : #745d3b;
	font-weight : bold;
	text-align : center;
}
.ttl_background span {
	letter-spacing : 0.1rem;
}

.ttl_background span img {
	position : absolute;
	right : 1px;
	bottom : 0;
	width : 40px;
}
.ttl_background span::after {
	position : absolute;
	bottom : 0;
	left : 50%;
	width : 50px;
	border-bottom : 10px dotted #85b652;
	content : "";
	-webkit-transform : translateX(-50%);
	    -ms-transform : translateX(-50%);
	        transform : translateX(-50%);
}
/*
.ttl_background_blue::after {
	background-color : #9be7ff;
}

.ttl_background_yellow::after {
	background-color : #ffec9e;
}
*/

.heading-002 {
	padding : 0 0.4em 0.2em;
	border-bottom : 3px solid #4d9bc1;
	background-color : #ffffff;
}

.heading-006 {
	display : inline-block;
	position : relative;
	padding : 0 3.5em;
}

.heading-006::before, .heading-006::after {
	display : inline-block;
	position : absolute;
	top : 50%;
	width : 45px;
	height : 3px;
	background-color : #4b4b4b;
	content : "";
}

.heading-006::before {
	left : 0;
}

.heading-006::after {
	right : 0;
}

.accordion-training {
	max-width : 100%;
	margin-bottom : 7px;
	border : 2px solid #c7ecee;
	border-radius : 5px;
}

.accordion-training summary {
	display : flex;
	align-items : center;
	justify-content : space-between;
	position : relative;
	padding : 1em 2em;
	background-color : #c7ecee;
	font-weight : 600;
	cursor : pointer;
}

.accordion-training summary::-webkit-details-marker {
	display : none;
}

.accordion-training summary::after {
	width : 7px;
	height : 7px;
	margin-left : 10px;
	border-right : 3px solid #97bcbe;
	border-bottom : 3px solid #97bcbe;
	content : "";
	transition : transform 0.3s;
	transform : translateY(-25%) rotate(45deg);
}

.accordion-training[open] summary::after {
	transform : rotate(225deg);
}

.accordion-training div.training-details {
	margin : 0;
	padding : 1rem;
	opacity : 0;
	transform : translateY(-10px);
	text-align : justify;
}

.accordion-training[open] div.training-details {
	opacity : 1;
	transform : none;
}

.accordion-training th {
	width : 20%;
	text-align : center;
}

.accordion-training th div.bg-blue {
	padding : 0;
	background-color : #c7ecee;
	text-align : center;
}

.accordion-training td {
	width : 85%;
}

.newsbox {
	overflow-y : scroll;
	width : 100%;
	height : auto;
	max-height : 400px;
	margin-bottom : 1rem;
	padding : 0.5rem 1rem 0.5rem 0.5rem;
	background-color : #ffffff;
}

.newslist {
	width : 100%;
	margin-bottom : 7px;
	border-bottom : 2px solid #d6dde3;
}

.newslist summary {
	display : flex;
	align-items : center;
	justify-content : space-between;
	position : relative;
	padding : 0.5rem;
	padding-bottom : 1rem;
	font-weight : 600;
	cursor : pointer;
}

.newslist summary::-webkit-details-marker {
	display : none;
}

.newslist summary::after {
	width : 7px;
	height : 7px;
	margin-left : 10px;
	border-right : 3px solid #333333b3;
	border-bottom : 3px solid #333333b3;
	content : "";
	transition : transform 0.3s;
	transform : translateY(-25%) rotate(45deg);
}

.newslist[open] summary::after {
	transform : rotate(225deg);
}

.newslist div.news {
	margin : 0;
	padding : 0 1rem 1rem 1.5rem;
	opacity : 0;
	transition : transform 0.5s, opacity 0.5s;
	transform : translateY(-10px);
	text-align : justify;
}

.newslist[open] div.news {
	opacity : 1;
	transform : none;
}

.newslist  .date {
	min-width : 140px;
	margin : 0;
	padding : 0 20px 0 0;
	color : #2d3436;
	font-size : 1rem;
}
.newslist .category {
	min-width : 140px;
	margin : 0;
	padding : 0 20px 0 0;
}
.newslist  .category span {
	display : inline-block;
	padding : 5px 15px;
	color : #ffffff;
	background : #999999;
	font-size : 0.85rem;
	line-height : 1;
	text-align : center;
}
.newslist  .category span.info {
	background : #009ddc;
}
.newslist  .category span.award {
	background : #999999;
}
.newslist  .category span.campaign {
	background : #fdb827;
}
.newslist  .category span.pickup {
	background : #e03a3e;
}
.newslist .title {
	width : 90%;
	margin : 0;
	font-size : 1.15rem;
}
@media screen and (max-width: 767px) {
	.newslist summary {
		flex-wrap : wrap;
	}
	.newslist summary .date {
		min-width : 100px;
	}
	.newslist summary .title {
		margin-top : 10px;
	}
}

a.btn-icon {
	display : flex;
	align-items : center;
	justify-content : center;
	position : relative;
	box-sizing : border-box;
	width : 100%;
	max-width : 250px;
	height : 60px;
	margin : auto;
	color : #ffffff;

/*padding : 20px 20px 20px 75px;
	border : 5px solid #ffc107;*/
	border-radius : 5px;
	background-color : orange;
	transition-duration : 0.3s;
	text-align : center;
	text-decoration : none;
}

a.btn-icon span {
	margin-left : 0.5rem;
	font-size : 1.2rem;
	font-weight : bold;
	line-height : 1;
	letter-spacing : 0.2rem;
}
a.btn-icon span span.left-icon {
	position : absolute;
	top : 17px;
	left : 10px;
	font-size : 2rem;
}
a.btn-icon span span.right-icon {
	position : absolute;
	top : 17px;
	right : 10px;
	font-size : 2rem;
}
a.btn-icon:hover {
	opacity : 0.6;
}

div.parsent {
	position : relative;
	width : 100%;
	max-width : 1000px;
	height : 0;
	margin : auto;
	padding-bottom : 55%;
}
div.parsent iframe {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 100%;
}

.img-aspect {
	object-fit : cover;
	aspect-ratio : 4 / 3;
}


a.btn-follow {
	display : flex;
	align-items : center;
	justify-content : center;
	position : relative;
	box-sizing : border-box;
	width : 100%;
	max-width : 250px;
	height : 40px;
	margin : 0.5rem auto;
	color : #333333;
	border : 1px solid gray;
	border-radius : 20px;
	background-color : white;
	transition-duration : 0.3s;
	text-align : center;
	text-decoration : none;
}

a.btn-follow span {
	margin-left : 1rem;
	font-size : 1.1em;
}
a.btn-follow span img.left-icon {
	position : absolute;
	top : 8px;
	left : 16px;
	width : 22px;
}

a.btn-follow:hover {
	opacity : 0.6;
}

.arrow_box {
	position : relative;
	width : 310px;
	height : 60px;
	margin : auto;
	margin-bottom : 1rem;
	padding : 8px;
	color : #333333;
	border : 1px solid gray;
	-webkit-border-radius : 40px;
	   -moz-border-radius : 40px;
	        border-radius : 40px;
	background : #ffffff;
	font-size : 0.9rem;
	text-align : center;
}
.arrow_box:after, .arrow_box:before {
	position : absolute;
	top : 100%;
	left : 50%;
	width : 0;
	height : 0;
	border : solid transparent;
	content : "";
	pointer-events : none;
}
.arrow_box:after {
	margin-left : 16px;
	border-color : rgba(255, 255, 255, 0);
	border-top-width : 15px;
	border-top-color : #ffffff;
	border-right-width : 15px;
	border-bottom-width : 15px;
	border-left-width : 0;
}
.arrow_box:before {
	margin-top : 1px;
	margin-left : 15px;
	border-color : rgba(0, 0, 0, 0);
	border-top-width : 16px;
	border-top-color : gray;
	border-right-width : 16px;
	border-bottom-width : 16px;
	border-left-width : 0;
}
#mamoprof  th {
	width : 25%;
	background-color : #fff9c4;
}

.star {
	padding : 10px 5px;
}
.star ul li {
	position : relative;
	padding : 0 0 0 25px;
	list-style : none;
}
.star ul li:before {
	position : absolute;
	top : 0;
	left : 5px;
	font-size : 1rem;
	content : "☆";
}

.normal-box2{
	margin: 1em 0;
	padding: 1em;
	background-color: #ffffff;
	border: solid 2.0px #4800ff;
	border-radius: 5px;
  }
  
  .normal-box2 p{
	margin: 0;
	padding: 0;
  }

  .normal-box3{
	margin: 1em 0;
	padding: 1em;
	background-color: #fdfd05;
	border: solid 2px #fdfd05;
	border-radius: 5px;
  }
  
  .normal-box3 p{
	margin: 0;
	padding: 0;
	font-size : 18px;
  }

  .normal-box4{
	margin: 1em 0;
	padding: 1em;
	background-color: #EBAD4A;
	border: solid 1px #2E2A6C;
	border-radius: 5px;
  }
  
  .normal-box4 p{
	margin: 0;
	padding: 0;
  }

  .normal-box5{
	margin: 0.5em;
	padding: 1em;
	background-color: #A3C86F;
	border: solid 1px #2E2A6C;
	border-radius: 5px;
  }
  
  .normal-box5 p{
	margin: 0;
	padding: 0;
  }

    .normal-box6{
	margin: 0.5em;
	padding: 1em;
	background-color: #ebf4fa;
	border: solid 1px #38acfa;
	border-radius: 5px;
  }
  
  .normal-box6 p{
	margin: 0;
	padding: 0;
  }

  .table2{
	margin: 0 auto;
	padding: 0 100px;
  }

  .table2 th{
	margin: 0 auto;
	padding: 0 30px;
  }

  .table2 td{
	margin: 0 auto;
	padding: 5px 5px;
  }