@charset "UTF-8";
/* リセット */
body {
  font: 14px "メイリオ","ＭＳ Ｐゴシック",arial,helvetica,clean,sans-serif;
  *font-size: small;
  *font: x-small;
  line-height: 100%;
  color: #333;
}

body, div, p, pre, h1, h2, h3, h4, h5, h6, table, form,
caption, ul, ol, li, dl, dt, dd, img {
  margin: 0;
  padding: 0;
  border: 0;
}

ul, ol {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 13px;
  *font-size: small;
  *font: x-small;
}

a {
  color: #06c;
}

a:visited {
  color: #004B91;
}

a:hover {
  color: #e55992;
  text-decoration: none;
}

a:active {
  color: #e55992;
}

/* ヘッダー */
.l-header {
  border-bottom: 1px solid #bdbdbd;
}

.header {
  width: 980px;
  height: 95px;
  margin: 0 auto;
  display: table;
}

.header-logo {
  display: table-cell;
  width: 50%;
  height: 95px;
  text-align: left;
  vertical-align: middle;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.header-cv {
  display: table-cell;
  width: 50%;
  height: 95px;
  text-align: right;
  vertical-align: middle;
}

/* コンテンツ */
.l-content {
  width: 100%;
}

/* メインビジュアル */
.mv {
  height: 424px;
  background: #f0f0f0;
}

.mv-box {
  width: 1130px;
  height: 424px;
  margin: 0 auto;
  font-size: 0;
  position: relative;
}

.mv-text {
  width: 739px;
  height: 361px;
  position: absolute;
  top: 2px;
  left: -2px;
}

.mv-photo {
  width: 402px;
  height: 412px;
  position: absolute;
  bottom: 0;
  right: 41px;
}

/* ナビ */
.fixedNav {
  width: 100%;
  height: 80px;
  background: #002657;
  border-top: 1px solid #002657;
  border-bottom: 1px solid #002657;
}

.followNav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
}

.fixedNav-outer {
  height: 82px;
  margin: 0;
}

.fixedNav-box {
  display: table;
  width: 980px;
  height: 80px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.fixedNav-item {
  display: table-cell;
  width: 244px;
  height: 78px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background: #005bac;
  font-size: 18px;
  text-decoration: none;
  border-right: 1px solid #002657;
}

.fixedNav-item:link, .fixedNav-item:visited, .fixedNav-item:active {
  color: #fff;
  text-decoration: none;
}

.fixedNav-item:hover {
  color: #fff;
  text-decoration: none;
  background: #2980cc;
}

.fixedNav-item::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  line-height: 1.5;
  margin: 0 10px 0 0;
}

.fixedNav-item__01::before {
  width: 24px;
  height: 24px;
  background: url(/yobikou/img/lp23/ic_nav01.png) no-repeat 0 0;
}

.fixedNav-item__02::before {
  width: 28px;
  height: 27px;
  background: url(/yobikou/img/lp23/ic_nav02.png) no-repeat 0 0;
}

.fixedNav-item__03::before {
  width: 18px;
  height: 26px;
  background: url(/yobikou/img/lp23/ic_nav03.png) no-repeat 0 0;
}

.fixedNav-item.fixedNav-item__04 {
  background: #f55c00;
  width: 255px;
  border-right: none;
}

.fixedNav-item.fixedNav-item__04:hover {
  background: #ed7934;
}

.fixedNav-item__04::before {
  width: 28px;
  height: 21px;
  background: url(/yobikou/img/lp23/ic_navcv.png) no-repeat 0 0;
}

.effect-sparkle {
  position: relative;
  overflow: hidden;
}
.effect-sparkle::after {
  content: "";
  display: block;
  height: 100%;
  width: 30%;
  position: absolute;
  top: -180px;
  left: -180px;
  background-color: #ffdac4;
  opacity: 0;
  animation: sparkle 4s ease-in-out infinite;
  -webkit-animation: sparkle 4s ease-in-out infinite;
  -moz-animation: sparkle 4s ease-in-out infinite;
  -ms-animation: sparkle 4s ease-in-out infinite;
}
.effect-sparkle:hover::after {
  animation: none;
  -webkit-animation: none;
  -moz-animation: none;
  -ms-animation: none;
}

@keyframes sparkle {
  0% {
    transform: scale(0) rotate(-45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(-45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(-45deg);
    opacity: 1;
  }
  100% {
    transform: scale(80) rotate(-45deg);
    opacity: 0;
  }
}
/*学力診断テスト*/
.exam {
  height: 470px;
  background: url(/yobikou/img/lp23/cv_exam_bg.jpg) no-repeat 50% 0 #fff;
  margin: 0 0 120px;
}

.exam-cont-img {
  text-align: center;
  margin: 0 0 20px;
}

.exam-cont-button {
  text-align: center;
}
.exam-cont-button a {
  display: inline-block;
  width: 441px;
  height: 91px;
  border-radius: 10px;
  background: #fff;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-box-shadow: #b2b2b2 0 2px 8px;
  -webkit-box-shadow: #b2b2b2 0 2px 8px;
  box-shadow: #b2b2b2 0 2px 8px;
}
.exam-cont-button a:hover img {
  opacity: .8;
}

/* リードコンテンツ */
.leadCont {
  width: 100%;
  background: #ebfeff;
  padding: 50px 0 40px;
  margin: 0 0 80px;
}

.leadCont-q {
  text-align: center;
  position: relative;
  margin: 0 0 35px;
}
.leadCont-q::before {
  content: "";
  display: block;
  width: 102px;
  height: 115px;
  position: absolute;
  margin: 0 auto;
  background: url(/yobikou/img/lp23/demand_ic_q.png) no-repeat 50% 50%;
  top: -120px;
  right: 0;
  left: 0;
}

.leadCont-list {
  width: 870px;
  height: 184px;
  margin: 0 auto 30px;
}

.leadCont-list li {
  background: #fff;
  width: 425px;
  height: 82px;
  float: left;
  margin: 0 20px 20px 0;
}
.leadCont-list li:nth-child(2n) {
  margin: 0 0 20px 0;
}

.leadCont-text {
  text-align: center;
}

/* 城南医志塾とは？ */
.title-large {
  width: 100%;
  border-bottom: 1px solid #c8c8c8;
  text-align: center;
  padding: 102px 0 20px;
  position: relative;
  margin: -102px 0 40px;
  height: 49px;
}

.title-large::after {
  content: "";
  display: block;
  width: 606px;
  height: 3px;
  position: absolute;
  margin: 0 auto;
  right: 0;
  bottom: -2px;
  left: 0;
  background: #005bac;
}

.title-middle {
  width: 870px;
  text-align: left;
  border-bottom: 2px solid #005bac;
  margin: 0 auto 40px;
  line-height: 1;
  padding: 0 0 10px;
}

/*cv*/
.cv-normal {
  text-align: center;
  padding: 20px 0;
  margin: 0 0 40px;
  background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuMCIgeTE9IjAuNSIgeDI9IjEuMCIgeTI9IjAuNSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iNTAlIiBzdG9wLWNvbG9yPSIjZWVlZWVlIi8+PHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g');
  background: -webkit-gradient(linear, 0% 50%, 100% 50%, color-stop(0%, #ffffff), color-stop(50%, #eeeeee), color-stop(100%, #ffffff));
  background: -moz-linear-gradient(left, #ffffff 0%, #eeeeee 50%, #ffffff 100%);
  background: -webkit-linear-gradient(left, #ffffff 0%, #eeeeee 50%, #ffffff 100%);
  background: linear-gradient(to right, #ffffff 0%, #eeeeee 50%, #ffffff 100%);
}

.cv-normal__mgb {
  margin: 0 0 60px;
}

.cv-normal-text {
  color: #e10000;
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 15px;
}

.cv-normal-button a {
  display: inline-block;
  width: 441px;
  height: 91px;
  border-radius: 10px;
  background: #fff;
  -moz-box-shadow: #b2b2b2 0 3px 5px;
  -webkit-box-shadow: #b2b2b2 0 3px 5px;
  box-shadow: #b2b2b2 0 3px 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.cv-normal-button a:hover img {
  opacity: .8;
}

/* コンテンツ1 */
.content01-lead {
  width: 870px;
  margin: 0 auto 60px;
  font-size: 20px;
  line-height: 1.8;
}

.content0101-list {
  display: block;
  width: 870px;
  margin: 0 auto 60px;
}

.content0101-list-title {
  background: #005bac;
  padding: 15px 30px;
  color: #fff;
  font-size: 22px;
  line-height: 0.9;
}

.content0101-list-item {
  display: table;
  padding: 30px;
  border: 1px solid #005bac;
  width: 100%;
  margin: 0 0 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content0101-list-item:last-child {
  margin: 0;
}

.content0101-list-item-text {
  display: table-cell;
  width: 503px;
  font-size: 14px;
  line-height: 2;
  vertical-align: top;
}

.content0101-list-item-text strong {
  font-size: 18px;
  font-weight: bold;
  color: #005bac;
  display: block;
  line-height: 1.5;
  margin: 0 0 15px;
}

.content0101-list-item-text-premium {
  display: block;
  padding: 10px;
  margin: 20px 0 0;
  background: #f3e1d5;
  border-radius: 5px;
}

.content0101-list-item-img {
  display: table-cell;
  text-align: right;
  vertical-align: top;
}

/* コンテンツ02 */
.title-small {
  font-size: 32px;
  font-weight: normal;
  color: #333;
  width: 870px;
  line-height: 1.2;
  margin: 0 auto 10px;
}

.content0102-lead {
  width: 870px;
  font-size: 19px;
  line-height: 1.8;
  margin: 0 auto 30px;
}

.content0102-teacher {
  width: 870px;
  margin: 0 auto 40px;
}

.content0102-teacher-item {
  background: #002657;
  padding: 30px;
  color: #fff;
  display: table;
  width: 100%;
  margin: 0 0 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content0102-teacher-img {
  display: table-cell;
  width: 180px;
  text-align: left;
  vertical-align: top;
}

.content0102-teacher-text {
  display: table-cell;
  text-align: left;
  vertical-align: top;
}

.content0102-teacher-name {
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 15px;
}

.content0102-teacher-name img {
  float: right;
}

.content0102-teacher-description-title {
  margin: 0 0 25px;
}

.content0102-teacher-description-text {
  font-size: 14px;
  line-height: 1.8;
}

.content0102-teacher-description-text strong {
  display: block;
  font-size: 16px;
  font-weight: bold;
}

/* コンテンツ3 */
.content0103-lead {
  width: 870px;
  font-size: 20px;
  line-height: 1.8;
  margin: 0 auto 30px;
}

.content010301 {
  width: 870px;
  margin: 0 auto 30px;
  background: #f5f4ed;
  padding: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content010301-title {
  font-size: 32px;
  font-weight: normal;
  color: #044d8d;
  border-bottom: 1px solid #044d8d;
  padding: 0 0 5px;
  line-height: 1.2;
  margin: 0 0 20px;
}

.content010301-lead {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 35px;
}

.content010301-box {
  background: #4c4c4a;
  display: table;
  padding: 20px;
}

.content010301-left {
  display: table-cell;
  width: 170px;
  vertical-align: top;
}

.content010301-left img {
  margin: 0 0 15px;
  color: #fff;
}

.content010301-left p {
  width: 150px;
  font-size: 12px;
  line-height: 1.8;
  color: #fff;
}

.content010301-left p span {
  display: block;
  color: inherit;
}

.content010301-right {
  display: table-cell;
  vertical-align: top;
  color: #fff;
}

.content010301-name {
  font-size: 24px;
  line-height: 1.2;
  border-bottom: 1px solid #d4d1c1;
  margin: 0 0 15px;
  padding: 0 0 10px;
}

.content010301-name small {
  font-size: 16px;
}

.content010301-text {
  font-size: 14px;
  line-height: 1.8;
  margin: 0 0 20px;
}

.content010302 {
  width: 870px;
  margin: 0 auto 60px;
  background: #edf1f5;
  padding: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content010302-title {
  font-size: 32px;
  font-weight: normal;
  color: #005bac;
  border-bottom: 1px solid #005bac;
  padding: 0 0 5px;
  line-height: 1.2;
  margin: 0 0 20px;
}

.content010302-lead {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 35px;
}

.content010302-box {
  width: 100%;
  table-layout: fixed;
}

.content010302-box td {
  width: 20px;
}

.content010302-box .content010302-item {
  width: 405px;
  height: 250px;
  vertical-align: top;
  padding: 25px 20px;
  color: #fff;
  background: #3d4f63;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content010302-item-img {
  float: left;
  width: 120px;
}

.content010302-item-text {
  float: right;
  width: 245px;
}

.content010302-item-text-name {
  font-size: 20px;
  line-height: 1.2;
  padding: 0 0 5px;
  margin: 0 0 15px;
  border-bottom: 1px solid #c1c9d4;
}

.content010302-item-text-name span {
  font-size: 14px;
  display: block;
  margin: 0 0 5px;
}

.content010302-item-main {
  font-size: 12px;
  line-height: 1.6;
}

.content010302-item-text-name small {
  font-size: 11px;
}

/* コンテンツ4 */
.content0104-lead {
  width: 870px;
  font-size: 16px;
  line-height: 1.8;
  margin: 0 auto 30px;
}

.content0104-photo {
  width: 900px;
  margin: 0 auto 30px;
}

.content0104-photo::after {
  content: " ";
  display: block;
  clear: both;
}

.content0104-photo-item {
  width: 270px;
  height: 230px;
  float: left;
  margin: 0 15px;
}

.content0104-photo-item img {
  display: block;
  width: 270px;
  height: 167px;
}

.content0104-photo-item p {
  font-size: 12px;
  padding: 10px 0;
}

.content0104-dormitory {
  width: 870px;
  background: #eef5ed;
  padding: 20px;
  margin: 0 auto 80px;
}

.content0104-dormitory-title {
  width: 870px;
  margin: 0 auto 25px;
  font-size: 28px;
  color: #259915;
  border-bottom: 1px solid #259915;
  line-height: 1.1;
  padding: 0 0 5px;
}

.content0104-dormitory-text {
  width: 870px;
  margin: 0 auto;
  display: table;
}

.content0104-dormitory-text-left {
  display: table-cell;
  width: 552px;
  text-align: left;
  vertical-align: top;
  font-size: 14px;
  line-height: 2;
}

.content0104-dormitory-text-right {
  display: table-cell;
  text-align: right;
  vertical-align: top;
}

.content0104-dormitory-caution {
  clear: both;
  text-align: right;
  font-size: 11px;
  margin: 5px 0 0;
}

/* 合格実績 */
.content02-lead {
  font-size: 16px;
  width: 870px;
  margin: 0 auto 30px;
}

.content02-uniList-bg {
  width: 870px;
  padding: 20px 20px 1px;
  margin: 0 auto 30px;
  background: url(/yobikou/img/lp23/unilist_bg.png) no-repeat 775px 5px #fff0fe;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.content02-subTitle {
  font-size: 28px;
  font-weight: normal;
  color: #cc1455;
  line-height: 1.3;
  margin: 0 0 20px;
  padding: 0 0 5px;
  border-bottom: 1px solid #cc1455;
}

.content02-uniList {
  width: 870px;
  font-size: 0;
}

.content02-uniList-name {
  text-align: center;
  background: #fff;
  font-size: 16px;
  display: inline-block;
  line-height: 40px;
  width: 264px;
  height: 40px;
  margin: 0 19px 19px 0;
}

.content02-caution {
  width: 870px;
  margin: 0 auto 80px;
  text-align: right;
}

/* 合格者の声 */
.content03-lead {
  width: 870px;
  font-size: 16px;
  line-height: 1.8;
  margin: 0 auto 35px;
}

.content03 {
  margin: 0 0 80px;
}

.content03-item {
  background: #fff0fe;
}

.content03-item-box {
  width: 710px;
  margin: 0 auto 30px;
  padding: 10px 0 20px;
}

.content03-item-subTitle {
  margin: 0 0 15px;
}

.content03-item-comment {
  padding: 10px 15px;
  background: #fff;
  border-radius: 100px;
  margin: 0 0 20px;
  font-size: 14px;
  line-height: 1.5;
}

.content03-item-movie {
  padding: 0 3px;
}

.content04-box {
  width: 870px;
  margin: 0 auto 80px;
}

.content04-box::after {
  content: " ";
  display: block;
  clear: both;
}

.content04-item {
  float: left;
  width: 342px;
  height: 342px;
  padding: 0 27px 0 0;
  margin: 0 0 27px 0;
}

.content04-map {
  float: left;
  width: 500px;
  height: 342px;
}

.content04-schoolInfo {
  width: 350px;
  float: right;
}

.content04-address {
  width: 350px;
  padding: 0 27px 0 0;
  font-size: 18px;
  line-height: 1.8;
  margin: 0 0 30px;
}

.content04-traffic {
  width: 350px;
  font-size: 18px;
}

.content04-traffic-table {
  border: 1px solid #c8c8c8;
  width: 100%;
  margin: 16px 0 0;
}

.content04-traffic-table th, .content04-traffic-table td {
  font-size: 14px;
  padding: 15px 10px;
  font-weight: normal;
  text-align: left;
  border: 1px solid #c8c8c8;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.content04-traffic-table th {
  width: 135px;
}

/* 入学までの流れ */
.content05-chart {
  width: 710px;
  margin: 0 auto 30px;
  font-size: 0;
}

.content05-chart-item {
  position: relative;
  background: #f2f8fd;
  border-radius: 5px;
  padding: 10px;
  margin: 0 0 80px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.content05-chart-item:not(:last-child)::after {
  position: absolute;
  content: "";
  display: block;
  width: 75px;
  height: 26px;
  background: url(/yobikou/img/lp23/arrow_thin_blue.png) no-repeat 0 0;
  margin: 0 auto;
  bottom: -40px;
  left: 0;
  right: 0;
}

.content05-chart-item p {
  display: inline-block;
  vertical-align: top;
}

.content05-chart-item-title {
  font-size: 22px;
  font-weight: bold;
  width: 216px;
}

.content05-chart-item-title span {
  display: inline-block;
  width: 27px;
  height: 27px;
  background: #fff;
  border: 1px solid #002657;
  border-radius: 50%;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  color: #002657;
  line-height: 1.5;
  margin: 0 15px 0 0;
}

.content05-chart-text {
  display: inline-block;
  width: 474px;
  font-size: 16px;
  line-height: 1.5;
}

/* footer */
.l-footer {
  margin: 0 0 80px;
}

.footer-cv {
  text-align: center;
}

.footer-cv a:hover img {
  opacity: .8;
}

/* 右cv */
.rightCv {
  position: fixed;
  width: 80px;
  height: 468px;
  right: -88px;
  top: 200px;
  background: #fff;
  overflow: hidden;
  border-radius: 10px 0 0 10px;
  -moz-box-shadow: #b2b2b2 0 3px 5px;
  -webkit-box-shadow: #b2b2b2 0 3px 5px;
  box-shadow: #b2b2b2 0 3px 5px;
}

.rightCv:hover img {
  opacity: .8;
}
