@charset "UTF-8";

/* //////////////////////////////////////////////////

　汎用的なパーツのスタイル

////////////////////////////////////////////////// */
/* 見出し
-------------------------------------------------- */
.wp_entry h1 {
  background: url("../img/bg_stripe.png");
  margin-bottom: 50px;
  padding: 35px 25px;
  font-size: 1.625em;
  font-weight: bold;
  line-height: 1.3;
}

.wp_entry h2 {
  font-size: 1.375em;
  /*font-weight: bold;*/
  line-height: 1.3;
  margin-top: 80px;
  margin-bottom: 30px;
}

.wp_entry h3 {
  background: url("../img/bg_h2.png") no-repeat left center;
  background-size: 4px;
  border-bottom: 1px dotted transparent;
  margin-top: 60px;
  margin-bottom: 20px;
  padding: 5px 13px;
  font-size: 1.25em;
  /*font-weight: bold;*/
  line-height: 1.3;
}

.wp_entry h4 {
  background: url("../img/bg_h4.png") no-repeat left center;
  background-size: 10px;
  border-bottom: 1px dotted transparent;
  margin-top: 40px;
  margin-bottom: 20px;
  padding: 5px 13px;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.3;
}

@media screen and (max-width: 560px) {
  .wp_entry h1 {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 30px;
    padding: 17px 10px;
  }

  .wp_entry h2 {
    margin-bottom: 20px;
    background-size: 3px;
  }

  .wp_entry h3 {
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: 15px;
    padding: 12px 10px;
  }

  .wp_entry h4 {
    margin-bottom: 15px;
    background-size: 9px;
  }
}

/* テキスト
-------------------------------------------------- */
.wp_entry p {
  margin: 10px 0;
}

.wp_entry a {
  position: relative;
  padding-right: 1.8em;
}

.wp_entry a::after {
  position: absolute;
  top: 50%;
  right: 0.3em;
  transform: translateY(-55%);
  content: "";
  width: 1em;
  height: 1em;
  background-image: url("../img/mrk_btn_light.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 5px;
  border-radius: 50%;
}

.wp_entry h3 a {
  font-size: 0.9em;
}

.wp_entry a.reverse {
  padding-left: 1.3em;
}

.wp_entry a.reverse::after {
  left: 0;
}

.wp_entry a.no_mark,
.wp_entry a.img_link,
.wp_entry a.link_img {
  padding-right: 0;
}

.wp_entry a.no_mark::after,
.wp_entry a.img_link::after,
.wp_entry a.link_img::after {
  display: none;
}

@media screen and (max-width: 560px) {
  .wp_entry a::after {
    background-size: 4px;
  }
}

.wp_entry em {
  display: block;
  font-size: 1.125em;
  line-height: 1.7;
}

.wp_entry small {
  display: inline-block;
  line-height: 1.6;
  font-size: 0.875em;
}

.wp_entry strong,
.wp_entry b {
  font-weight: bold;
}

.wp_entry dt {
  font-weight: bold;
}

.wp_entry dd+dt {
  margin-top: 1em;
}

.wp_entry ul li {
  padding-left: 1em;
  text-indent: -1em;
}

.wp_entry .roomy li {
  margin-bottom: 10px;
}

.wp_entry ul li::before {
  content: "・";
}

.wp_entry ol li {
  margin-left: 1.5em;
  list-style: decimal;
}

.wp_entry .roomy>li {
  margin-bottom: 10px;
}

.wp_entry .roomy ul {
  margin-top: 10px;
}

.wp_entry .roomy>li:last-child {
  margin-bottom: 0;
}

/* 画像
-------------------------------------------------- */
.wp_entry img {
  max-width: 100%;
  height: auto;
}

.wp_entry figcaption {
  margin-top: 10px;
  font-size: 0.875em;
  line-height: 1.5;
  color: #666;
}

/* 表組
-------------------------------------------------- */
.wp_entry table {
  width: calc(100% + 4px);
  margin: -2px 0;
}

.wp_entry table.auto {
  width: inherit;
}

.wp_entry table th,
.wp_entry table td {
  padding: 18px 20px;
  border: 2px solid #fff;
  line-height: 1.5;
  word-break: break-word;
}

.wp_entry table.table-narrow th,
.wp_entry table.table-narrow td {
  padding: 7px;
}

.wp_entry table th {
  width: 20%;
  /*font-size: 1.125em;*/
  font-weight: bold;
}

.wp_entry table th.light {
  font-size: 1em;
}

.wp_entry table .clear {
  background-color: transparent;
}

.wp_entry table .nowrap {
  white-space: nowrap;
}

.wp_entry .table_note {
  display: none;
}

@media screen and (max-width: 560px) {

  .wp_entry table th,
  .wp_entry table td {
    padding: 10px 15px;
  }

  .wp_entry table.head th,
  .wp_entry table.head td {
    display: block;
    width: auto;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px solid #fff;
    white-space: inherit;
  }

  .wp_entry table.head .clear {
    display: none;
  }

  .wp_entry .table_wrap {
    overflow-x: auto;
    overflow-y: hidden;
  }

  .wp_entry .table_wrap th,
  .wp_entry .table_wrap td {
    white-space: nowrap;
  }

  .wp_entry .clear {
    display: none;
  }

  .wp_entry .table_note {
    display: block;
    margin: 10px 0;
    text-align: center;
    font-size: 12px;
  }
}

/* キャッチコピー
-------------------------------------------------- */
.box10 {
  padding: 40px 25px;
  padding-right: 460px;
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100%;
}

.box10 b,
.box10 strong {
  display: inline-block;
  margin-bottom: 0.2em;
  font-size: 1.625em;
  font-weight: bold;
}

@media screen and (max-width: 960px) {
  .box10 {
    padding-right: 40%;
  }
}

@media screen and (max-width: 560px) {
  .box10 {
    padding: 15px 10px;
    padding-right: 35%;
    margin-left: -10px;
    margin-right: -10px;
  }
}

.box11 {
  padding: 25px 25px;
}

.box11 b,
.box11 strong {
  display: inline-block;
  margin-bottom: 0.2em;
  font-size: 1.625em;
  font-weight: bold;
}

@media screen and (max-width: 560px) {
  .box11 {
    padding: 15px 10px;
    margin-left: -10px;
    margin-right: -10px;
  }
}

/* ページ内リンク
-------------------------------------------------- */
.pnav ul {
  display: flex;
}

.pnav ul li {
  text-indent: 0;
  padding-left: 0;
}

.pnav ul li+li {
  padding-left: 1px;
}

.pnav ul li::before {
  display: none;
}

.pnav ul li a {
  display: flex;
  align-items: center;
  height: 48px;
  padding: 0 30px 0 10px;
  background-image: url("../img/mrk_nav_anchor.png");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 12px;
  font-size: 0.875em;
  line-height: 1.2;
  text-decoration: none;
}

.pnav ul li a:hover {
  opacity: 0.85;
}

.pnav ul li a::after {
  display: none;
}

@media screen and (max-width: 560px) {
  .pnav ul {
    flex-wrap: wrap;
    /*flex-direction: column;*/
  }

  .pnav ul li {
    margin-bottom: 1px;
  }

  .pnav ul li+li {
    padding-left: 0;
  }

  .pnav ul li a {
    height: 45px;
    padding: 0 10px 0 30px;
    background-position: left 10px center;
  }
}

/* ステップ
-------------------------------------------------- */
.step {
  display: flex;
  flex-wrap: wrap;
  margin-top: -50px;
}

.step dt,
.step dd {
  display: flex;
  flex-grow: 2;
  padding: 20px;
  margin: 50px 0 0;
}

.step dt {
  color: #fff;
  font-size: 1.25em;
  line-height: 1.4;
}

.step dt span {
  display: flex;
  align-items: center;
  text-indent: -1.35em;
  padding-left: 1.35em;
}

.step dt::before {
  position: absolute;
  left: 50vw;
  transform: translate(-50%, -55px);
  content: url("../img/mrk_arrow.png");
  line-height: 1;
}

.step dt:first-child::before {
  display: none;
}

.step dd+dt {
  margin-top: 50px;
}

@media screen and (max-width: 960px) {
  .step dd {
    margin-top: 0;
  }
}

@media screen and (max-width: 560px) {
  .step {
    margin-top: -40px;
  }

  .step dt,
  .step dd {
    padding: 10px 15px;
  }

  .step dt {
    margin-top: 40px;
  }

  .step dt::before {
    transform: translate(-50%, -40px) scale(0.75);
  }

  .step dd+dt {
    margin-top: 40px;
  }
}

/* box
-------------------------------------------------- */
.box01,
.box02,
.box03,
.box04,
.box05 {
  padding: 20px 30px;
  border: 1px solid;
}

.box01 h1,
.box01 h2,
.box01 h3,
.box01 h4,
.box01 h5,
.box01 h6,
.box02 h1,
.box02 h2,
.box02 h3,
.box02 h4,
.box02 h5,
.box02 h6,
.box03 h1,
.box03 h2,
.box03 h3,
.box03 h4,
.box03 h5,
.box03 h6,
.box04 h1,
.box04 h2,
.box04 h3,
.box04 h4,
.box04 h5,
.box04 h6,
.box05 h1,
.box05 h2,
.box05 h3,
.box05 h4,
.box05 h5,
.box05 h6 {
  margin: 10px 0;
  background: none !important;
  border: none;
  padding: 0;
  font-size: 1.125em;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
}

@media screen and (max-width: 560px) {

  .box01,
  .box02,
  .box03,
  .box04,
  .box05 {
    padding: 10px 15px;
  }

  .box01 h1,
  .box01 h2,
  .box01 h3,
  .box01 h4,
  .box01 h5,
  .box01 h6,
  .box02 h1,
  .box02 h2,
  .box02 h3,
  .box02 h4,
  .box02 h5,
  .box02 h6,
  .box03 h1,
  .box03 h2,
  .box03 h3,
  .box03 h4,
  .box03 h5,
  .box03 h6,
  .box04 h1,
  .box04 h2,
  .box04 h3,
  .box04 h4,
  .box04 h5,
  .box04 h6,
  .box05 h1,
  .box05 h2,
  .box05 h3,
  .box05 h4,
  .box05 h5,
  .box05 h6 {
    margin: 8px 0;
  }
}

/* ダウンロードボタン
-------------------------------------------------- */
.btn_download {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
  min-width: 300px;
  height: 60px;
  border-radius: 5px;
  color: #fff;
  font-size: 1.125em;
  font-weight: bold;
  text-decoration: none;
  line-height: 1.2;
  vertical-align: top;
  padding-right: 1em;
  padding-left: 1em;
}

.btn_download:hover {
  opacity: 0.8;
  text-decoration: none;
}

.btn_download::after {
  display: none !important;
}

.btn_download i {
  margin-right: 8px;
  width: 20px;
  height: 100%;
  background: url("../img/ico_download.png") no-repeat center 45%;
  background-size: 100%;
}

@media screen and (max-width: 960px) {
  .btn_download {
    min-width: 260px;
    height: 50px;
  }

  .btn_download i {
    width: 18px;
  }
}

@media screen and (max-width: 560px) {
  .btn_download i {
    width: 17px;
  }
}

/* 医師紹介
-------------------------------------------------- */
.section-doctors {
  background-color: #f3f3f3;
  padding: 20px;
}

.section-doctors section+section {
  margin-top: 20px;
}

.doctor01,
.doctor02 {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  border: 1px solid #ccc;
  border-top-width: 4px;
  padding: 20px;
  background: #fff;
}

.doctor01>figure,
.doctor02>figure {
  width: 210px;
  padding-left: 30px;
}

.doctor01>figure img,
.doctor02>figure img {
  width: 100%;
}

.doctor01>div,
.doctor02>div {
  width: calc(100% - 210px);
}

.doctor01 h1,
.doctor01 h2,
.doctor01 h3,
.doctor01 h4,
.doctor01 h5,
.doctor01 h6,
.doctor02 h1,
.doctor02 h2,
.doctor02 h3,
.doctor02 h4,
.doctor02 h5,
.doctor02 h6 {
  background: none;
  border: none;
  margin: 0 0 7px;
  padding: 0 0 6px;
  line-height: 1.4;
  font-size: 1em;
  font-weight: normal;
}

.doctor01 h1 .position,
.doctor01 h2 .position,
.doctor01 h3 .position,
.doctor01 h4 .position,
.doctor01 h5 .position,
.doctor01 h6 .position,
.doctor02 h1 .position,
.doctor02 h2 .position,
.doctor02 h3 .position,
.doctor02 h4 .position,
.doctor02 h5 .position,
.doctor02 h6 .position {
  display: inline-block;
  margin-bottom: 0.2em;
  font-size: 0.875em;
}

.doctor01 h1 .name,
.doctor01 h2 .name,
.doctor01 h3 .name,
.doctor01 h4 .name,
.doctor01 h5 .name,
.doctor01 h6 .name,
.doctor02 h1 .name,
.doctor02 h2 .name,
.doctor02 h3 .name,
.doctor02 h4 .name,
.doctor02 h5 .name,
.doctor02 h6 .name {
  font-size: 1.375em;
  font-weight: bold;
}

.doctor01 h1 .name small,
.doctor01 h2 .name small,
.doctor01 h3 .name small,
.doctor01 h4 .name small,
.doctor01 h5 .name small,
.doctor01 h6 .name small,
.doctor02 h1 .name small,
.doctor02 h2 .name small,
.doctor02 h3 .name small,
.doctor02 h4 .name small,
.doctor02 h5 .name small,
.doctor02 h6 .name small {
  color: inherit;
  font-size: 0.75em;
}

.doctor01 .attach,
.doctor02 .attach {
  margin-bottom: 0.6em;
  font-size: 0.875em;
}

.doctor01 table,
.doctor02 table {
  margin-top: 1.5em;
}

@media screen and (max-width: 960px) {

  .doctor01>figure,
  .doctor02>figure {
    width: 180px;
  }

  .doctor01>div,
  .doctor02>div {
    width: calc(100% - 180px);
  }
}

@media screen and (max-width: 560px) {

  .doctor01,
  .doctor02 {
    display: block;
    padding: 10px;
  }

  .doctor01>figure,
  .doctor02>figure {
    float: right;
    padding: 0 0 10px 15px;
    width: 105px;
  }

  .doctor01>div,
  .doctor02>div {
    width: auto;
  }

  .doctor01 th,
  .doctor01 td,
  .doctor02 th,
  .doctor02 td {
    display: block;
    width: 100% !important;
    border: none;
    padding: 10px 15px;
  }
}

/* お問い合わせ
-------------------------------------------------- */
.cta {
  padding: 0 10px 20px;
  height: 100%;
  background-color: #eee;
  text-align: center;
}

.cta h1,
.cta h2,
.cta h3,
.cta h4,
.cta h5,
.cta h6 {
  padding: 10px;
  margin: 0 -10px 25px;
  border: none;
  background-image: none;
  color: #fff;
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1.3;
}

.cta p {
  line-height: 1.6;
}

.cta em {
  display: inline-block;
  font-weight: bold;
  font-size: 1.5em;
}

.cta .tel {
  display: inline-block;
  padding: 5px 0;
  padding-left: 40px;
  background-image: url("../img/ico_tel_black.png");
  background-size: 30px;
  background-repeat: no-repeat;
  background-position: 0 40%;
  font-size: 2em;
  /*font-weight: bold;*/
  line-height: 1;
  margin-right: 0;
  text-decoration: none;
  white-space: nowrap;
}

.cta .tel::after {
  display: none;
}

.cta .tel+p {
  margin-top: 0.4em;
}

.cta .fax {
  display: inline-block;
  padding: 5px 0;
  padding-left: 42px;
  background-image: url("../img/ico_fax_black.png");
  background-size: 32px;
  background-repeat: no-repeat;
  background-position: 0 45%;
  font-size: 2em;
  /*font-weight: bold;*/
  line-height: 1;
}

@media screen and (max-width: 960px) {

  .cta h1,
  .cta h2,
  .cta h3,
  .cta h4,
  .cta h5,
  .cta h6 {
    margin-bottom: 15px;
  }

  .cta .tel {
    padding-left: 30px;
    background-size: 25px;
  }

  .cta .fax {
    padding-left: 35px;
    background-size: 26px;
  }
}

@media screen and (max-width: 560px) {
  .cta .tel {
    padding-left: 29px;
    background-size: 23px;
  }

  .cta .fax {
    padding-left: 32px;
    background-size: 24px;
  }
}

/* FAQ
-------------------------------------------------- */
.qa dt,
.qa dd,
.elastic dt,
.elastic dd {
  position: relative;
  padding: 15px;
  padding-left: 25px;
  line-height: 1.6;
}

.qa dt::before,
.qa dd::before,
.elastic dt::before,
.elastic dd::before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 10px;
  content: "";
}

.qa dt,
.elastic dt {
  font-weight: normal;
  cursor: pointer;
}

.qa dt::after,
.elastic dt::after {
  position: relative;
  top: 2px;
  left: 5px;
  display: inline-block;
  content: "";
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-image: url("../img/mrk_open.png");
  background-size: 7px;
  background-repeat: no-repeat;
  background-position: center;
}

.qa dt.active::after,
.elastic dt.active::after {
  background-image: url("../img/mrk_close.png");
}

.qa dd,
.elastic dd {
  margin-top: 1px;
  display: none;
}

.qa dd+dt,
.elastic dd+dt {
  margin-top: 20px;
}

@media screen and (max-width: 560px) {

  .qa dt,
  .qa dd,
  .elastic dt,
  .elastic dd {
    padding: 13px;
    padding-left: 22px;
  }

  .qa dt::before,
  .qa dd::before,
  .elastic dt::before,
  .elastic dd::before {
    width: 7px;
  }
}

.qa dt,
.qa dd {
  padding-left: 55px;
}

.qa dt::before,
.qa dd::before {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  color: #fff;
}

.qa dt::before {
  content: "Q";
}

.qa dd::before {
  content: "A";
}

@media screen and (max-width: 560px) {

  .qa dt,
  .qa dd {
    padding-left: 43px;
  }

  .qa dt::before,
  .qa dd::before {
    width: 30px;
  }
}

/* ローカルナビ
-------------------------------------------------- */
.lnav ul {
  display: flex;
  flex-wrap: wrap;
  margin: -20px -10px 0;
}

.lnav ul li {
  width: 33.333%;
  margin-top: 20px;
  padding: 0 10px;
  text-indent: 0;
}

.lnav ul li::before {
  display: none;
}

.lnav ul li a {
  display: flex;
  align-items: center;
  border-radius: 5px;
  height: 70px;
  padding: 0 10px;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
  color: inherit;
}

.lnav ul li a:hover {
  opacity: 0.8;
}

.lnav ul li a::before {
  content: "";
  width: 15px;
  min-width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 0 8px 0 5px;
  background-image: url("../img/mrk_btn_light.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 5px;
  border-radius: 50%;
}

.lnav ul li a::after {
  display: none;
}

@media screen and (max-width: 960px) {
  .lnav ul li {
    width: 50%;
  }

  .lnav ul li a {
    height: 60px;
  }

  .lnav ul li a::before {
    width: 12px;
    min-width: 12px;
    height: 12px;
    min-height: 12px;
    margin: 0 6px 0 3px;
    background-size: 4px;
  }
}

@media screen and (max-width: 560px) {
  .lnav ul {
    margin: -10px -5px 0;
  }

  .lnav ul li {
    width: 100%;
    margin-top: 10px;
    padding: 0 5px;
  }

  .lnav ul li a {
    height: 50px;
  }
}

/* ローカルナビ（画像あり）
-------------------------------------------------- */
.lnav01 ul,
.lnav02 ul {
  display: flex;
  flex-wrap: wrap;
  margin: -20px -10px 0;
}

.lnav01 ul li,
.lnav02 ul li {
  width: calc(33.333% - 20px);
  margin: 20px 10px 0;
  padding: 20px;
  text-indent: 0;
}

.lnav01 ul li::before,
.lnav02 ul li::before {
  display: none;
}

.lnav01 ul li img,
.lnav02 ul li img {
  width: 100%;
}

.lnav01 ul li h1,
.lnav01 ul li h2,
.lnav01 ul li h3,
.lnav01 ul li h4,
.lnav01 ul li h5,
.lnav01 ul li h6,
.lnav02 ul li h1,
.lnav02 ul li h2,
.lnav02 ul li h3,
.lnav02 ul li h4,
.lnav02 ul li h5,
.lnav02 ul li h6 {
  display: flex;
  align-items: center;
  background-image: none;
  border: none;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.2;
}

.lnav01 ul li a,
.lnav02 ul li a {
  display: flex;
  align-items: center;
  height: 40px;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
}

.lnav01 ul li a::before,
.lnav02 ul li a::before {
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: 5px;
  border-radius: 50%;
}

.lnav01 ul li a:hover,
.lnav02 ul li a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 960px) {

  .lnav01 ul,
  .lnav02 ul {
    margin: -20px -5px 0;
  }

  .lnav01 ul li,
  .lnav02 ul li {
    width: calc(33.333% - 10px);
    margin: 20px 5px 0;
    padding: 15px;
  }
}

@media screen and (max-width: 560px) {

  .lnav01 ul,
  .lnav02 ul {
    flex-direction: column;
  }

  .lnav01 ul li,
  .lnav02 ul li {
    width: calc(100% - 10px);
  }

  .lnav01 ul li a::before,
  .lnav02 ul li a::before {
    background-size: 4px;
  }
}

.lnav01 h1,
.lnav01 h2,
.lnav01 h3,
.lnav01 h4,
.lnav01 h5,
.lnav01 h6 {
  height: 45px;
  margin: 5px 0 0;
  padding: 0;
}

.lnav01 p {
  margin: 0;
  font-size: 0.875em;
}

.lnav01 a {
  justify-content: center;
  margin: 0.9em 0 0;
  border-radius: 5px;
  color: inherit;
}

.lnav01 a::before {
  width: 15px;
  min-width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 0 8px 0 -10px;
  background-image: url("../img/mrk_btn_dark.png");
}

@media screen and (max-width: 560px) {

  .lnav01 h1,
  .lnav01 h2,
  .lnav01 h3,
  .lnav01 h4,
  .lnav01 h5,
  .lnav01 h6 {
    justify-content: center;
    height: 40px;
  }

  .lnav01 a::before {
    width: 12px;
    min-width: 12px;
    height: 12px;
    min-height: 12px;
  }
}

.lnav02 h1,
.lnav02 h2,
.lnav02 h3,
.lnav02 h4,
.lnav02 h5,
.lnav02 h6 {
  justify-content: center;
  height: 50px;
  margin: -20px -20px 20px;
  padding: 0 10px;
}

.lnav02 a {
  position: relative;
  padding: 0 15px;
  padding-right: 30px;
  margin: 2px 0 0;
  border-radius: 3px;
  font-size: 0.875em;
}

.lnav02 a:first-of-type {
  margin-top: 10px;
}

.lnav02 a::before {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background-image: url("../img/mrk_btn_light.png");
}

@media screen and (max-width: 960px) {

  .lnav02 h1,
  .lnav02 h2,
  .lnav02 h3,
  .lnav02 h4,
  .lnav02 h5,
  .lnav02 h6 {
    margin: -15px -15px 15px;
  }

  .lnav02 a::before {
    width: 12px;
    height: 12px;
  }
}

/* ボタン
-------------------------------------------------- */
.btn_small {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 160px;
  height: 40px;
  padding: 0 20px;
  border-radius: 5px;
  color: inherit;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
}

.btn_small::after {
  display: none !important;
}

.btn_small:hover {
  text-decoration: none;
}

@media screen and (max-width: 560px) {
  .btn_small {
    min-width: 140px;
    height: 30px;
  }
}

.link {
  position: relative;
  font-size: 0.875em;
}

.submit_button {
  margin: -20px -30px 0;
}

.submit_button .btn_send,
.submit_button .btn_back {
  margin: 20px 30px 0;
  display: inline-block;
  width: 300px;
  max-width: 100%;
  padding: 15px 5px;
  border-radius: 5px;
  color: #fff;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
  text-align: center;
}

.submit_button .btn_send:hover,
.submit_button .btn_back:hover {
  opacity: 0.8;
}

.submit_button .btn_send::after,
.submit_button .btn_back::after {
  display: none;
}

@media screen and (max-width: 960px) {
  .submit_button {
    margin: -15px -15px 0;
  }

  .submit_button .btn_send,
  .submit_button .btn_back {
    margin: 15px 15px 0;
    width: 250px;
  }
}

@media screen and (max-width: 560px) {
  .submit_button {
    text-align: center;
  }

  .submit_button .btn_send,
  .submit_button .btn_back {
    padding: 10px 5px;
  }
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="num"],
.form input[type="number"],
.form textarea,
.form select {
  padding: 12px 10px 10px;
  border-width: 1px;
  border-style: solid;
  border-color: rgb(204, 204, 204);
  /*width: 100%;*/
}

.form input[type="email"],
#address1 {
  width: 100%;
}

.form td label {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* ラベル
-------------------------------------------------- */
.label {
  display: inline-block;
  padding: 7px 10px;
  margin-bottom: 2px;
  background-color: #666;
  border-radius: 4px;
  font-size: 0.75em;
  color: #fff;
  line-height: 1.2;
}

section h2:first-child {
  margin-top: 0;
}

.wp_entry .section-news-important {
  padding: 0;
  background-color: #ffdfdf;
}

.wp_entry .section-news-important .flex>div {
  margin-bottom: 0;
  padding: 20px;
}

.wp_entry .section-news-important h2 {
  width: 100%;
  border: none;
  background-image: none;
  margin: 0;
  padding: 0;
  flex: 0 1 auto;
  text-align: center;
}

.section-news-important .title {
  background-color: #f00;
  color: #fff;
  display: flex;
  align-items: center;
}

.section-news-important .content,
.section-news-important .content a {
  color: #000;
  text-decoration: underline;
}

.section-news-important .content li:before {
  color: #000;
}

@media screen and (max-width: 560px) {
  .section-news-important .flex>div {
    padding: 5px;
  }
}

.section-01 {
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px;
}

.section-02 {
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px;
  border-top-width: 3px;
  border-top-style: solid;
  border-bottom-width: 3px;
  border-bottom-style: solid;
}

.section-03 {
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px;
  border-top-width: 3px;
  border-top-style: solid;
  border-bottom-width: 3px;
  border-bottom-style: solid;
}

.section-04,
.section-step,
.section-timeline {
  margin-top: 40px;
  margin-bottom: 40px;
  padding: 40px;
  border: 3px solid transparent;
}

@media screen and (max-width: 560px) {

  .section-04,
  .section-step,
  .section-timeline {
    margin-top: 20px 10px;
    padding: 20px;
  }
}

/* タイムライン
-------------------------------------------------- */
.timeline {
  display: table;
}

.timeline li {
  display: table-row;
  padding-left: 0 !important;
  text-indent: 0 !important;
}

.timeline li::before {
  display: none;
}

.timeline time,
.timeline span {
  display: table-cell;
}

.timeline time {
  padding: 0 25px 20px 0;
  color: #666;
}

.timeline span {
  position: relative;
  border-left: 3px #dad8d8 solid;
  padding: 0 0 30px 30px;
  color: #333;
}

.timeline span::before {
  position: absolute;
  left: -6px;
  top: 8px;
  width: 9px;
  height: 9px;
  content: "";
  background: #555;
  border-radius: 50%;
}

.timeline li:last-child span {
  padding-bottom: 0;
}

/* 2020/04 追加 */
/* 見出し
-------------------------------------------------- */
.hx-richB>figure img {
  width: 100%;
  max-width: inherit;
}

.hx-richB>div {
  position: relative;
  z-index: 1;
  background: #aaa;
  margin: -170px -50px 0 auto;
  width: 660px;
  max-width: 100%;
  padding: 40px 50px;
  color: #fff;
}

.hx-richB h1,
.hx-richB h2,
.hx-richB h3,
.hx-richB h4,
.hx-richB h5,
.hx-richB h6 {
  margin: 0;
  padding: 0;
  background: none !important;
  font-size: 22px;
  font-weight: bold;
}

.hx-richB p {
  line-height: 2;
  font-size: 12px;
}

.hx-richB b {
  color: inherit !important;
}

.hx-richB .en {
  position: absolute;
  top: 0;
  right: 50px;
  margin: 0;
  padding: 5px 15px;
  background: #fff;
  color: #333;
  font-size: 8px;
}

.hx-richB .bar {
  position: relative;
  margin-bottom: 20px;
  padding-left: 30px;
}

.hx-richB .bar::before {
  position: absolute;
  top: 11px;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 2px;
  content: "";
  background: #fff;
}

@media screen and (max-width: 560px) {
  .hx-richB {
    margin: 0 -10px;
  }

  .hx-richB>div {
    margin: -50px 0 0 50px;
    padding: 15px 25px;
    padding-top: 35px;
    width: auto;
  }

  .hx-richB h1,
  .hx-richB h2,
  .hx-richB h3,
  .hx-richB h4,
  .hx-richB h5,
  .hx-richB h6 {
    font-size: 17px;
  }

  .hx-richB p {
    font-size: 10px;
  }

  .hx-richB .en {
    right: 0px;
    padding: 3px 10px;
    font-size: 7px;
  }

  .hx-richB .bar {
    margin-bottom: 15px;
    padding-left: 20px;
  }

  .hx-richB .bar::before {
    top: 10px;
    width: 10px;
    height: 1px;
  }
}

.hx-richA {
  display: flex;
  flex-direction: row-reverse;
}

.hx-richA>figure {
  width: 60%;
}

.hx-richA>figure img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.hx-richA>div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 40%;
  padding: 40px 50px;
  background: #aaa;
  color: #fff;
}

.hx-richA .en {
  font-size: 10px;
}

.hx-richA h1,
.hx-richA h2,
.hx-richA h3,
.hx-richA h4,
.hx-richA h5,
.hx-richA h6 {
  margin: 0;
  padding: 0;
  background: none !important;
  font-size: 22px;
  font-weight: bold;
  margin-right: -50px;
  margin-bottom: 35px;
  padding-right: 50px;
  padding-bottom: 20px;
  border-bottom: 1px solid transparent;
}

.hx-richA p:not(.large) {
  font-size: 12px;
  line-height: 2;
}

@media screen and (max-width: 960px) {
  .hx-richA>div {
    padding: 30px 40px;
  }

  .hx-richA h1,
  .hx-richA h2,
  .hx-richA h3,
  .hx-richA h4,
  .hx-richA h5,
  .hx-richA h6 {
    margin-right: -40px;
    padding-right: 40px;
  }
}

@media screen and (max-width: 560px) {
  .hx-richA {
    display: block;
  }

  .hx-richA>figure {
    width: 100%;
  }

  .hx-richA>figure img {
    object-fit: none;
    height: auto;
  }

  .hx-richA>div {
    width: 100%;
    padding: 15px 20px;
  }

  .hx-richA .en {
    font-size: 9px;
  }

  .hx-richA h1,
  .hx-richA h2,
  .hx-richA h3,
  .hx-richA h4,
  .hx-richA h5,
  .hx-richA h6 {
    font-size: 17px;
    margin-right: 0px;
    margin-bottom: 15px;
    padding-right: 0px;
    padding-bottom: 10px;
  }

  .hx-richA p:not(.large) {
    font-size: 10px;
  }
}

.wp_entry h2[class|="num"],
.wp_entry h3[class|="num"],
.wp_entry h4[class|="num"] {
  position: relative;
}

.wp_entry h2[class|="num"] i,
.wp_entry h3[class|="num"] i,
.wp_entry h4[class|="num"] i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 2px solid transparent;
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  position: absolute;
}

@media screen and (max-width: 560px) {

  .wp_entry h2[class|="num"] i,
  .wp_entry h3[class|="num"] i,
  .wp_entry h4[class|="num"] i {
    width: 17px;
    height: 17px;
    font-size: 10px;
  }
}

.wp_entry .num-h2 {
  padding-left: 45px;
}

.wp_entry .num-h2 i {
  top: calc(5px + 0.3em);
  left: 15px;
}

.wp_entry .num-h3 {
  padding-left: 50px;
}

.wp_entry .num-h3 i {
  top: calc(15px + 0.2em);
  left: 15px;
}

.wp_entry .num-h4 {
  padding-left: 50px;
}

.wp_entry .num-h4 i {
  top: calc(5px + 0.2em);
  left: 20px;
}

@media screen and (max-width: 560px) {
  .wp_entry .num-h2 {
    padding-left: 40px;
  }

  .wp_entry .num-h3 {
    padding-left: 40px;
  }

  .wp_entry .num-h3 i {
    left: 10px;
  }

  .wp_entry .num-h4 {
    padding-left: 45px;
  }
}

/* ステップ
-------------------------------------------------- */
.wp_entry .step-simple {
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
  padding-left: 90px;
}

.wp_entry .step-simple dt,
.wp_entry .step-simple dd {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #d9d9d9;
  margin-bottom: -1px;
  min-height: 90px;
  padding: 20px;
  line-height: 1.75;
}

.wp_entry .step-simple dt {
  position: relative;
  color: #000;
}

.wp_entry .step-simple dt i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 2px solid transparent;
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  position: absolute;
  left: -60px;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 560px) {
  .wp_entry .step-simple dt i {
    width: 17px;
    height: 17px;
    font-size: 10px;
  }
}

.wp_entry .step-simple dt::before,
.wp_entry .step-simple dt::after {
  position: absolute;
  content: "";
}

.wp_entry .step-simple dt::before {
  top: 50%;
  left: -50px;
  bottom: 10px;
  width: 1px;
  background: #aaa;
}

.wp_entry .step-simple dt::after {
  bottom: 3px;
  left: -52px;
  width: 6px;
  height: 9px;
  background: url("../img/mrk_arrow.png") no-repeat center top;
  background-size: 6px;
}

.wp_entry .step-simple dt:last-of-type::before,
.wp_entry .step-simple dt:last-of-type::after {
  display: none;
}

.wp_entry .step-simple dd+dt {
  margin-top: 0;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-simple {
    padding-left: 50px;
  }

  .wp_entry .step-simple dt,
  .wp_entry .step-simple dd {
    min-height: inherit;
    padding: 0px;
    line-height: 1.75;
  }

  .wp_entry .step-simple dt {
    padding: 20px 0;
    border-bottom: none;
  }

  .wp_entry .step-simple dt i {
    left: -35px;
  }

  .wp_entry .step-simple dt::before {
    left: -27px;
    bottom: 0px;
  }

  .wp_entry .step-simple dt::after {
    bottom: -8px;
    left: -29px;
  }

  .wp_entry .step-simple dd {
    margin-top: -5px;
    padding-bottom: 20px;
  }
}

.wp_entry .step-smart {
  background: #f9f9fa;
  padding: 50px 60px;
  padding-left: 110px;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-smart {
    padding: 20px 20px;
  }
}

.wp_entry .step-smart dt {
  position: relative;
  border-top: 1px solid #7ca8db;
  padding-top: 40px;
  color: #000;
  font-size: 1.25em;
  line-height: 1.4;
}

.wp_entry .step-smart dt i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 2px solid transparent;
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
  position: absolute;
  top: -10px;
  left: -70px;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-smart dt i {
    width: 17px;
    height: 17px;
    font-size: 10px;
  }
}

.wp_entry .step-smart dt::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -60px;
  width: 1px;
  content: "";
  background: #aaa;
}

.wp_entry .step-smart dt:first-of-type {
  margin-top: 20px;
}

.wp_entry .step-smart dt:last-of-type::before {
  display: none;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-smart dt {
    padding-top: 20px;
  }

  .wp_entry .step-smart dt i {
    top: -9px;
    left: 0px;
  }

  .wp_entry .step-smart dt i::after {
    position: absolute;
    left: calc(100% + 2px);
    height: 100%;
    width: 10px;
    content: "";
    background: #f9f9fa;
  }

  .wp_entry .step-smart dt::before {
    display: none;
  }
}

.wp_entry .step-smart dd {
  position: relative;
  padding-top: 25px;
  font-size: 0.857em;
  line-height: 2;
}

.wp_entry .step-smart dd+dt {
  margin-top: 50px;
}

.wp_entry .step-smart dd::before {
  position: absolute;
  top: 0;
  bottom: -10px;
  left: -60px;
  width: 1px;
  content: "";
  background: #aaa;
}

.wp_entry .step-smart dd::after {
  position: absolute;
  bottom: -19px;
  left: -62px;
  width: 6px;
  height: 9px;
  content: "";
  background: url("../img/mrk_arrow.png") no-repeat center top;
  background-size: 6px;
}

.wp_entry .step-smart dd:last-of-type::before,
.wp_entry .step-smart dd:last-of-type::after {
  display: none;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-smart dd {
    padding-top: 10px;
  }

  .wp_entry .step-smart dd+dt {
    margin-top: 60px;
  }

  .wp_entry .step-smart dd::before {
    top: inherit;
    bottom: -30px;
    left: 50%;
    height: 15px;
    transform: translateX(-50%);
  }

  .wp_entry .step-smart dd::after {
    bottom: -35px;
    left: 50%;
    transform: translateX(-50%);
  }
}

.wp_entry .step-smart div.contact {
  display: inline-flex;
  flex-direction: column;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  background: #fff;
  margin-top: 25px;
  padding: 15px 40px;
  width: 410px;
  max-width: 100%;
  line-height: 1.4;
}

.wp_entry .step-smart div.contact strong {
  margin-top: 5px;
}

.wp_entry .step-smart div.contact p {
  position: relative;
  padding-left: 65px;
  line-height: 1.55;
}

.wp_entry .step-smart div.contact p::before,
.wp_entry .step-smart div.contact p::before {
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 45px;
  height: 25px;
  border-right: 1px solid transparent;
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
}

.wp_entry .step-smart div.contact p.tel::before {
  background-image: url("../img/ico_tel_blue.png");
}

.wp_entry .step-smart div.contact p.fax::before {
  background-image: url("../img/ico_fax_blue.png");
}

.wp_entry .step-smart div.contact p .tel,
.wp_entry .step-smart div.contact p .fax {
  font-size: 1.7em;
  font-weight: bold;
  color: inherit;
  text-decoration: none;
}

.wp_entry .step-smart div.contact p .tel::after {
  display: none;
}

.wp_entry .step-smart div.contact small {
  color: #2f2f2f;
}

@media screen and (max-width: 560px) {
  .wp_entry .step-smart div.contact {
    margin-top: 15px;
    padding: 10px 15px;
    width: 100%;
  }

  .wp_entry .step-smart div.contact p {
    padding-left: 40px;
  }

  .wp_entry .step-smart div.contact p.tel::before,
  .wp_entry .step-smart div.contact p.fax::before {
    width: 27px;
    height: 17px;
  }

  .wp_entry .step-smart div.contact p .tel {
    text-decoration: underline;
  }
}

/* ローカルナビ
-------------------------------------------------- */
.lnav-rich {
  background: #eee;
  padding: 40px;
}

.lnav-rich ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -5px;
}

.lnav-rich ul li {
  text-indent: 0;
  padding: 5px;
}

.lnav-rich ul li::before {
  display: none;
}

.lnav-rich ul li a {
  display: flex;
  flex-direction: column;
  border: 1px solid #d7d7d7;
  border-radius: 5px;
  height: 100%;
  padding: 25px 30px;
  padding-right: 40px;
  background: #fff;
  text-decoration: none;
  color: #2f2f2f;
  font-size: 0.857em;
  line-height: 1.86;
  transition: all 0.1s;
}

.lnav-rich ul li a::after {
  top: calc(100% - 36px);
  right: 15px;
  width: 20px;
  height: 20px;
  background-image: url("../img/mrk_right.png");
  background-size: 6px;
}

.lnav-rich ul li a:hover::after {
  background-image: url("../img/mrk_right_on.png");
  background-color: #fff;
}

.lnav-rich ul li a strong {
  margin-bottom: 0.8em;
  font-size: 1.143em;
  line-height: 1.7;
}

.lnav-rich ul.btn_sitemap {
  justify-content: center;
}

.lnav-rich ul.btn_sitemap li a {
  width: 220px;
  text-align: center;
}

@media screen and (max-width: 560px) {
  .lnav-rich {
    padding: 15px;
  }

  .lnav-rich ul {
    margin: -8px;
  }

  .lnav-rich ul li {
    padding: 8px;
  }

  .lnav-rich ul li a {
    padding: 15px 20px;
    padding-bottom: 30px;
  }

  .lnav-rich ul li a::after {
    top: calc(100% - 25px);
    width: 15px;
    height: 15px;
    background-size: 4px;
  }

  .lnav-rich ul li a strong {
    margin-bottom: 0.5em;
  }
}

/* その他のナビ
-------------------------------------------------- */
.rel-nav ul li {
  text-indent: 0;
  padding: 0;
}

.rel-nav ul li+li {
  margin-top: 30px;
}

.rel-nav ul li::before {
  display: none;
}

.rel-nav ul li a {
  position: relative;
  display: block;
  border: 1px solid #d0d0d0;
  border-radius: 6px;
  padding: 40px;
  color: inherit;
  text-decoration: none;
  transition: all 0.1s;
  overflow: hidden;
}

.rel-nav ul li a::after {
  display: none;
}

.rel-nav ul li a>figure {
  float: left;
  margin-right: 40px;
}

.rel-nav ul li a>figure img {
  border-radius: 6px;
}

.rel-nav ul li a h2,
.rel-nav ul li a h3,
.rel-nav ul li a h4,
.rel-nav ul li a h5,
.rel-nav ul li a h6 {
  margin: 0 0 0.3em;
  padding: 0;
  border: none;
  background: none;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
}

.rel-nav ul li a>p {
  margin-right: 90px;
  margin-bottom: 30px;
  font-size: 0.857em;
}

.rel-nav ul li a>span {
  position: absolute;
  bottom: 35px;
  right: 40px;
  display: inline-flex;
  align-items: center;
  font-size: 0.857em;
}

.rel-nav ul li a>span::after {
  display: inline-block;
  margin-left: 10px;
  width: 20px;
  height: 20px;
  background: no-repeat center;
  background-image: url("../img/mrk_right.png");
  background-size: 6px;
  background-color: #aaa;
  border-radius: 50%;
  content: "";
}

.rel-nav ul li a:hover img {
  opacity: 1;
}

.rel-nav ul li a:hover>span::after {
  background-color: #fff;
  background-image: url("../img/mrk_right_on.png");
}

@media screen and (max-width: 560px) {
  .rel-nav ul li+li {
    margin-top: 15px;
  }

  .rel-nav ul li a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 20px;
    padding-bottom: 45px;
  }

  .rel-nav ul li a>figure {
    float: none;
    width: calc(50% - 20px);
    margin-right: 20px;
  }

  .rel-nav ul li a h2,
  .rel-nav ul li a h3,
  .rel-nav ul li a h4,
  .rel-nav ul li a h5,
  .rel-nav ul li a h6 {
    margin: 0;
    font-size: 14px;
  }

  .rel-nav ul li a>p {
    width: 100%;
    margin: 15px 0 0;
  }

  .rel-nav ul li a>span {
    bottom: 18px;
    right: 20px;
  }

  .rel-nav ul li a>span::after {
    margin-left: 8px;
    width: 15px;
    height: 15px;
    background-size: 4px;
  }
}

/* NEXT
-------------------------------------------------- */
.wp_entry .next-nav {
  display: flex;
  align-items: center;
  border: 1px solid #aaa;
  padding: 25px 30px;
  color: inherit;
  text-decoration: none;
}

.wp_entry .next-nav h2,
.wp_entry .next-nav h3,
.wp_entry .next-nav h4,
.wp_entry .next-nav h5,
.wp_entry .next-nav h6 {
  margin: 0;
  padding: 0 85px 0 0;
  background: none;
  border: none;
  font-size: 18px;
  line-height: 1.55;
}

.wp_entry .next-nav>span {
  display: flex;
  align-items: center;
  margin-right: 50px;
  font-size: 0.857em;
  font-weight: bold;
}

.wp_entry .next-nav>span::before {
  display: inline-block;
  margin-right: 15px;
  width: 8px;
  height: 8px;
  content: "";
  background: #ccc;
  border-radius: 50%;
}

.wp_entry .next-nav::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 80px;
  content: "";
  background: #aaa;
}

.wp_entry .next-nav::after {
  right: 30px;
  background-color: #fff;
  background-image: url("../img/mrk_right_on.png");
  background-size: 6px;
}

.wp_entry .next-nav:hover::after {
  background-color: #aaa;
  background-image: url("../img/mrk_right.png");
}

@media screen and (max-width: 560px) {
  .wp_entry .next-nav {
    padding: 10px 15px;
  }

  .wp_entry .next-nav h2,
  .wp_entry .next-nav h3,
  .wp_entry .next-nav h4,
  .wp_entry .next-nav h5,
  .wp_entry .next-nav h6 {
    padding-right: 40px;
    font-size: 14px;
  }

  .wp_entry .next-nav>span {
    margin-right: 20px;
  }

  .wp_entry .next-nav>span::before {
    margin-right: 10px;
  }

  .wp_entry .next-nav::before {
    width: 35px;
  }

  .wp_entry .next-nav::after {
    right: 11px;
    background-size: 4px;
  }
}

/* 学校長挨拶
-------------------------------------------------- */
.greeting_bx {
  position: relative;
  min-height: 1475px;
}

/*.greeting_bx:before { position: absolute; top: 503px; right: 87px; content: ""; width: 272px; height: 970px; background: url(../../outline/img/greeting_img02.png) no-repeat; }
*/
.greeting_bx .inner {
  width: 100%;
  margin: 30px 0 0 70px;
  display: flex;
  flex-wrap: wrap;
}

.greeting_bx .inner p {
  width: calc(100% - 400px);
}

.greeting_bx .inner p span.greeting_name {
  display: block;
}

.greeting_bx .inner p.greeting_cap {
  width: calc(100% - 400px);
  font-weight: bold;
  font-size: 5vw;
  line-height: 1.5;
}

.greeting_bx .inner picture img {
  margin-top: -300px;
  width: 300px;
}

@media screen and (max-width: 960px) {
  .greeting_bx {
    min-height: inherit;
  }

  .greeting_bx:before {
    display: none;
  }

  .greeting_bx .inner {
    width: auto;
    margin: 10px;
  }

  .greeting_bx .inner p {
    width: calc(100% - 150px);
  }

  .greeting_bx .inner p span.greeting_name {
    display: block;
  }

  .greeting_bx .inner p.greeting_cap {
    width: 100%;
    font-size: 8vw;
    line-height: 1.5;
  }

  .greeting_bx .inner picture img {
    margin-top: 0px;
    width: 150px;
  }
}

/* 教育理念・目的・目標
-------------------------------------------------- */
.philosophy .fs26 {
  font-size: 26px;
  font-weight: bold;
}

.philosophy_list li::before {
  display: none;
}

@media screen and (max-width: 960px) {
  .philosophy .fs26 {
    font-size: 22px;
  }
}

.philosophy_tx {
  /*text-align: center;*/
  font-size: 30px;
  color: #00aeef;
  font-weight: bold;
}

.philosophy_tx02 {
  text-align: right;
  font-size: 22px;
  color: #5d8e60;
  font-weight: bold;
}

.philosophy_tx03 {
  margin-bottom: 20px;
  font-size: 26px;
  font-weight: bold;
}

@media screen and (max-width: 960px) {
  .philosophy_tx {
    font-size: 20px;
  }

  .philosophy_tx02 {
    font-size: 18px;
  }

  .philosophy_tx03 {
    margin-bottom: 10px;
    font-size: 22px;
  }
}

.philosophy_bx01 {
  padding: 30px 60px;
  background: #fff6f9;
  border: 5px solid #f6a9c6;
  border-radius: 6px;
}

.philosophy_bx02 {
  margin-top: 20px;
  padding: 40px;
  background: #f6fcff;
  border: 5px solid #87ceec;
  border-radius: 6px;
}

.philosophy_bx03 {
  padding: 30px 60px;
  background: #f4fff5;
  border: 5px solid #acdaaf;
  border-radius: 6px;
}

@media screen and (max-width: 960px) {
  .philosophy_bx01 {
    margin: 0 10px;
    padding: 30px 15px;
    border: 3px solid #f6a9c6;
    border-radius: 5px;
  }

  .philosophy_bx02 {
    margin: 0 10px;
    padding: 30px 15px;
    border: 3px solid #87ceec;
    border-radius: 5px;
  }

  .philosophy_bx03 {
    margin: 0 10px;
    padding: 30px 15px;
    border: 3px solid #acdaaf;
    border-radius: 5px;
  }
}

.philosophy_main {
  position: relative;
}

.philosophy_main ul {
  position: absolute;
  bottom: 35px;
  left: 35px;
  min-width: 960px;
  padding: 30px;
  background: #fff;
}

.philosophy_main li {
  padding-bottom: 5px;
  border-bottom: 1px dashed #777;
}

.philosophy_main li:before {
  display: none;
}

@media screen and (max-width: 960px) {
  .philosophy_main .ico {
    width: 30px;
  }

  .philosophy_main ul {
    position: inherit;
    bottom: auto;
    left: auto;
    min-width: inherit;
    padding: 10px;
  }

  .philosophy_main li {
    padding-bottom: 5px;
    border-bottom: 1px dashed #777;
  }

  .philosophy_main li:before {
    display: none;
  }
}

/* 学校の特長
-------------------------------------------------- */
.features_main {
  position: relative;
  height: 1750px;
  background: url(../../admission/img/features_main.jpg) no-repeat;
}

.features_main .ttl {
  margin: 0;
  padding: 0;
  background: none;
  font-size: 28px;
  font-weight: bold;
  color: #e85288;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  text-align: center;
  line-height: 1.4;
}

.features_main .ttl span {
  font-size: 20px;
}

.features_01 {
  position: absolute;
  top: 380px;
  left: 60px;
  width: 640px;
}

.features_02 {
  position: absolute;
  top: 640px;
  left: 100px;
  width: 290px;
}

.features_03 {
  position: absolute;
  top: 640px;
  left: 630px;
  width: 320px;
}

.features_04 {
  position: absolute;
  top: 980px;
  left: 375px;
  width: 280px;
}

.features_05 {
  position: absolute;
  top: 1375px;
  left: 100px;
  width: 320px;
}

.features_06 {
  position: absolute;
  top: 1375px;
  left: 660px;
  width: 350px;
}

.features_sp {
  display: none;
}

@media screen and (max-width: 960px) {
  .features_main {
    position: relative;
    height: auto;
    background: none;
  }

  .features_sp {
    display: block;
  }

  .features_01,
  .features_02,
  .features_03,
  .features_04,
  .features_05,
  .features_06 {
    display: none;
  }
}

/* 先輩からのメッセージ
-------------------------------------------------- */

.messages_main {}

.messages_bx>div {
  position: relative;
  min-height: 640px;
  padding: 320px 0 0;
}

@media screen and (max-width: 960px) {
  .messages_bx>div {
    min-height: inherit;
    padding: 50% 0 0;
  }

  .messages_bx.flex {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    margin: 0 10px;
  }
}

.messages_01 {
  background: url(../../school-life/img/messages_m01.jpg) no-repeat top center;
}

.messages_02 {
  background: url(../../school-life/img/messages_m02.jpg) no-repeat top center;
}

.messages_03 {
  background: url(../../school-life/img/messages_m03.jpg) no-repeat top center;
}

.messages_04 {
  background: url(../../school-life/img/messages_m04.jpg) no-repeat top center;
}

.messages_05 {
  background: url(../../school-life/img/messages_m05.jpg) no-repeat top center;
}

.messages_06 {
  background: url(../../school-life/img/messages_m06.jpg) no-repeat top center;
}

.messages_07 {
  background: url(../../school-life/img/messages_m07.jpg) no-repeat top center;
}

.messages_08 {
  background: url(../../school-life/img/messages_m08.jpg) no-repeat top center;
}

.messages_09 {
  background: url(../../school-life/img/messages_m09.jpg) no-repeat top center;
}

.messages_10 {
  background: url(../../school-life/img/messages_m10.jpg) no-repeat top center;
}

@media screen and (max-width: 960px) {

  .messages_01,
  .messages_02,
  .messages_03,
  .messages_04,
  .messages_05,
  .messages_06,
  .messages_07,
  .messages_08,
  .messages_09,
  .messages_10 {
    background-size: contain;
  }
}

.messages_bx .ttl {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}

.messages_bx .ttl a:after {
  display: none;
}

.messages_bx span:hover {
  text-decoration: underline;
  cursor: pointer;
}

@media screen and (max-width: 960px) {
  .messages_bx .ttl {
    font-size: 16px;
  }
}

.messages_bx .pink a,
.messages_bx .pink span {
  color: #ec6e84;
}

.messages_bx .purple a,
.messages_bx .purple span {
  color: #7181bf;
}

.messages_bx .blue a,
.messages_bx .blue span {
  color: #00aeef;
}

.messages_bx .green a,
.messages_bx .green span {
  color: #22b9ca;
}

.messages_bx .orange a,
.messages_bx .orange span {
  color: #f69a53;
}

.messages_btn {
  /* position: absolute; bottom: 0; left: 50%; margin-left: -85px;*/
  margin-top: 30px;
  text-align: center;
}

.messages_btn span {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 170px;
  height: 60px;
  margin: 0 auto;
  border-radius: 5px;
  background: #fff;
  font-weight: bold;
}

@media screen and (max-width: 960px) {
  .messages_btn {
    margin-top: 15px;
  }

  .messages_btn span {
    width: 130px;
    height: 50px;
    border-radius: 4px;
  }
}

.pink .messages_btn span {
  box-shadow: 0 0 20px 0 rgba(236, 110, 132, 0.3);
}

.purple .messages_btn span {
  box-shadow: 0 0 20px 0 rgba(113, 129, 191, 0.3);
}

.blue .messages_btn span {
  box-shadow: 0 0 20px 0 rgba(0, 174, 239, 0.3);
}

.green .messages_btn span {
  box-shadow: 0 0 20px 0 rgba(34, 185, 202, 0.3);
}

.orange .messages_btn span {
  box-shadow: 0 0 20px 0 rgba(246, 154, 83, 0.3);
}

.messages_btn span:after {
  position: absolute;
  top: 15px;
  right: 15px;
  content: "";
  width: 20px;
  height: 20px;
}

@media screen and (max-width: 960px) {
  .messages_btn span:after {
    display: none;
    top: 15px;
    right: 15px;
    content: "";
    width: 15px;
    height: 15px;
  }
}

.pink span:after {
  background: url(../../school-life/img/ico_arw_pink.png) no-repeat;
}

.purple span:after {
  background: url(../../school-life/img/ico_arw_purple.png) no-repeat;
}

.blue span:after {
  background: url(../../school-life/img/ico_arw_blue.png) no-repeat;
}

.green span:after {
  background: url(../../school-life/img/ico_arw_green.png) no-repeat;
}

.orange span:after {
  background: url(../../school-life/img/ico_arw_orange.png) no-repeat;
}

@media screen and (max-width: 960px) {

  .pink span:after,
  .purple span:after,
  .blue span:after,
  .green span:after,
  .orange span:after {
    background-size: contain;
  }
}

.msg {
  display: none;
}

.overlay {
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
  width: 100%;
  height: 100%;
  z-index: 10001;
  background: rgba(255, 255, 255, 0.6);
  text-align: center;
}

.msg_popup_bx {
  overflow: auto;
  position: relative;
  width: 800px;
  height: 90%;
  background: #fff;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}

.msg_popup_bx .profile {
  position: relative;
}

.msg_popup_bx .profile p {
  position: absolute;
  top: 330px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}

.msg_popup_bx .close_btn {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  background: #fff;
}

.msg_popup_bx .session {
  padding: 40px;
  text-align: left;
}

.msg_popup_bx .session dt {
  margin-bottom: 15px;
  position: relative;
  font-size: 20px;
  font-weight: bold;
}

.msg_popup_bx .session dt:before {
  content: "Q";
  display: inline-block;
  width: 38px;
  height: 38px;
  margin-right: 8px;
  padding-top: 5px;
  background: #ec6e84;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  border-radius: 50%;
  vertical-align: middle;
  text-align: center;
  box-sizing: border-box;
}

.msg_popup_bx .session dd {
  margin-bottom: 40px;
}

@media screen and (max-width: 960px) {
  .msg_popup_bx {
    width: 90%;
    height: 90%;
  }

  .msg_popup_bx .profile {
    overflow: hidden;
  }

  .msg_popup_bx .profile p {
    position: inherit;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
  }

  .msg_popup_bx .close_btn {
    width: 50px;
    height: 50px;
  }

  .msg_popup_bx .session {
    padding: 15px;
  }

  .msg_popup_bx .session dt {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 1.2;
  }

  .msg_popup_bx .session dt:before {
    width: 25px;
    height: 25px;
    margin-right: 5px;
    padding-top: 4px;
    font-size: 14px;
  }

  .msg_popup_bx .session dd {
    margin-bottom: 20px;
  }
}

.pink .session dt:before {
  background: #ec6e84;
}

.purple .session dt:before {
  background: #7181bf;
}

.blue .session dt:before {
  background: #00aeef;
}

.green .session dt:before {
  background: #22b9ca;
}

.orange .session dt:before {
  background: #f69a53;
}

.pink .profile p,
.pink .session dt {
  color: #ec6e84;
}

.purple .profile p,
.purple .session dt {
  color: #7181bf;
}

.blue .profile p,
.blue .session dt {
  color: #00aeef;
}

.green .profile p,
.green .session dt {
  color: #22b9ca;
}

.orange .profile p,
.orange .session dt {
  color: #f69a53;
}

/* 各学年の学び
-------------------------------------------------- */

h1.grades_ttl01 {
  margin: 0;
  padding: 0;
  background: none;
}

h2.grades_ttl02 {
  width: 950px;
  height: 70px;
  margin: 0;
  padding: 20px 0 0 20px;
  background: url(../../course/img/grades_ttl_blue.png) no-repeat;
  font-size: 26px;
  font-weight: bold;
  color: #fff;
  border-bottom: none;
  border-radius: 8px;
  box-sizing: border-box;
}

@media screen and (max-width: 960px) {
  h1.grades_ttl01 {
    margin: 0 10px;
  }

  h2.grades_ttl02 {
    width: 100%;
    height: inherit;
    padding: 10px 10px;
    font-size: 18px;
    border-radius: 6px;
  }
}

.blue h2.grades_ttl02 {
  background: url(../../course/img/grades_ttl_blue.png) no-repeat;
}

.pink h2.grades_ttl02 {
  background: url(../../course/img/grades_ttl_pink.png) no-repeat;
}

.yellow h2.grades_ttl02 {
  background: url(../../course/img/grades_ttl_yellow.png) no-repeat;
}

h3.grades_ttl03 {
  width: 204px;
  height: 48px;
  padding: 10px 0 0;
  text-align: center;
  background: url(../../course/img/grades_btn_blue.png) no-repeat;
  font-size: 20px;
  font-weight: bold;
}

.blue h3.grades_ttl03 {
  background: url(../../course/img/grades_btn_blue.png) no-repeat;
}

.pink h3.grades_ttl03 {
  background: url(../../course/img/grades_btn_pink.png) no-repeat;
}

.yellow h3.grades_ttl03 {
  background: url(../../course/img/grades_btn_yellow.png) no-repeat;
}

@media screen and (max-width: 960px) {}

.grades_wrap {
  margin: 40px 0;
  padding: 40px 40px 20px;
  background: #fef9f0;
  box-sizing: border-box;
}

.grades_bx {
  position: relative;
  margin-top: 20px;
  text-align: left;
}

.grades_bx h3 {
  margin-right: 10px;
  margin-left: auto;
}

.grades_bx .last {
  margin-top: 70px;
}

@media screen and (max-width: 960px) {
  .grades_wrap {
    margin: 20px 0;
    padding: 20px 10px;
    background: #fef9f0;
    box-sizing: border-box;
  }

  .grades_bx {
    position: relative;
    margin-top: 10px;
    text-align: left;
  }

  .grades_bx h3 {
    margin-right: 10px;
    margin-left: auto;
  }

  .grades_bx .last {
    margin-top: 0;
  }
}

.e01:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 67px;
  height: 65px;
  background: url(../../course/img/grades_ico_01.png) no-repeat;
  background-size: cover;
}

.e02:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 67px;
  height: 65px;
  background: url(../../course/img/grades_ico_02.png) no-repeat;
  background-size: cover;
}

.e03:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: inline-block;
  width: 67px;
  height: 65px;
  background: url(../../course/img/grades_ico_03.png) no-repeat;
  background-size: cover;
}

@media screen and (max-width: 960px) {
  .e01:before {
    width: 55px;
    height: 53px;
    background: url(../../course/img/grades_ico_01.png) no-repeat;
    background-size: cover;
  }

  .e02:before {
    width: 54px;
    height: 53px;
    background: url(../../course/img/grades_ico_02.png) no-repeat;
    background-size: cover;
  }

  .e03:before {
    width: 54px;
    height: 53px;
    background: url(../../course/img/grades_ico_03.png) no-repeat;
    background-size: cover;
  }
}

/* フロアマップ
-------------------------------------------------- */

.tab-group {
  position: relative;
}

.tab_item {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  cursor: pointer;
}

.tab_item:hover {
  opacity: 0.8;
}

.tab_item span {
  display: none;
}

@media screen and (max-width: 960px) {
  .tab_item {
    position: inherit;
    display: inline-block;
  }

  .tab_item img {
    display: none;
  }

  .tab_item span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 50px;
    color: #fff;
    font-weight: bold;
  }
}

.tab_04 {
  top: 60px;
}

.tab_03 {
  top: 120px;
}

.tab_02 {
  top: 180px;
}

.tab_01 {
  top: 240px;
}

@media screen and (max-width: 960px) {

  .tab_04,
  .tab_03,
  .tab_02,
  .tab_01 {
    top: 0;
  }
}

input[name="tab_item"] {
  display: none;
}

.tab_content {
  display: none;
}

#tab01:checked~#tab01_content,
#tab02:checked~#tab02_content,
#tab03:checked~#tab03_content,
#tab04:checked~#tab04_content,
#tab05:checked~#tab05_content {
  display: block;
}

.tab_01.tab_item {
  background: #43b6ec;
}

.tab_02.tab_item {
  background: #f599a9;
}

.tab_03.tab_item {
  background: #ffef7a;
}

.tab_03.tab_item span {
  color: #333;
}

.tab_04.tab_item {
  background: #22b9ca;
}

.tab_05.tab_item {
  background: #97a3d1;
}

.tab-group input:checked+.tab_01.tab_item {
  border-left: 5px solid #1588be;
}

.tab-group input:checked+.tab_02.tab_item {
  border-left: 5px solid #cc5a6e;
}

.tab-group input:checked+.tab_03.tab_item {
  border-left: 5px solid #b5aa57;
}

.tab-group input:checked+.tab_04.tab_item {
  border-left: 5px solid #1794a2;
}

.tab-group input:checked+.tab_05.tab_item {
  border-left: 5px solid #5b6899;
}

@media screen and (max-width: 960px) {
  .tab-group input:checked+.tab_01.tab_item {
    border-left: none;
    background: #1588be;
    border-top: 3px solid #1588be;
  }

  .tab-group input:checked+.tab_02.tab_item {
    border-left: none;
    background: #cc5a6e;
    border-top: 3px solid #cc5a6e;
  }

  .tab-group input:checked+.tab_03.tab_item {
    border-left: none;
    background: #b5aa57;
    border-top: 3px solid #b5aa57;
  }

  .tab-group input:checked+.tab_04.tab_item {
    border-left: none;
    background: #1794a2;
    border-top: 3px solid #1794a2;
  }

  .tab-group input:checked+.tab_05.tab_item {
    border-left: none;
    background: #5b6899;
    border-top: 3px solid #5b6899;
  }
}

.floor-map {
  padding: 55px;
  background: #f9f8f4;
}

.wp_entry .floor-map img {
  border-radius: 0;
}

@media screen and (max-width: 960px) {
  .floor-map {
    padding: 0;
  }
}

.slide {
  position: relative;
  background: #fff;
}

.slide .item {
  position: relative;
  box-shadow: none;
}

.slide .item figure {
  display: block;
  position: relative;
  overflow: hidden;
}

.slide .item p {
  min-height: 90px;
  padding: 15px 20px;
}

.slide .item img {
  width: 100%;
}

@media screen and (max-width: 960px) {
  .slide .item p {
    min-height: inherit;
    padding: 5px 10px;
  }
}

.slide-navi {
  position: relative;
  background: #000;
}

.slide-navi .item {
  position: relative;
  cursor: pointer;
  background: #fff;
}

.slide-navi .item figure {
  display: block;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .slide-navi {
    width: 100%;
  }

  .slide-navi .item .image::before {
    padding-top: 50%;
  }
}

.slick-arrow {
  z-index: 1000;
}

.slick-prev,
.slick-next {
  width: 33px;
  height: 33px;
  bottom: 0;
  background-size: contain;
  background-repeat: no-repeat;
}

.slick-prev {
  left: 20px;
  right: auto;
  background-image: url(../../outline/img/slide_left.png);
}

.slick-next {
  left: auto;
  right: 20px;
  background-image: url(../../outline/img/slide_right.png);
}

@media screen and (max-width: 767px) {

  .slick-prev,
  .slick-next {
    width: 25px;
    height: 25px;
  }

}

@media screen and (max-width: 960px) {
  .slick-prev {
    left: 10px;
  }

  .slick-next {
    left: auto;
  }
}

.slide .slick-slide:not(.slick-active),
.slide-navi .slick-slide:not(.slick-center) {
  -webkit-filter: opacity(50%);
  -moz-filter: opacity(50%);
  -o-filter: opacity(50%);
  -ms-filter: opacity(50%);
  filter: opacity(50%);
}

@media screen and (max-width: 960px) {

  .slide .slick-slide:not(.slick-active),
  .slide-navi .slick-slide:not(.slick-center) {
    -webkit-filter: opacity(100%);
    -moz-filter: opacity(100%);
    -o-filter: opacity(100%);
    -ms-filter: opacity(100%);
    filter: opacity(100%);
  }
}

.youtube {
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 56.25%;
  overflow: hidden;
}

.youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.suuran_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.suuran_list li {
  width: 25%;
  margin-bottom: 20px;
}

.note_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.note_box .__col6 {
  width: 30%;
  margin-bottom: 20px;
}

.note_box .__col6 a {
  display: block;
}

.note_box .__col6 img {
  width: 100%;
}

@media screen and (max-width: 960px) {
  .suuran_list li {
    width: 50%;
  }

  .note_box .__col6 {
    width: 48%;
  }
}

.btn_a {
  text-align: center;
}

.worklist li {
  list-style-type: none;
}

/*スタッフ紹介
-------------------------------------------------------------------------*/
.staff_wrapp {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.staff_box {
  width: 100%;
  margin: 0 auto 30px;
  box-shadow: 6px 8px 0px 0px rgb(67 182 236);
}

.staff_box dl {
  display: flex;
  justify-content: space-around;
  border: 2px solid #43b6ec;
}

.staff_box dl dt {
  width: 20%;
}

.staff_box dl dt img {
  width: 100%;
}

.staff_box dl dd {
  width: 80%;
  padding: 20px;
  border-left: 1px solid #ccc;
}

.staff_box dl dd h2 {
  margin: 0 auto 20px;
}

.staff_box dl dd h2 span {
  border-bottom: 2px double #43b6ec;
}

.staff_box dl dd h3 {
  margin: 0;
  background: none;
  padding: 0;
}

.staff_box dl dd h3 span {
  display: inline-block;
  background: #43b6ec;
  color: #fff;
  padding: 5px 20px;
  border-radius: 5px;
  font-size: 1.1rem;
}

.staff_box dl dd p {
  margin-bottom: 30px;
}

.staff_box dl dd p.shiyoku {
  font-weight: bold;
}

.staff_wrapp2 {
  display: flex;
  flex-wrap: wrap;
}

.staff_box2 {
  width: 48%;
  /*box-shadow: 6px 8px 0px 0px rgb(67 182 236);*/
  margin-right: 2%;
  margin-bottom: 20px;
  border: 2px solid #43b6ec;
}

.staff_box2:nth-of-type(2n) {
  margin-right: 0;
}

.staff_box2 dl {
  display: flex;
  flex-wrap: wrap;
}

.staff_box2 dl dt {
  width: 100%;
  text-align: center;
}

.staff_box2 dl dt img {
  width: 30%;
}

.staff_box2 dl dd {
  width: 100%;
  padding: 20px;
  border-left: 1px solid #ccc;
}

.staff_box2 dl dd h2 {
  margin: 0 auto 20px;
}

.staff_box2 dl dd h2 span {
  border-bottom: 2px double #43b6ec;
}

.staff_box2 dl dd .prof {
  display: flex;
  justify-content: space-between;
  margin: 20px auto;
}

.staff_box2 dl dd .prof h3 {
  margin: 0;
  background: none;
  padding: 0;
  width: 35%;
}

.staff_box2 dl dd .prof h3 span {
  display: block;
  background: #43b6ec;
  color: #fff;
  padding: 5px 20px;
  border-radius: 5px;
  font-size: 0.9rem;
  text-align: center;
}

.staff_box2 dl dd .prof p {
  width: 60%;
  margin: 0;
}

.staff_box2 dl dd p.shiyoku {
  font-weight: bold;
}

.staff_box2 dl dd .prof.wide {
  flex-wrap: wrap;
  justify-content: left;
}

.staff_box2 dl dd .prof.wide p {
  width: 100%;
}

@media screen and (max-width: 960px) {
  .staff_box dl {
    flex-wrap: wrap;
    border: 2px solid #43b6ec;
  }

  .staff_box dl dt img {
    width: 40%;
    display: block;
    margin: 0 auto;
  }

  .staff_box dl dt {
    width: 100%;
  }

  .staff_box dl dd {
    width: 100%;
    border-left: none;
  }

  .staff_box dl dd h2 {
    text-align: center;
  }

  .staff_box2 {
    width: 100%;
    margin-right: 0;
  }

  .staff_box2 dl dd .prof {
    flex-wrap: wrap;
  }

  .staff_box2 dl dd .prof h3 {
    width: calc(100%);
  }

  .staff_box2 dl dd .prof p {
    width: calc(100%);
  }
}

.btn_add {
  width: 100%;
  text-align: right;
}

.btn_add a {
  display: block;
  max-width: 400px;
  background: #f3809e;
  padding: 7px 30px;
  border-radius: 10px;
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
}

.wp_entry .btn_add a::after {
  background-color: #d84187;
}

.btn_add.movie {
  margin: 0 auto 30px;
}

.btn_add.movie a {
  max-width: 650px;
}

.btn_add.kojin {
  margin: 0 auto 30px;
}

.btn_add.kojin a {
  max-width: 800px;
}

/*オープンキャンパスムービー
-------------------------------------------------------------------------*/
.wp_entry ul.movie_nav {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto 50px;
}

.wp_entry ul.movie_nav li {
  width: calc(100% / 2 - 10px);
  padding: 10px 0;
}

.wp_entry ul.movie_nav li a {
  display: block;
  padding: 13px;
  background: #c7edff;
  color: #0871a2;
  text-align: center;
  border-radius: 10px;
}

.wp_entry ul.movie_nav li::before {
  content: none;
}

.wp_entry p.btn_all {
  width: calc(100%);
  padding: 10px 0;
}

.wp_entry p.btn_all a {
  display: block;
  padding: 13px;
  text-align: center;
  border-radius: 10px;
  background: #e55f82;
  color: #fff;
}

.wp_entry p.btn_all a::after {
  background-color: #d9335e;
}

.wp_entry h2.h2_movie_all {
  color: #d9335e;
  font-weight: bold;
}

/*　230808オープンキャンパス ------------- */
.oc_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 15px 0;
}

.oc_flex img {
  width: 320px;
  margin-bottom: 15px;
}

.op_youtube {
  text-align: center;
  margin-bottom: 45px;
}

@media screen and (max-width: 960px) {
  .oc_flex {
    display: block;
  }

  .oc_flex img {
    width: 100%;
  }

  .op_youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
  }

  .op_youtube iframe {
    width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 960px) {
  .wp_entry ul.movie_nav li {
    width: calc(100%);
  }
}

.wp_entry table.table-narrow.table-calendar th,
.wp_entry table.table-narrow.table-calendar td {
  vertical-align: middle;
  text-align: center;
}

.wp_entry table.table-narrow.table-calendar td span {
  display: block;
  font-size: 0.9rem;
}

.interview_box {
  display: flex;
  justify-content: flex-start;
  align-content: flex-start;
  flex-wrap: wrap;
  background: #fff9d8;
}

.interview_box>div {
  width: calc(100% / 4 - 60px);
  margin: 30px;
}

.interview_box>div span {
  display: block;
  margin-top: 20px;
  width: 100%;
}

.interview_box>div span>img {
  width: 100%;
}

#cboxLoadedContent {
  background: #fff;
}

.interview_box>div a:after {
  display: none;
}

#cboxLoadedContent {
  background: #fff !important;
}

.mordal_box {
  position: relative;
  padding: 50px 0px;
  box-sizing: border-box;
}

.mordal_box * {
  position: relative;
  z-index: 100;
}

.mordal_box:before {
  content: "";
  background: url("../../school-life/img/bg_interview_before.png") no-repeat 50% 0%;
  background-size: auto;
  width: 100%;
  height: 300px;
  position: absolute;
  top: 0;
  display: block;
  z-index: 0;
  background-size: 96%;
}

.mordal_box:after {
  content: "";
  background: url("../../school-life/img/bg_interview_after.png") no-repeat 50% 100%;
  width: 100%;
  height: 300px;
  position: absolute;
  bottom: 0;
  display: block;
  z-index: 0;
  background-size: 96%;
}

.mordal_box h3 {
  position: absolute;
  right: 30px;
  top: 30px;
  z-index: 0;
}

.mordal_box .title,
.mordal_box .txt {
  width: 90%;
  max-width: 980px;
  margin: 0 auto;
  box-sizing: border-box;
}

.mordal_box .title {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}

.mordal_box .title>img {
  width: 300px;
}

.mordal_box .title>h4 {
  width: calc(100% - 350px);
  margin-left: 50px;
  color: #00a8bd;
  font-size: 3vw;
  line-height: 1.3;
  border-left: 8px solid #00a8bd;
  padding-left: 15px;
}

.mordal_box .title>h4>span {
  display: block;
  font-size: 50%;
  color: #222;
}

.mordal_box .txt {}

.mordal_box .txt>h5 {
  margin-top: 60px;
  margin-bottom: 20px;
  font-weight: bold;
  color: #00a8bd;
  position: relative;
  padding-left: 30px;
}

.mordal_box .txt>h5:before {
  content: "Q";
  position: absolute;
  left: 0;
  background: #00a8bd;
  color: #fff;
  width: 26px;
  height: 26px;
  border-radius: 13px;
  text-align: center;
  line-height: 26px;
  top: -5px;
}

@media screen and (max-width: 960px) {
  .interview_box>div {
    width: calc(100% / 3 - 20px);
    margin: 10px;
  }

  .mordal_box h3 {
    width: 50%;
    right: 10px;
  }

  .mordal_box .title>img {
    width: 30%;
  }

  .mordal_box .title>h4 {
    width: calc(70% - 20px);
    margin-left: 20px;
    font-size: 5vw;
    border-left: 4px solid #00a8bd;
    padding-left: 5px;
  }

  .mordal_box .title,
  .mordal_box .txt {
    width: 96%;
  }
}

.wp_entry table.word dl {
  display: flex;
  justify-content: space-between;
  align-content: flex-start;
  flex-wrap: wrap;
}

.wp_entry table.word dl>dt {
  width: 50px;
  font: inherit !important;
  color: #000;
  margin-top: 0;
}

.wp_entry table.word dl>dd {
  width: calc(100% - 50px);
}

.wp_entry table.word th {
  width: 75px !important;
  box-sizing: border-box;
}

@media screen and (max-width: 960px) {

  .wp_entry table.word dl>dt,
  .wp_entry table.word dl>dd {
    width: 100%;
  }
}

/*230508*/

.oc_repo {
  display: flex;
  justify-content: space-between;
}

.oc_repo div:first-child {
  width: 60%;
  padding-right: 5px;
}

.oc_repo div:last-child {
  width: 30%;
}

@media screen and (max-width: 960px) {
  .oc_repo {
    display: block;
  }

  .oc_repo div:first-child {
    width: 100%;
    padding-right: 0;
  }

  .oc_repo div:last-child {
    width: 100%;
  }
}

a.curriculum {
  position: static;
  padding-right: 0;
}

a.curriculum::after {
  position: static;
}

/*230707 男性看護師インタビュー*/

.home_content .inteview_bnr {
  display: block;
  margin: 50px auto 10px;
  width: 910px;
}

.home_content .inteview_bnr a {
  background: none;
  display: block;
  height: 100%;
}

.home_content .inteview_bnr a img {
  border-radius: 15px;
}

@media screen and (max-width: 960px) {
  .home_content .inteview_bnr {
    width: 100%;
    text-align: center;
    margin: 30px auto 0;
    max-width: 400px;
  }
}

/*　すずらん祭 --------------- */
.poster_box {
  text-align: center;
}

.wp_entry .poster_box a {
  padding-right: 0;
}

.wp_entry .poster_box a::after {
  width: 0;
}

.poster_box img {
  width: 350px;
}

.suzuran_flex {
  justify-content: center;
  align-items: center;
}

.suzuran_flex .box02 {
  padding-top: 40px;
  padding-bottom: 40px;
}

@media screen and (max-width: 960px) {
  .poster_box img {
    width: 100%;
  }

  .suzuran_flex .box02 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

ul.nagatsuda {
  padding: 20px;
  box-sizing: border-box;
  border-radius: 15px;
  background: #f8f7f3;
}

ul.nagatsuda>li>span {
  font-size: 140%;
  font-weight: bold;
  padding: 0 5px;
}

ul.nagatsuda>li>span>span {
  border-bottom: #f0ea63 3px solid;
  padding: 0 5px;
}

/* 交通アクセス ------------------------ */
.access_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.access_flex img {
  width: 650px;
}

.access_sp {
  display: none;
}

.balloon1-left {
  position: relative;
  display: inline-block;
  padding: 15px 20px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  background: #f3809e;
  border-radius: 10px;
}

.balloon1-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #f3809e;
}

.ng_box {
  width: 300px;
  background: none !important;
  padding: 0 !important;
}

.wp_entry em.access {
  font-size: 1.3em;
}

.ng_box li::before {
  color: #fff !important;
}

@media screen and (max-width: 960px) {
  .access_flex {
    display: block;
  }

  .access_flex img {
    width: 100%;
  }

  .balloon1-left {
    width: 100%;
    margin-bottom: 15px;
  }

  .balloon1-left:before {
    display: none;
  }

  .ng_box {
    width: 100%;
  }

  .wp_entry em.access {
    margin-bottom: 10px;
  }

  .access_sp {
    display: block;
  }

  .balloon1 {
    position: relative;
    display: inline-block;
    padding: 15px;
    color: #fff;
    font-size: 16px;
    background: #f3809e;
    width: 100%;
    margin-bottom: 15px;
    border-radius: 10px;
  }

  .balloon1:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #f3809e;
  }

  .access_pc {
    display: none;
  }
}

.lnav-rich ul.btn_sitemap li a strong {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 960px) {
  .lnav-rich ul.btn_sitemap li a {
    padding-bottom: 15px;
  }
}

/* 240618 オープンキャンパス --------------- */
.program_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.program_box img {
  width: 49%;
  margin-bottom: 20px;
}

span.program_title {
  font-weight: bold;
  color: #43b6ec;
}

.txtaC {
  text-align: center;
}

h2.oc {
  position: relative;
  text-align: center;
}

h2.oc::after {
  content: "";
  background: url("../../img/h2_oc_after.png") no-repeat 50% 50%;
  background-size: auto;
  background-size: auto;
  width: 50px;
  height: 32px;
  background-size: cover;
  position: absolute;
  top: -21px;
  right: 340px;
}

.web {
  width: 350px;
  padding: 20px 15px;
  text-align: center;
  background: #8cd6cf;
  border-radius: 15px;
  box-shadow: 10px 10px 15px -10px;
  margin: 0 auto;
  margin-bottom: 50px;
  font-size: 1.2rem;
}

.web:hover {
  opacity: 0.6;
}

.web a {
  color: #fff;
  font-weight: bold;
  line-height: 1.8rem;
}

.web a:hover {
  text-decoration: none;
}

.wp_entry .web a {
  padding-right: 0 !important;
}

.wp_entry .web a::after {
  display: none !important;
}

p.oc {
  text-align: center;
  font-size: 1.1rem;
  color: #f3809e;
}

@media screen and (max-width: 960px) {
  .program_box {
    display: block;
  }

  .program_box img {
    width: 100%;
  }

  h2.oc::after {
    width: 35px;
    height: 26px;
    top: -17px;
    right: 50px;
  }
}

/* 入試情報　---------------------------- */
.document_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 25px;
}

.document_box a {
  width: 32%;
  background: #fa9ab7;
  padding: 15px;
  border-radius: 7px;
  text-align: center;
  margin-bottom: 15px;
  color: #fff;
  font-weight: bold;
}

.document_box a::after {
  display: none !important;
}

.document_box a:hover {
  text-decoration: none;
  opacity: 0.5;
}

@media screen and (max-width: 960px) {
  .document_box {
    display: block;
  }

  .document_box a {
    width: 100%;
    display: block;
    margin-bottom: 10px;
  }
}

/* 出願について　---------------------------- */
.application .tbl_sche {
  width: 70%;
  margin: auto;
  font-size: 13px;
}

.application .tbl_sche tr th,
.application .tbl_sche tr td {
  text-align: center;
}

.application .tbl_sche tr td {
  padding: 10px;
}

.application .tbl_sche .limit {
  text-align: left;
}

.application_btn a {
  width: fit-content;
  margin: auto;
  display: block;
  padding: 30px 40px;
  background-color: #1563b0;
  color: #fff;
  margin-bottom: 20px;
  border-radius: 5px;
  font-weight: bold;
  font-size: 20px;
}

.application .btn_small {
  padding: 30px;
  font-size: 18px;
  margin-top: 20px;
}

@media screen and (max-width: 960px) {
  .application .tbl_sche {
    width: 96%;
  }
}

/* 図書室 250414
-------------------------------------------------------------------------*/
.lnav-rich ul li.l_event a {
  background-color: #f766ad;
  color: #fff;
}

.lnav-rich ul li.l_event a:hover {
  opacity: 0.7;
}

.pnav ul li.event a {
  background-color: #f766ad;
  color: #fff;
}

.event_log {
  width: 100%;
  margin: 0 auto 50px;
}

.event_log img {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  display: block;
}

.taisho_tag {
  display: inline-block;
  text-align: center;
  padding: 10px 20px;
  border-radius: 20px;
  margin-left: 10px;
}

.taisho_tag.zai {
  background: #a7e3ff;
}

.taisho_tag.kanagawa {
  background: #ffd3d3;
}

.taisho_tag.ippan {
  background: #b8ffc1;
}

.wp_entry .event_flex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 30px;
  margin: 0 auto 30px;
}

.wp_entry .event_flex .event_box.img {
  width: 30%;
}

.wp_entry .event_flex .event_box.img a {
  display: block;
  padding-right: 0;
}

.wp_entry .event_flex .event_box.img a::after {
  display: none;
}

.wp_entry .event_flex .event_box.img a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.wp_entry .event_flex .event_box.img a img {
  display: block;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 0;
}

.wp_entry .event_flex .event_box.txt {
  width: 60%;
}

.wp_entry .event_flex .event_box.txt h3 {
  margin: 0 auto 30px;
}

span.event-span_end {
  display: inline-block;
  background-color: #e74c4c;
  color: #fff;
  padding: 5px 10px;
}

@media screen and (max-width: 960px) {
  .wp_entry .event_flex .event_box.img {
    width: 100%;
    padding: 0 50px;
  }

  .wp_entry .event_flex .event_box.txt {
    width: 100%;
  }
}

.wp_entry p.btn_event {
  width: 100%;
  max-width: 400px;
  margin: 30px auto 0;
}

.wp_entry p.btn_event a {
  text-align: center;
  font-weight: bold;
  color: #fff;
  background: #f3809e;
  /* background: #43b6ec; */
  display: block;
  text-align: center;
  padding: 10px;
  border-radius: 10px;
  font-size: 1.1rem;
}

.wp_entry p.btn_event a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.wp_entry p.btn_event a::after {
  display: none;
  background-color: #fff;
}

.fwb {
  font-weight: bold !important;
}

.wp_entry p.event_close {
  margin: 20px auto 0;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background: #e74c4c;
  padding: 10px;
}


/* 図書室イベントフォーム その他
-------------------------------------------------------------------------*/
.wp_entry table.formTable th {
  width: 30%;
}

@media screen and (max-width: 960px) {
  .wp_entry table.formTable th {
    width: 100%;
    display: block;
  }

  .wp_entry table.formTable td {
    width: 100%;
    display: block;
  }
}

.wp_entry p.txt-close {
  margin: 20px auto;
  text-align: center;
  font-weight: bold;
  color: #fff;
  background: #e74c4c;
  padding: 10px;
}

.wp_entry li a.btn-link_public {
  display: block;
  text-align: center;
  width: 100%;
  max-width: 300px;
  background: #43b6ec;
  color: #fff;
  margin-top: 15px;
  margin-bottom: 15px;
  padding: 10px;
  text-indent: 0;
  border-radius: 5px;
}

.wp_entry li a.btn-link_public:hover {
  opacity: 0.7;
  text-decoration: none;
}

.wp_entry li a.btn-link_public::after {
  display: none;
}

.form input[type="text"].kibou {
  width: 100%;
  max-width: 500px;
}

.wp_entry .public_blue {
  background: #ddf3ff;
  border-radius: 10px;
  padding: 20px;
  margin: 30px auto 0;
}

.wp_entry .public_blue h3 {
  margin: 0;
  margin-bottom: 10px;
  padding: 0;
  background: none;
}

.wp_entry .public_blue ul li::before {
  color: #000;
}

.wp_entry p.btn-region-sche a {
  width: 100%;
  max-width: 400px;
  display: block;
  text-align: center;
  background-color: #5a9c2f;
  border-radius: 10px;
  padding: 10px;
  font-weight: bold;
  color: #fff;
}

.wp_entry p.btn-region-sche a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.wp_entry p.btn-region-sche a::after {
  display: none;
}

/* 本校を選ぶメリット 質問ボタン
-------------------------------------------------------------------------*/
#merit-intro {
  width: 100%;
  margin: 0 auto 60px;
}

.merit-box_qa {
  width: 100%;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-around;
}

a.merit-btn_qa {
  display: block;
  text-align: center;
  padding: 20px;
  border-radius: 20px;
  width: 30%;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
}

a.merit-btn_qa::after {
  display: none;
}

a.merit-btn_qa.yes {
  background-color: #62cafb;
}

a.merit-btn_qa.no {
  background-color: #feb7b7;
}

.merit-txt_qa {
  text-align: center;
  font-size: 1.4rem;
}

.merit-img_qa img {
  display: block;
  width: 100%;
  margin: 0 auto;
  max-width: 500px;
}

@media screen and (max-width: 960px) {
  #merit-intro {
    padding: 0 30px;
  }

  a.merit-btn_qa {
    padding: 20px;
    width: 40%;
    font-size: 1.2rem;
  }
}

/* 本校を選ぶメリット セクション
-------------------------------------------------------------------------*/
.merit-sec {
  padding: 30px;
  margin-bottom: 100px;
}

#sec-yes {
  background-color: #e9f8ff;
  background-image: url("/ims-yokohama/admission/img/merit/img-yes-img.png");
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: 300px;
  padding-bottom: 250px;
  border-radius: 20px;
}

#sec-no {
  background-color: #ffebeb;
  background-image: url("/ims-yokohama/admission/img/merit/img-no-img.png");
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: 300px;
  padding-bottom: 250px;
  border-radius: 20px;
}

#sec-yes h2 span,
#sec-no h2 span {
  display: block;
  font-size: 1.2rem;
  margin-bottom: 20px;
  color: #333;
}

@media screen and (max-width: 960px) {
  .merit-sec {
    padding: 30px;
  }

  #sec-yes {
    padding-bottom: 200px;
    background-size: 200px;
  }

  #sec-no {
    padding-bottom: 200px;
    background-size: 200px;
  }
}

/* 本校を選ぶメリット　～なりたい自分になれる
-------------------------------------------------------------------------*/
.merit-img_jibun {
  width: 100%;
  margin: 0 auto 50px;
}

.merit-img_jibun img {
  width: 100%;
  display: block;
}

.merit-img_jibun img.pc_img {
  display: block;
}

.merit-img_jibun img.sp_img {
  display: none;
}

.merit-ttl-point {
  font-size: 1.4rem;
}

.merit-ttl-point span {
  font-size: 1.8rem;
}

.merit-ttl-point span.txt-ul {
  text-decoration: underline;
}

@media screen and (max-width: 960px) {
  .merit-ttl-point {
    font-size: 1.3rem;
  }

  .merit-ttl-point span {
    font-size: 1.7rem;
  }

  .merit-img_jibun img.pc_img {
    display: none;
  }

  .merit-img_jibun img.sp_img {
    display: block;
  }
}

/* 本校を選ぶメリット　ポイント
-------------------------------------------------------------------------*/
.merit-box_point {
  width: 100%;
  margin: 0 auto 30px;
  display: flex;
  flex-wrap: wrap;
}

.merit-txt_point {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 10px 20px;
  border-radius: 10px;
  color: #fff;
  font-size: 1.2rem;
  font-weight: bold;
  position: relative;
}

#sec-yes .merit-txt_point {
  background-color: #78c1e2;
}

#sec-no .merit-txt_point {
  background-color: #e78b8b;
}

.merit-txt_point::before {
  color: #fff;
  font-size: 1.6rem;
}

.merit-txt_point.point-1::before {
  content: "POINT1";
  display: inline-block;
}

.merit-txt_point.point-2::before {
  content: "POINT2";
  display: inline-block;
}

@media screen and (max-width: 960px) {
  .merit-txt_point {
    flex-wrap: wrap;
    gap: 5px;
  }

  .merit-txt_point::before {
    width: 100%;
  }
}

/* 本校を選ぶメリット イメージ図
-------------------------------------------------------------------------*/
.merit-img_flow {
  width: 100%;
  margin: 0 auto 30px;
}

.merit-img_flow img {
  display: block;
  width: 100%;
}

.merit-txt_flow {
  font-size: 1.6rem;
  text-align: center;
  text-decoration: underline;
}

@media screen and (max-width: 960px) {
  .merit-img_flow {
    overflow-x: scroll;
    overflow-y: hidden;
  }

  .merit-img_flow::before {
    content: "※横にスクロールします。";
    display: block;
    color: #ff0000;
    font-weight: bold;
  }

  .merit-img_flow img {
    width: 700px;
    max-width: none;
  }

  .merit-txt_flow {
    font-size: 1.2rem;
  }
}

/* 本校を選ぶメリット　リンクボタン
-------------------------------------------------------------------------*/
.merit-box_link {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.wp_entry a.merit-btn_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: calc(100% / 2 - 20px);
  text-align: center;
  padding: 20px;
  border-radius: 10px;
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
  position: relative;
}

.wp_entry a.merit-btn_link::after {
  display: none;
}

.wp_entry a.merit-btn_link:hover {
  text-decoration: none;
  opacity: 0.6;
}

.wp_entry a.merit-btn_link span {
  display: block;
  font-size: 1rem;
  margin-bottom: 10px;
  line-height: 1.6rem;
}

.wp_entry a.merit-btn_link span.dtl {
  text-align: center;
  display: block;
  background-color: #fff;
  color: #000;
  margin: 0 auto;
  margin-top: 20px;
  width: 50%;
  padding: 10px;
  border-radius: 10px;
}

.wp_entry a.merit-btn_link.btn1 span.dtl {
  color: #ff6699;
}

.wp_entry a.merit-btn_link.btn2 span.dtl {
  color: #266196;
}

.wp_entry a.merit-btn_link.btn1 {
  background-color: #ff6699;
}

.wp_entry a.merit-btn_link.btn2 {
  background-color: #266196;
}

.wp_entry a.merit-btn_link.btn3 {
  background-color: #ffd966;
}

@media screen and (max-width: 960px) {
  .wp_entry a.merit-btn_link {
    width: 100%;
    font-size: 1.6rem;
  }

  .wp_entry a.merit-btn_link span {
    font-size: 0.9rem;
    line-height: 1.3rem;
  }

  .wp_entry a.merit-btn_link span.dtl {
    width: 70%;
  }
}

/* 本校を選ぶメリット　コラム
-------------------------------------------------------------------------*/
.merit-box_column {
  width: 100%;
  margin: 0 auto 30px;
  padding: 10px 40px;
  display: flex;
  justify-content: space-around;
  background-color: #deebf7;
  border-radius: 40px;
}

.merit-box_column .txt-box {
  width: 100%;
  font-size: 1.1rem;
}

.merit-box_column .txt-box .merit-txt_ttl {
  font-size: 1.6rem;
  text-align: center;
}

.merit-box_column .txt-box .merit-txt_ttl span {
  font-size: 1.3rem;
  display: block;
}

.merit-box_column .img-box {
  width: 40%;
  margin: 20px auto;
}

.wp_entry .merit-box_column .img-box img {
  width: 100%;
  display: block;
  border-radius: 0;
}

@media screen and (max-width: 960px) {
  .merit-box_column {
    padding: 10px 20px;
    flex-wrap: wrap;
    gap: 20px;
    flex-flow: column-reverse;
    padding: 30px;
  }

  .merit-box_column .txt-box .merit-txt_ttl {
    font-size: 1.4rem;
  }

  .merit-box_column .txt-box .merit-txt_ttl span {
    font-size: 1.2rem;
  }

  .merit-box_column .txt-box {
    font-size: 1rem;
    width: 100%;
  }

  .merit-box_column .img-box {
    width: 100%;
  }
}

/* 出願について スケジュール
-------------------------------------------------------------------------*/
.tbl-app-sche th,
.tbl-app-sche td {
  text-align: center;
  width: calc(100% / 5);
}

.tbl-app-sche td.bg-none {
  background-color: #ccc;
}

@media screen and (max-width: 960px) {
  .tbl-app-sche {
    overflow-x: scroll;
    overflow-y: hidden;
  }

  .tbl-app-sche::before {
    content: "※横にスクロールします。";
    display: block;
    color: #ff0000;
    font-weight: bold;
    margin-bottom: 20px;
  }

  .tbl-app-sche table {
    width: 800px;
  }
}

/* 出願について 出願資格
-------------------------------------------------------------------------*/
.tbl-app-shikaku th {
  text-align: center;
}

.tbl-app-shikaku th:nth-of-type(1) {
  width: 20%;
}

@media screen and (max-width: 960px) {
  .tbl-app-shikaku tr.sp-none {
    display: none;
  }

  .tbl-app-shikaku th,
  .tbl-app-shikaku td {
    display: block;
    width: 100%;
  }

  .tbl-app-shikaku th:nth-of-type(1) {
    width: 100%;
  }
}

/* 250620追加
-------------------------------------------------------------------------*/
.youkou {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
}

@media screen and (max-width: 960px) {
  .youkou {
    display: block;
  }
}

.wp_entry p.txt-event_night {
  margin: 50px auto 20px;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
}

.img-poster_night {
  display: flex;
  justify-content: space-around;
}

.img-poster-box_night {
  width: calc(100%/2 - 60px);
}

.img-poster-box_night a {
  display: block;
  padding-right: 0;
}

.img-poster-box_night a::after {
  display: none;
}

.img-poster-box_night a:hover {
  opacity: 0.6;
}

.img-poster-box_night a img {
  display: block;
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 0;
}

@media screen and (max-width: 960px) {

  .wp_entry p.txt-event_night {
    font-size: 1.2rem;
  }

  .img-poster_night {
    flex-wrap: wrap;
    gap: 30px;
  }

  .img-poster-box_night {
    width: 80%;
  }

}


/* ヘッダーSNS 非公開
-------------------------------------------------------------------------*/
#header .gnav ul li.sns-box {
  display: none;
}



/* 情報公開 250703追加
-------------------------------------------------------------------------*/
.wp_entry p.btn-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 20px;
  align-items: center;
}

@media screen and (max-width: 960px) {

  .wp_entry p.btn-info {
    justify-content: center;
  }

}


h3 span.h3_small{
  font-size: 1.1rem;
}

.photo_box{
  width: 100%;
  margin: 20px auto 0;
}


/* アコーディオン
-------------------------------------------------------------------------*/
.acd-check {
  display: none;
}

.acd-label {
  background: #0068b7;
  color: #fff;
  display: flex;
  align-items: center;
  margin-bottom: 1px;
  padding: 15px 15px;
  position: relative;
  cursor: pointer;
  font-weight: bold;
}

.acd-label:after {
  background: #00479d;
  box-sizing: border-box;
  content: "＋";
  width: 15%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
}

.acd-content {
  display: block;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  transition: 0.5s;
  visibility: hidden;
}

.acd-check:checked+.acd-label:after {
  content: "―";
}

.acd-check:checked+.acd-label+.acd-content {
  height: auto;
  opacity: 1;
  /* padding: 10px; */
  visibility: visible;
}

.acd-label.pre {
  width: 40%;
  height: 40px;
  font-size: 1.125em;
  background: #5ea3d7;
  border-radius: 5px;
  overflow: hidden;
}

.acd-label.pre:after {
  background: #0068b7;
}

.acd-label.cafe {
  background: #0068b7;
  color: #fff;
}

.acd-label.cafe:after {
  background: #00479d;
}

.acd-label.eng {
  background: #fbb1be;
}

.acd-label.eng:after {
  background: #dc586f;
}





/* 入試案内
-------------------------------------------------------------------------*/
.syorui{
  width: 350px;
}
.acd-label.doc {
  width: 100%;
  height: 40px;
  font-size: 1.125em;
  background: #ff9eaf;
  border-radius: 5px;
  overflow: hidden;
  padding-left: 30px;
}

@media screen and (max-width: 960px) {
  .syorui{
    width: 100%;
  }
  .acd-label.doc {
    width: 165px;
    height: 35px;
    margin-bottom: 20px;
  }
}

.acd-label.doc:after {
  background: #dc586f;
}

.wp_entry a.btn_app{
  background: linear-gradient(#d7b656 50%, #d7b656 50%, #d7b656 100%);
  box-shadow: 0 2px 0 transparent;
  color: #fff;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 160px;
  height: 40px;
  padding: 0 20px;
  border-radius: 5px;
  font-size: 1.125em;
  font-weight: bold;
  line-height: 1.3;
  text-decoration: none;
}
.wp_entry a.btn_app::after{
  display: none;
}
.suzufes{
  margin: 60px auto;
}
.suzufes p img{
  max-width: 400px;
  margin: 30px auto;
  display: block;
}
.suzufes p{
  text-align: center;
}
.home_coming p img{
  max-width: 280px;
  margin: 0 auto;
  display: block;
}
.home_coming p a::after{
  display: none;
}
.association_flex{
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 960px) {
.association_flex{
  flex-direction: column;
}
}