@charset "UTF-8";
@font-face {
  font-family: 'Huiji';
  src: url('../fonts/hui/hui.woff2') format('woff2'),
       url('../fonts/hui/hui.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
a:hover{
 transition : 0.5s;
 opacity: 0.5 ;
}
/* PCでのみ表示（スマホでは非表示） */
.pc-only {
  display: block !important;
}
/* スマホでのみ表示（PCでは非表示） */
.sp-only {
  display: none !important;
}
@media (max-width: 767px) {
/* スマホサイズでは非表示 */
  .pc-only {
    display: none !important;
  }
/* スマホサイズでは表示 */
  .sp-only {
    display: block !important;
  }
}
/*スマホのみ電話リンク有効*/
@media (min-width: 767px) {
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
}
/*gform用*/
.gform_wrapper .gf_hidden {
    display: none !important;
}
.tac { text-align:center !important; }
.tal { text-align:left !important; }
.db { display:block !important; }
/****************** header ******************/
.l-header__bar {
  display: none !important; 
}
.menu-item-has-children a span {
  display: inline-flex;
  align-items: center;
}
.menu-item-has-children a span::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-left: 0.4em;
  background: url("../images/common/down01.png") center / contain no-repeat;
  flex-shrink: 0;
}
.menu-item-has-children .sub-menu a span::after {
  display:none;
}
.menu-item-has-children a:hover span::after {
  background-image: url("../images/common/down02.png");
}
.c-gnav {
  font-weight:bold;
}
.c-gnav > .menu-item > a::after {
  display:none;
}
.c-gnav .sub-menu {
  color: #333;
  background: #fff;
  border:solid 1px #ccc;
  border-radius: 20px !important;
  overflow: hidden;
  background-clip: padding-box !important;
}
.c-gnav .sub-menu a::before, .c-listMenu a::before {
  content: "＋";
  color:#00A0E9;
}
.c-gnav .sub-menu .ttl {
  width: 90%;
}
/****************** サイドメニュー ******************/
.side_menulist {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  margin: 0;
  padding: 0;
  list-style: none;
  z-index: 9999;
}
.side_menulist li {
  width: auto;
}
.side_menulist li a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  padding: 0;
  line-height: 1.4;
  height: 7vw;
  position:relative;
  width: 5.5vw;
}
.side_menulist li a span {
  line-height: 1.2em;
  font-size: 0.85vw;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 100%;
  bottom: 10%;
}
/* 背景色指定 */
.side_menulist li:nth-child(1) a {
  background: url( "../images/common/side01.png" ) top 30% center / 50% auto no-repeat #00A0E9;
}
.side_menulist li:nth-child(2) a {
  background: url( "../images/common/side02.png" ) top 30% center / 50% auto no-repeat #FF9900;
}
.side_menulist li:nth-child(3) a {
  background: url( "../images/common/side03.png" ) top 30% center / 45% auto no-repeat #9FBB56;
}
@media screen and (max-width: 767px){
.side_menulist {
  width: 100%;
  display: flex;
  top: 96%;
}
.side_menulist li {
  flex: 1;
}
 .side_menulist li a span {
    font-size: 2.8vw;
    right: 20%;
    width: 100%;
    bottom: 10%;
  }
.side_menulist li:nth-of-type(2) a span,
.side_menulist li:nth-of-type(3) a span {
    bottom: 10%;
}
.side_menulist li a span br {
  display: none;
}
.side_menulist li a {
  height: 20vw;
  width: auto;
}
.side_menulist li:nth-child(1) a {
  background: url( "../images/common/side01.png" ) top 20% center / 30% auto no-repeat #00A0E9;
}
.side_menulist li:nth-child(2) a {
  background: url( "../images/common/side02.png" ) top 20% center / 30% auto no-repeat #FF9900;
}
.side_menulist li:nth-child(3) a {
  background: url( "../images/common/side03.png" ) top 20% center / 35% auto no-repeat #9FBB56;
}
}
@media screen and (max-width: 375px) {
.side_menulist {
  top: 94.5%;
}
}
/****************** footer 全体、上部 ******************/
.l-footer {
  width:100%;
  display:block;
}
.l-footer .footer_inner {
  width:80%;
  display:flex;
  margin:3vw auto;
}
.l-footer .footer_inner_left,.l-footer .footer_inner_right{
  flex: 1;
}
/* 左側 */
.l-footer .footer_inner_left a.logourl {
  width: 70%;
  margin-bottom: 0.5vw;
  display:block;
}
.l-footer .footer_inner_left a.logourl img {
  width: 100%;
}
.l-footer .footer_inner_left span {
  font-size: 0.9vw;
  line-height: 1em;
  display: block;
  margin-bottom: 1.5vw;
}
.l-footer .footer_inner_left p{
  white-space:pre-line;
  font-size:1.1vw;
}
/* 右側 */
.footer_inner_right ul {
  width: 95%;
  margin-left: 20%;
  display: flex;
  flex-wrap: wrap;
}
.footer_inner_right ul li {
  width: calc(100% / 3);  /* 3等分 */
  margin-bottom: 0.7vw;
  line-height: 1em;
}
.footer_inner_right ul li a{
  font-size: 1vw;
  color:#000;
}
.footer_inner_right div {
  width: 30%;
  display: flex;
  margin: 1em 0 0 18%;
}
.footer_inner_right div a{
  width: calc(100% / 3);  /* 3等分 */
}
.footer_inner_right div a img{
  width: 100%;
}
@media screen and (max-width: 1199px) {
.l-footer .footer_inner {
  width:90%;
}
.l-footer .footer_inner_left span {
  font-size: 1.2vw;
}
.l-footer .footer_inner_left p {
  font-size: 1.5vw;
}
.footer_inner_right ul {
  width: 100%;
  margin-left: 0;
}
.footer_inner_right ul li {
  line-height: 1.4em;
}
.footer_inner_right ul li a {
  font-size: 1.5vw;
}
.footer_inner_right div {
  width: 40%;
  margin: 1em 0 0 0;
}
}
@media screen and (max-width: 767px){
.l-footer .footer_inner {
  display: block;
  margin: 8vw auto;
}
.l-footer .footer_inner_left, .l-footer .footer_inner_right {
  width: 100%;
}
.l-footer .footer_inner_left a.logourl {
  width: 100%;
  margin-bottom: 1vw;
}
.l-footer .footer_inner_left span {
  font-size: 3vw;
  margin: 0 auto 1em auto;
  text-align: center;
}
.l-footer .footer_inner_left p {
  font-size: 4vw;
}
.footer_inner_right ul {
  margin: 5vw 0;
  font-weight: bold;
}
.footer_inner_right ul li {
  width: calc(100% / 2);
  margin-bottom: 3vw;
}
.footer_inner_right ul li a {
  font-size: 4vw;
}
 .footer_inner_right div {
    width: 45%;
  }
}
/****************** footer 背景グリーン ******************/
.footer_green {
  background-color: #F1F5E6;
  display: block;
  overflow: hidden;
}
.footer_green .footer_green_inner {
  width: 80%;
  margin: 3vw auto;
  display: flex;
}
.footer_green_inner_left {
  width: 28%;
}
.footer_green_inner_left a {
  width: 90%;
  display: block;
}
.footer_green_inner_left a img {
  width: 100%;
}
.footer_green_inner_left b {
  font-size: 0.9vw;
}
.footer_green_inner_right {
  width: 77%;
}
.footer_green_inner_right ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.footer_green_inner_right ul li {
  width: calc(100% / 3);
  padding: 0 1vw;
}
.footer_green_inner_right ul li:nth-child(-n + 3) {
  margin-bottom:1em;
}
.footer_green_inner_right ul li a img {
  width: 100%;
}
.footer_green_inner_right ul li b {
  font-size: 0.9vw;
  display: block;
  margin-bottom: 0.4em;
}
.footer_green_inner_right ul li p {
  background-color: #9FBB56;
  color: #fff;
  border-radius: 50px;
  padding: 0.5em 1.5em;
  font-size: 0.75vw;
}
a.bottom_link {
  text-align:center;
}
@media screen and (max-width: 1199px) {
.footer_green .footer_green_inner {
  width:90%;
}
}
@media screen and (max-width: 767px){
.footer_green .footer_green_inner {
  width: 90%;
  display: block;
}
.footer_green_inner_left,.footer_green_inner_right,.footer_green_inner_left a {
  width: 100%;
}
.footer_green_inner_left b {
  font-size: 4vw;
  display: block;
  text-align: center;
}
.footer_green_inner_right{
  margin-top:1em;
}
.footer_green_inner_right ul li {
  width: calc(100% / 2);
  padding: 0 2vw;
}
.footer_green_inner_right ul li b {
  font-size: 4vw;
  line-height: 1.2em;
}
.footer_green_inner_right ul li p {
  font-size: 3vw;
  line-height: 1.2em;
}
.footer_inner.bottom_foot {
 margin-bottom: 30vw;
}
.p-fixBtnWrap {
  bottom: 6.25em;
}
}
/****************** スマホ開閉メニュー内制御 ******************/
@media screen and (max-width: 767px){
.c-widget__title.-spmenu {
  padding: 0;
}
.widget_text .c-widget__title.-spmenu {
  display:none;
}
/* menu開き幅 */
.p-spMenu__inner {
  width: 100vw;
}
.-right .p-spMenu__inner {
  transform: translateX(100vw); /* 閉 */
}
[data-spmenu=opened] .p-spMenu__inner {
  transform: translateX(0); /* 開 */
}

/* ルートのaのプラスを消す */
.c-listMenu a::before {
  content: none;
}
.c-listMenu .sub-menu a::before {
  content: "＋";
  color: #00A0E9;
}
/* トグルボタンデザイン変更 */
.c-submenuToggleBtn {
  display: inline-flex;
  align-items: center;
}
.c-submenuToggleBtn::before {
  display:none;
}
.c-submenuToggleBtn::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 2em;
  margin-left: 0.4em;
  background: url("../images/common/down01.png") center / contain no-repeat;
  flex-shrink: 0;
  border: none;
  opacity: 1;
}
.c-submenuToggleBtn:hover::after {
  background-image: url("../images/common/down02.png");
}
/* 下部テキストウィジェット */
.smt_flexbox {
  display:flex;
  margin-top: 1em;
}
.smt_flexbox ul {
  width: 45%;
}
.smt_flexbox ul li {
  margin-bottom: 0.5em;
}
.smt_flexbox div {
  width: 45%;
  display: flex;
}
.smtmenu_logo {
  width:100%;
  display: block;
  line-height: 1em;
  margin-bottom: 1.5em;
}
.smtmenu_logo img{
  width:100%;
}
.smtmenu_logo span {
  font-size: 2.5vw;
}
}

/****************** オープンキャンパス・資料請求 ******************/
.ocan_cont {
  width: 100%;
  margin:0 auto;
  display:block;
  padding: 3vw 0;
}
.ocan_cont .ocan_contin {
  width: 90%;
  margin:0 auto;
  display:block;
}
.ocan_cont .ocan_contin ul{
  width: 100%;
  display:flex;
}
.ocan_cont .ocan_contin ul li {
  flex: 1;
  padding: 3vw;
}
.ocan_cont .ocan_contin ul li a {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden; 
  text-align: center;
  color: #fff;
  padding: 2.5vw 4vw;
  border-radius: 25px;
}
.ocan_cont .ocan_contin ul li h3{
  font-size: 1.7vw;
  margin-bottom: 0.5vw;
  white-space: pre-line;
  display: inline-flex;
  align-items: center;
}
.ocan_cont .ocan_contin ul li h3::after {
  background: url("../images/common/arrow_white.png") no-repeat center / contain;
  content: "";
  width: 1.5em;
  height: 1em;
  flex-shrink: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.ocan_cont .ocan_contin ul li p {
  margin-top: 1vw;
  font-size: 1vw;
  font-weight: bold;
  text-align: left;
}
/* オープンキャンパス */
.ocan_cont .ocan_contin ul li:nth-child(1) a {
  background: url("../images/top/oc_bg.jpg") center / cover no-repeat;
}

.ocan_cont .ocan_contin ul li:nth-child(1) a::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 217, 0, 0.6); /* #FFD900 60% */
  z-index: 1;
}
/* 資料請求 */
.ocan_cont .ocan_contin ul li:nth-child(2) a {
  background: url("../images/top/shi_bg.jpg") center / cover no-repeat;
}

.ocan_cont .ocan_contin ul li:nth-child(2) a::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 160, 233, 0.6); /* #00A0E9 60% */
  z-index: 1;
}
/* マウスオーバー */
.ocan_cont .ocan_contin ul li a > * {
  position: relative;
  z-index: 2;
}
.ocan_cont .ocan_contin ul li a div {
  width: 100%;
  overflow: hidden;
}
.ocan_cont .ocan_contin ul li a div img {
  width: 100%;
  transition: transform 0.4s ease;
}
.ocan_cont .ocan_contin ul li a:hover div img {
  transform: scale(1.2);
}
.ocan_cont .ocan_contin ul li:nth-child(1) a:hover::before {
  background: rgba(255, 217, 0, 0.4);
  transition: background 0.3s ease;
}
.ocan_cont .ocan_contin ul li:nth-child(2) a:hover::before {
  background: rgba(0, 160, 233, 0.4);
  transition: background 0.3s ease;
}
@media screen and (max-width: 767px){
.ocan_cont .ocan_contin ul {
  display: block;
}
.ocan_cont .ocan_contin ul li a {
  padding: 5vw 8vw;
  border-radius: 20px;
}
.ocan_cont .ocan_contin ul li h3 {
  font-size: 5vw;
  margin-bottom: 1vw;
}
.ocan_cont .ocan_contin ul li p {
  font-size: 3.5vw;
}
}
/****************** 画像ギャラリー ******************/
.under_gallery_cont {
  position: relative;
  overflow: hidden;
  line-height: 0;
}
.under_gallery_cont::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 160, 233, 0.6);
  z-index: 2;
  pointer-events: none;
}
.under_gallery_cont .swiper {
  margin: 0 !important;
  padding: 0;
  display: block;
}
/* 画像の高さ制御 */
.under_gallery_cont .swiper {
  position: relative;
  z-index: 1;
  height: clamp(140px, 12vw, 170px);
  opacity: 0.8;
}
/* 画像の高さ制御 */
.under_gallery_cont .swiper-slide {
  height: 100%;
  display: flex;
}
.under_gallery_cont .swiper-slide img {
  height: auto;
  width: 100%;
  object-fit: cover;
  display: block;
}
@media screen and (max-width: 1199px) {
.under_gallery_cont .swiper-slide img {
  height: 100%;
  width: auto;
}
}
/****************** パンくず ******************/
nav.my-breadcrumb {
  width: 100%;
}
nav.my-breadcrumb ul{
  width: 90%;
  display:flex;
  margin: 0.3em auto;
}
nav.my-breadcrumb ul li{
  font-weight:bold;
  font-size: 0.9em;
}
nav.my-breadcrumb ul li a{
  display:block;
}
nav.my-breadcrumb ul li a::after{
  content:">";
  margin: 0 0.5em;
}
@media screen and (max-width: 1199px) {
nav.my-breadcrumb ul{
  width: 95%;
  flex-wrap: wrap;
}
}
@media screen and (max-width: 767px){
nav.my-breadcrumb ul li a{
  display:block;
  position:relative;
  padding-right:1.6em
}
nav.my-breadcrumb ul li a::after{
  position:absolute;
  right:-0.1em;
}
}

