@charset "utf-8";
/* CSS Document */
#main-visual {
 height: 350px;
}
#main-visual span {
 margin-top: 80px;
}
#about #main-visual span + img, #about2 #main-visual span + img, #about3 #main-visual span + img {
 width: 1500px;
 margin-left: -750px;
}
#main-visual span img:nth-of-type(1) {
 margin: 0.5em auto 0;
 display: block;
 width: 400px;
 height: auto;
}
#main-visual span + img {
 margin-top: 28px;
}
#main-visual h2 {
 display: none;
}
@media screen and (max-width: 640px) {
 #main-visual {
  margin-top: 50px;
  height: 320px;
 }
 #main-visual h2 {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 120%;
  padding: 90px 0 50px;
 }
 #about #main-visual span + img, #about2 #main-visual span + img {
  width: 1000px;
  display: inline-block;
  height: auto;
  position: relative;
  left: 50%;
  margin-top: 30px;
  margin-left: -500px;
 }
 #main-visual span {
  display: none;
 }
 #sp_logo2 {
  position: relative;
  display: block;
  z-index: 10;
  margin: 0.5em auto 0;
  width: 150px;
  height: auto;
 }
 #cloud1 {
  top: 130px;
  left: 20px;
 }
 #cloud2 {
  display: none;
 }
}
#contents_box nav#pager {
 max-width: 870px;
 margin: 0 auto 0;
 padding: 2em 30px 0;
 line-height: 2;
}
#page_nav {
 margin: 0 auto 3em;
 padding: 0;
}
#page_nav ul {
 margin: 0 auto;
 padding-top: 3em;
 width: 100%;
 text-align: center;
}
#page_nav li {
 display: inline-block;
 text-align: center;
 vertical-align: top;
 line-height: 1.2;
 margin: 0 2em;
}
#page_nav li a {
 display: inline-block;
 border: none;
 padding-bottom: 8px;
}
#page_nav li img {
 width: 130px;
 height: auto;
 border-radius: 50%;
 text-align: center;
 margin-bottom: 10px;
}
#page_nav li:hover a img {
 border: 3px solid #54c6ff;
}
#page_nav li:hover a {
 color: #54c6ff;
}
.page {
 color: #54c6ff;
}
.page img {
 border: 3px solid #54c6ff;
}
#contents_box h2 {
 display: none;
}
#contents {
 max-width: 680px;
 margin: 0 auto;
 line-height: 2;
}
#contents div {
 margin: 5em auto 0;
}
#contents h3 {
 text-align: center;
 font-size: 140%;
 color: #54c6ff;
 line-height: 1.2;
 margin-bottom: 1em;
}
#contents h3 br {
 display: none;
}
#contents h3 img {
 vertical-align: middle;
}
#contents h3 img:nth-of-type(1) {
 padding-right: 8px;
}
#contents h3 img:nth-of-type(2) {
 padding-left: 8px;
}
table {
 width: 100%;
 border-collapse: collapse;
 border-bottom: 1px solid #54c6ff;
}
#contents tr {
 border-top: 1px solid #54c6ff;
}
#contents th {
 padding: 2em 2em 0 0;
 white-space: nowrap;
}
#contents td {
 padding: 2em 0;
}
#contents td span {
 display: block;
}
#contents td span:nth-of-type(1) {
 border-bottom: 1px dotted #54c6ff;
 padding-bottom: 1em;
}
#contents td span:nth-of-type(2) {
 padding-top: 1em;
}
#contents p {
 text-align: justify;
}
#contents dl {
 text-align: center;
 margin-bottom: 2em;
}
#contents dt {
 font-size: 140%;
 color: #54c6ff;
 margin-bottom: 0.5em;
}
#contents dt img {
 vertical-align: middle;
}
#contents dd {
 background: #fff;
 padding: 2em 0;
 border-right: 1px solid #bbb;
 border-bottom: 1px solid #bbb;
 border-radius: 15px;
}
#contents dd span {
 color: #54c6ff;
}
#contents section {
 margin-bottom: 3em;
}
#contents dl + p {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
#contents dl + p img {
 width: 48%;
 height: auto;
 border-radius: 15px;
}
#contents dl + p img:nth-of-type(1) {
 margin-right: 20px;
}
#contents h3 + P span {
 display: block;
 text-align: right;
 padding: 0;
}
#care_policy {
 background: url(../../img/k12.jpg) no-repeat;
 border-radius: 20px;
 padding: 1.5em;
 display: flex;
 flex-direction: column;
 align-items: center;
}
#care_policy dt {
 margin: 0 0 1rem;
}
#care_policy dd {
 background: none;
 border: none;
 padding: 0;
 display: flex;
 flex-direction: column;
}
#care_policy dd p {
 margin-bottom: 0.5rem;
}
#care_policy dd span {
 padding-right: 5px;
}
#care_policy dd p:nth-of-type(1) span {
 color: #ff6522;
}
#care_policy dd p:nth-of-type(2) span {
 color: #54c6ff;
}
#care_policy dd p:nth-of-type(3) span {
 color: #f44779;
}
#care_policy dd p:nth-of-type(4) span {
 color: #b86ad7;
}
#care_policy dd p:nth-of-type(5) span {
 color: #88c200;
}
@media screen and (max-width: 640px) {
 #contents {
  padding: 0;
 }
 #contents_box h2 {
  display: block;
  text-align: center;
  font-size: 130%;
  color: #54c6ff;
 }
 #contents div {
  margin: 2em auto 0;
 }
 #page_nav {
  margin: 3rem auto 0;
 }
 #page_nav ul {
  margin: 0 auto 0;
  padding-top: 1em;
 }
 #page_nav li {
  margin: 0 0.5em;
  font-size: 85%;
 }
 #page_nav li img {
  width: 75px;
  margin-bottom: 8px;
 }
 #contents {
  font-size: 90%;
  line-height: 1.7;
 }
 #contents section {
  margin-bottom: 1.5em;
 }
 #contents h3 {
  margin-bottom: 0.5em;
 }
 #contents h3 br {
  display: inline;
 }
 #contents h3 span {
  display: none;
 }
 #contents h3 img:nth-of-type(1) {
  display: block;
  margin: 0 auto;
  margin-bottom: 0.5em;
  padding: 0;
 }
 #contents h3 img:nth-of-type(2) {
  display: none;
  padding: 0;
 }
 #contents dl {
  margin-bottom: 1em;
 }
 #contents dl + p img {
  width: 100%;
 }
 #contents dl + p img:nth-of-type(1) {
  margin: 0 0 10px;
 }
 #contents dt {
  margin-bottom: 0;
 }
 #contents dd {
  padding: 1em;
 }
 #care_policy dd {
  margin: 0;
  padding: 0.5em 0 0 1em;
  text-align: justify;
  text-indent: -1em;
 }
}
#principal {
 border-bottom: 1px solid #54c6ff;
}
#principal .flex-content {
 margin-top: 0;
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
}
#principal .left-txt {
 width: 338px;
}
#principal .left-txt .name {
 display: none;
}
#principal .right-txt {
 width: 260px;
 margin-left: 15px;
 height: auto;
 display: block;
 text-align: right;
}
#principal .right-txt .name {
 margin-top: 1em;
 font-size: 14px;
 text-align: right;
}
@media screen and (max-width: 640px) {
 #principal .flex-content {
  flex-wrap: wrap;
 }
 #principal .left-txt {
  width: 100%;
  margin-bottom: 0.7em;
  order: 2;
 }
 #principal .left-txt .name {
  display: block;
  margin-top: 1.5em;
  text-align: right;
  font-size: 14px;
 }
 #principal .right-txt {
  order: 1;
  width: 100%;
  margin-left: 0;
  margin-bottom: 1em;
 }
 #principal .right-txt img {
  width: 100%;
  margin-left: 0;
 }
 #principal .right-txt .name {
  display: none;
 }
}