  #teacher .container-flex#contents-mokuji {
    justify-content: center;
}

@media screen and (max-width: 640px) {
#header-visual-inner{margin-top: -30px;}	
#teacher #header-visual span#lower-h1 a{top: 15px}	
}

#teacher #header-visual span#yonkun {
    width: 100px;
    right: -15px;
	left: auto;
    bottom: 10px;
	animation: side 2s ease-in-out infinite alternate;
}
@keyframes side {
  0% { transform:translate3d(10px,0,0); }
????50% { transform:translate3d(-10pxpx,0,0); }
????100% { transform:translate3d(10px,0,0); }
}
#teacher #header-visual span#denkikki {
    width: 85px;
	left: -10px;
    bottom: 0px;
    animation: roll 2s infinite linear alternate;
}
@keyframes roll {
  0% { transform: rotateZ(15deg) scale(0.9); }
????50% { transform: rotateZ(-15deg) scale(1.0); }
????100% { transform: rotateZ(15deg) scale(0.9); }
}
@media screen and (max-width: 640px) {
#teacher #header-visual span#yonkun{
	width: 50px;
	right: 35px;
	bottom: 0px;
}
#teacher #header-visual span#denkikki{
	width: 50px;
	left: 35px;
	bottom: 0px;
}	
}

#teacher #lower-menu {
    width: 600px;
}
#teacher #lower-menu li {
	width: auto;
}
@media screen and (max-width: 700px) {
#teacher #lower-menu {
    width: 95%;
}
}

#teacher #lower-main-inner:before,
#teacher #lower-main-inner:after {
	content: '';
	position: absolute;
	width: calc(100% + 20px);
	left: -10px;
	height: 15px;
	background-image: url(/cnt_kids/img/teacher/teacher-inner-border-top.png);
	background-repeat: repeat-x;
	background-size: cover;
}
#teacher #lower-main-inner:before {top: -15px;}
#teacher #lower-main-inner:after {
	background-image: url(/cnt_kids/img/teacher/teacher-inner-border-bottom.png);
	bottom: -15px;
	background-position: left bottom;
}
#teacher #lower-main-inner-sub:before, 
#teacher #lower-main-inner-sub:after {
	content: '';
	position: absolute;
	width: 15px;
	top: -3px;
	height: calc(100% + 10px);
	background-image: url(/cnt_kids/img/teacher/teacher-inner-border-left.png);
	background-repeat: repeat-y;
	background-size: contain;
}
#teacher #lower-main-inner-sub:before {left: -15px;}
#teacher #lower-main-inner-sub:after {
	background-image: url(/cnt_kids/img/teacher/teacher-inner-border-right.png);
	right: -15px
}

#container-shisetsu{
	position: relative;
	margin-top: 30px;
	margin-bottom: 50px;
}
.icon-shisetsu{
	position: absolute;
	width: 28%;
}
#shisetsu-sakaide{
	top: 4%;
    right: 8%;
	/*animation: FloatVertical 2s ease-in-out infinite alternate;*/
}
#shisetsu-tachibana{
	top: 20%;
    right: -12%;
	/*animation: FloatVertical2 2s ease-in-out infinite alternate;*/
}
#shisetsu-saijo{
	top: 20%;
    left: 40%;
	/*animation: FloatVertical2 2s ease-in-out infinite alternate;*/
}
#shisetsu-matsuyama{
	top: 18%;
    left: 12%;
	/*animation: FloatVertical2 2s ease-in-out infinite alternate;*/
}
#shisetsu-hoan{
	top: 34%;
    left: -2%;
	/*animation: FloatVertical 2s ease-in-out infinite alternate;*/
}
#shisetsu-ikata{
	bottom: 48%;
    left: 0%;
	/*animation: FloatVertical2 2s ease-in-out infinite alternate;*/
}
#shisetsu-visitorshouse{
	bottom: 31%;
    left: 0%;
	/*animation: FloatVertical 2s ease-in-out infinite alternate;*/
}
#shisetsu-jpower{
	top: 37%;
    right: -4%;
	/*animation: FloatVertical 2s ease-in-out infinite alternate;*/
}
#shisetsu-hongawa{
	top: 40%;
    left: 38%;
	/*animation: FloatVertical2 2s ease-in-out infinite alternate;*/
}
@keyframes FloatVertical{
	0%{transform:translate3d(0,2px,0)}
	50%{transform:translate3d(0,-1px,0)}
	100%{transform:translate3d(0,2px,0)}
}
@keyframes FloatVertical2{
	0%{transform:translate3d(0,-1px,0)}
	50%{transform:translate3d(0,2px,0)}
	100%{transform:translate3d(0,-1px,0)}
}
@media screen and (max-width: 640px) {
#shisetsu-hoan{top: 31%;}
#shisetsu-ikata{bottom: 45%;}
#shisetsu-visitorshouse { bottom: 27%;}
}

.list-info{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 90%;
	margin: 30px auto 0px;
}
.block-info{
	width: 49.5%;
	border: 3px solid #e4e4e4;
    border-radius: 10px;
    margin-bottom: 10px;
    padding: 15px 5px;
    background-color: #ffffeb;
}
#lower-main-inner .block-info h2{margin-bottom: 0}
#lower-main-inner .block-info h2 span{
	display: inline-block;
	font-size: 1.2em;
	background-color: #f9f95c !important;
	border-radius: 18px;
	margin-bottom: 10px;
	border: none;
	box-shadow: none;
	color: #000000;
	padding: 0.1em 1em;
	margin-top: 0em;
}
.block-info li{
	text-align: center;
	line-height: 1.5
}
#teacher #lower-main-inner .block-info .block-pdf h3{
	font-size: 0.9em;
    text-align: left;
    font-weight: normal;
    color: #000000;
    line-height: 1.2;
	margin-top: 0px;
	margin-bottom: 5px;
}
#teacher #lower-main-inner .block-info .block-pdf p{
	font-size: 0.9em;
}
@media screen and (max-width: 640px) {
.list-info{	width: 100%;}
.block-info li{text-align: left;}	
.block-info{width: 100%;padding: 15px 10px;}
}

/*施設一覧*/
.shisetu-info{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 50px;
}
.office {
	padding: 6px 20px;
	color: #ffffff;
	font-weight: bold;
}
.office.office-orange{background-color: #f9be01}
.office.office-green{background-color: #009142}
.office.office-red{background-color: #e40113}
.office.office-blue{background-color: #3ea1db}
.shisetu-info dl.officedata {
  padding: 12px 20px;
  font-size: 87.5%;
  line-height: 1.5;
  border: 1px solid #e4e4e4;
}
.shisetu-info dl.officedata dt {
	width: 8.5em;
	color: #000000;
	font-weight: bold;
	text-align: right;
}
.shisetu-info dl.officedata dd {
  margin: -1.5em 0 3px 9.5em
}
.shisetu-info dl.officedata dd .tomap {
  margin: 3px 0 0 5px;
  padding: 1px 5px 3px;
  display: inline-block;
  vertical-align: middle;
  vertical-align: top;
  font-size: .8rem;
  color: #fff;
  line-height: 1;
  text-decoration: none !important;
  background-color: #006cd8;
  border-radius: 3px
}
.shisetu-info dl.officedata dd .tomap:before {
  margin: 2px 3px 0 0;
  display: inline-block;
  vertical-align: middle;
  vertical-align: top;
  content: '\f3c5';
  font-family: "Font Awesome 5 Free";
  font-size: 80%;
  font-weight: 900
}
.shisetu-info dl.officedata dd .tomap:hover {
  background-color: #004189
}
@media screen and (max-width: 640px) {
.shisetu-info{	width: 100%;}
.shisetu-info dl.officedata dt {
	width: 100%;
	text-align: left;
	border-bottom: 1px dotted #000000;
}	
.shisetu-info dl.officedata dd {
	margin: 0em 0 10px 0em;
	word-break: break-all;
}	
}

/*見出し*/
#teacher #lower-main-inner h3{
	margin-top: 60px;
	font-size: 1.7em;
	margin-bottom: 40px;
}
#teacher #lower-main-inner h3 span{
	border: 7px solid #efe5dd;
	margin: 10px;
	padding: 10px 15px;
	position: relative;
	z-index: 0;
}
#teacher #lower-main-inner h4 span{
	border-bottom: 1px solid #444444;
	display: inline-block;
	margin-bottom: 20px;
	padding-left: 20px;
	padding-right: 20px;
	position: relative
}
#teacher #lower-main-inner h4 span:before,
#teacher #lower-main-inner h4 span:after{
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #000000;
	bottom: -4px
}
#teacher #lower-main-inner h4 span:before{left: 0}
#teacher #lower-main-inner h4 span:after{right: 0}
.text-attention{
	text-align: center;
	color: #e70021;
	font-weight: bold;
	line-height: 1.4
}
@media screen and (max-width: 768px) {
#teacher #lower-main-inner h3{
	margin-top: 40px;
	font-size: 1.3em;
	margin-bottom: 30px;
}	
#teacher #lower-main-inner h3 span {
    border: 4px solid #efe5dd;
    margin: 0px;
	padding: 5px;}	
}
@media screen and (max-width: 500px) {
	#teacher #lower-main-inner h3 span{display: block}	
}

/* -----------------------------------
    注意事項
   ----------------------------------- */
#block-attention{
	color: #e70021;
	border: 4px double #e70021;
	margin: 30px auto 50px;
	padding: 15px;
	width: 85%;
}
#block-attention h2{
	font-size: 1.35em;
	background-color: #fce4e7;
	margin-bottom: 10px;
}
@media screen and (max-width: 640px) {
#block-attention{width: 100%;}	
#block-attention h2{font-size: 1.1em;}
}

/* -----------------------------------
    資料請求
   ----------------------------------- */
.block-pamphlet{
	display: flex;
	justify-content: center;
	width: 80%;
	margin: 20px auto 0;
}
.block-pamp{
	width: 48%;
	margin-left: 20px;
	margin-right: 20px;
}
.block-pamp div img{border: 1px solid #aaaaaa}
.title{
	font-weight: bold;
	font-size: 1.1em;
	margin-top: 5px;
	margin-bottom: 10px;
}

/* -----------------------------------
    動画
   ----------------------------------- */
#container-youtubeBox {
	width: 70%;
	margin: 0 auto 50px;
}
.container-youtube {
	background-color: #000000;
	position: relative;
	width: 100%;
	padding-top: 55%;
	margin-top: 50px;
}
.container-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width:768px) {
#container-youtubeBox {
	width: 90%;
}
}
@media screen and (max-width: 680px) {
#container-youtubeBox {	width: 100%;}
.block-pamphlet{width: 100%;}	
}
@media screen and (max-width: 600px) {
.block-pamphlet{
	display: block;
}	
.block-pamp {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0 0px 15px;
}	
.img-pamp{width: 40%;}	
.text-pamp{width: 55%}
.title{font-size: 1em}	
}
@media screen and (max-width: 480px) {
.block-pamp {
	display: block;
	margin-bottom: 20px
}	
.img-pamp,
.text-pamp{width: 100%;}
}


#teacher .dl-list{
	width: 50%;
	margin: 20px 0.7em 0px;
}
@media screen and (max-width: 640px) {
#teacher .dl-list{
	width: 100%;
	margin: 20px 0em 0px;
}	
}

@media screen and (max-width: 640px) {
#teacher #list-mokuji-left{
	position: static;
	bottom: auto;
	margin-bottom: 40px
}
th#tbl-hiyou{width: 45% !important}	
}