@charset "utf-8";
/* CSS Document */
html {
  min-height: 100%;
  position: relative;
}
body{
	margin: 0 auto;
	padding: 0;
	font-family:Shin Maru Go Regular,'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
	font-size: 1.2rem;
	font-weight: normal;
	line-height: 1.75;
	width: 100%;
 	background-color: #FFFFFF;
	color: #231815;
}
.both { clear: both; }
img { width: 100%; }
.fs2 { font-size: 1.5rem; }
.fs15 { 
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 0.5rem;
}
.tc { text-align: center; }

.pc { display: none;}
/* ヘッダー　*/
header { 
	position: fixed;
	background-color:#fff!important;
	border-bottom: 10px solid #A1203C;
    height: 75px;
    top: 0;
    left: 0;
    width: 100%;
    background: border-box;
	z-index: 2;
}
.logo {
	padding: 3% 3% 0 3%;
	width: 70%;
}
.logo h1 img { max-width: 320px; }
.navi_item a { color: #fff; }
/*　パンくず　*/
.breadcrumbs {
	background-color: #a1203c;
	margin-bottom: 1rem;
	padding-left: .5rem;
}
.breadcrumbs span {
	font-size: .8rem;
	color: #fff;
}
.breadcrumbs a { 
	padding-bottom: 5px;
	position: relative;
	color: #fff;
	font-size: .8rem;
}
.breadcrumbs a::before {
	background: #ff701e;
	content: '';
	width: 100%;
	height: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.breadcrumbs a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
/*========= ページトップのためのCSS ===============*/
/*リンクの形状*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background:#A1203C;
	border-radius: 5px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:0.6rem;
	transition:all 0.3s;
}

#page-top a:hover{
	background: #777;
}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 10px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}
/* スライダー　*/
.swiper { margin-top: 85px; }
.swiper-slide img { width: 100%; }
.swiper-pagination-bullet-active {
    background-color: #fff;
}
.swiper-pagination { background-color: #A1203C; }
/* コンテンツ1 */
.contents1 {
	background-color: #fff;
	width: 100%;
	padding: 50px 0;
	position: relative;
}
.contents1 h3 img, .contents2 h3 img, .contents3 h3 img, .contents4 h3 img, .contents5 h3 img { max-width: 600px; }
/* お知らせ */
.info {
	max-width: 820px;
	margin: 0 auto;
}
.info ul li {
	line-height: 3.5;
	border-bottom: 2px dotted #ccc;
	padding: 0 1rem;
}
.info ul li a { 
	padding-bottom: 5px;
	position: relative;
	color: #231815; 
}
.info ul li a::before {
  background: #ff701e;
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.info ul li a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}

.date {display: block; }
.contents1::after{
  content: "";
  position: absolute;
  background: linear-gradient(45deg, #A1203C 50%, transparent 52%),
      linear-gradient(315deg, #A1203C 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}
/* コンテンツ2 */
.contents2 {
	width: 100%;
	padding: 2rem 0;
	background-color: #A1203C;
}
.contents3 {
	background-color: #fff;
	width: 100%;
	position: relative;
}

.contents3::after{
  content: "";
  position: absolute;
  background: linear-gradient(45deg, #FFF6CF 50%, transparent 52%),
      linear-gradient(315deg, #FFF6CF 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  bottom: 0;
}
/* コンテンツ4 */
.contents4 {
	width: 100%;
	padding: 3rem 0;
	background-color: #FFF6CF;
}
/* グループ校紹介 */
.group {
	width: 100%;
	max-width: 820px;
	margin: 0 auto;
	padding-bottom: 80px;
}
.group ul { padding: 0 5%; }
.group ul li {
	margin: 20px 2%;
}
.zoom-box {
  display: inline-block;
  overflow: hidden;
}
.zoom {
  display: block;
  transition-duration: .5s;
}
.zoom:hover {
  transform: scale(0.9);
}
 
#footer{
	position: relative;
	z-index: 1;
}
footer {
	width: 100%;
	background-color: #fff;
}
.foot_l {
	padding: 20px 5%; 
	width: 90%;
}
.foot_l img { 
        max-width: 320px;
        margin: 20px auto;
        display: block;
}
.foot_l address { text-align: center; }
.foot_map {
	width: 100%;
}
.cp {
	background-color: #A1203C;
	text-align: center;
	color: #fff;
	padding: 0.5rem 0;
}
/* サブ */
.sub { margin-top: 75px; }
.spirit { 
}
h4 { 
	font-size: 1.5rem;
	font-weight: bold;
	color: #a1203c;
}
.sub p { padding: 0 1rem;}
.gakuenkun { }
.kun dt {
	padding: 0.5em 2em;
	color: #FFF;
	text-shadow: 1px 1px rgba(0,0,0,.4);
	background-color: #de8a9d;
}
.kun dd {
	padding: 0.5em 1em;
	margin-left: 0;
	border-width: 0 1px 1px;
	border-style: none solid solid;
	border-color: #de8a9d;
}
.group_spt { 
}
.group_spt dl { 
	padding: 0.5rem 1rem;
	background-color: #fff;
}
.group_spt dt { font-weight: bold; }
.group_spt dd { 
	padding-bottom: 0.25rem;
	border-bottom: 1px solid #ccc;
	margin-bottom: 1rem;
}
.title {
	text-align: center;
	display: block;
	color: #fff;
	padding: 0.5rem 0;
	font-size: 1.15rem;	
}
.college, .highschool, .kindergarten {
	margin: 20px auto;
	border: 1px solid #3399cc;
	background-color: #fff;
}
.college .title {
	text-align: center;
	display: block;
	color: #fff;
	padding: 0.5rem 0;
	font-size: 1.15rem;
}
.college { border: 1px solid #3399cc; }
.college .title { background-color: #3399CC; }
.highschool .title { background-color: #99CC00; }
.highschool { border: 1px solid #99CC00; }
/*
.kindergarten .title { background-color: #FF9966; }
.kindergarten { border: 1px solid #FF9966; }
*/
.kindergarten .title { background-color: #FFc000; }
.kindergarten { border: 1px solid #FFc000; }

/* 建学の精神 */
.con_box {
}
.box_l, .box_r { 
	padding: 5%;
}
.mt2 { margin-top: 2rem; }
/* グループ校理念 */
.gp_box {
}
.box3 { 
	width: 90%;
	margin: 0;
	padding: 2% 5%;
}
/* 理事長挨拶 */
.greeting {
	max-width: 820px;
	margin: 0 auto;
}
.greeting .box_l { 
	padding: 5%;
	margin: 0 5%;
}
.greeting .box_r { 
	padding: 0;
}
.contents5 {
	width: 100%;
	background-color: #fff;
}
.m2 { margin: 2rem auto; }
/* 学園のあゆみ */
.history {
	max-width: 820px;
	margin: 0 auto;
}
.history dl {
	margin: 2rem auto;
	width: 90%;
	border: 1px solid #000;
	border-bottom: none;
	box-sizing: border-box;
}
.history dt {
	padding: 1rem 0 1rem 5%;
	border-bottom: solid 1px #000;
	background-color: #FFE9EF;
	box-sizing: border-box;
}
.history dd {
	padding: 1rem 0 1rem 5%;
	border-bottom: 1 #000 solid;
	border-bottom: solid 1px #000;
	box-sizing: border-box;
}
/* 情報公開 */
.history ul {
	max-width: 900px;
	margin: 0 auto;
}

.history ul li a { 
	padding-bottom: 5px;
	position: relative;
	color: #231815; 
}
.history li {
	line-height: 3.5;
	border-bottom: 2px dotted #ccc;
	padding: 0 1rem;
}
.history ul li a::before {
  background: #ff701e;
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.history ul li a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.ml3 { }
.fwb { font-weight: bold;}
/* 学園報 */
.report {
	width: 90%;
	max-width: 500px;
	margin: 20px auto 50px;
}
.report a { 
	padding-bottom: 5px;
	position: relative;
	color: #231815; 
}
.report a::before {
  background: #ff701e;
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .3s;
}
.report a:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.hakko {
	text-align: right;
	padding: 1rem 0;
	margin-bottom: 1rem;
	
}
/*　フォトアルバム　*/
.album {
	width: 90%;
	padding: 0 5%;
	margin: 0 auto;
}
.report_pic { margin-bottom: 70px; }
.report_pic ul{
	width: 96%;
	margin: 0 auto;
}
.report_pic ul li {
	margin: 1rem auto;	
}
.report_pic img {
	display: block;
	width: 100%;
	height: 300px;
	object-fit: cover;
	object-position: 50% 20%;	
}
/*  各校紹介 */ 
/*
.c-btn {
	cursor: pointer;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	background: #FF9966;
	border: 2px solid #FF9966;
	border-radius: 60px;
	display: block;
	font-weight: bold;
	max-width: 300px;
	padding: 15px 40px;
	text-align: center;
	margin: auto auto 1rem;
} 
.c-btn a { 
	color: #fff;
	flex-grow:1;
}

.c-btn:hover { background: #fff; }
.c-btn a:hover { color: #FF9966; }
*/
.c-btn {
	cursor: pointer;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	background: #FFc000;
	border: 2px solid #FFc000;
	border-radius: 60px;
	display: block;
	font-weight: bold;
	max-width: 200px;
	padding: 15px 40px;
	text-align: center;
	margin: auto auto 1rem;
} 
.c-btn a { 
	color: #fff;
	flex-grow:1;
}

.c-btn:hover { background: #fff; }
.c-btn a:hover { color: #FFc000; }

.hc-btn {
	cursor: pointer;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	background: #99CC00;
	border: 2px solid #99CC00;
	border-radius: 60px;
	display: block;
	font-weight: bold;
	max-width: 200px;
	padding: 15px 40px;
	text-align: center;
	margin: auto auto 1rem;
} 
.hc-btn a { 
	color: #fff;
	flex-grow:1;
}

.hc-btn:hover { background: #fff; }
.hc-btn a:hover { color: #99CC00; }
.cc-btn {
	cursor: pointer;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	background: #3399CC;
	border: 2px solid #3399CC;
	border-radius: 60px;
	display: block;
	font-weight: bold;
	max-width: 200px;
	padding: 15px 40px;
	text-align: center;
	margin: auto auto 1rem;
} 
.cc-btn a { 
	color: #fff;
	flex-grow:1;
}

.cc-btn:hover { background: #fff; }
.cc-btn a:hover { color: #3399CC; }
.max200 {
	max-width: 200px;
	margin: 0 auto;
	display: block;
}
/* サイドナビ */
.navi_item {
    position: relative;
    margin-bottom: 1.5rem;
    white-space: nowrap;
    padding: 0 2rem 1rem;
    border-bottom: 1px solid #fff;
}
/* お知らせ　wp */
.BoxNews { padding: 1rem; }

.BoxNews .News h4 {
	padding-top: 0px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 0px;
	font-weight: bold;
	font-size: 18px;
	color: #118AD9;
	overflow: hidden;
	background-attachment: scroll;
	background-image: url(../img/line_dot.gif);
	background-repeat: repeat-x;
	background-position: left top;
}

.BoxNews .News h4 span.Title {
	font-weight: bold;
	display: block;
	padding-top: 16px;
	padding-bottom: 10px;
	color: #118ad9;

}

.BoxNews .News h4 span.Time {
	background-attachment: scroll;
	background-image: url(../img/line_dot.gif);
	background-repeat: repeat-x;
	background-position: left top;
	display: block;
	padding-top: 5px;
	color: #333;
	font-weight: bold;
}

.BoxNews .News p{
	padding: 1rem 0;
}

.BoxNews .News p.LinkURL {
	text-align: right;
	overflow: hidden;
	background-attachment: scroll;
	background-image: url(../img/line_st_gray.gif);
	background-repeat: repeat-x;
	background-position: left bottom;
	padding-bottom: 5px;
	width: 610px;
	margin-right: auto;
	margin-left: auto;
}

.BoxNews .News p.LinkURL a {
	display: block;
	background-attachment: scroll;
	background-image: url(../img/arrow_blue.gif);
	background-repeat: no-repeat;
	background-position: left 5px;
	float: right;
	padding-left: 20px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.BoxNews .News .Photo {
	overflow: hidden;
	padding-top: 30px;
	padding-bottom: 30px;
	margin-right: auto;
	margin-left: auto;
}
.BoxNews img { width: auto!important; }
.BoxNews .News .Photo .Img01,
.BoxNews .News .Photo .Img02,
.BoxNews .News .Photo .Img03,

.BoxNews .News .Photo .Img01 {
	float: left;
	margin-left: 20px;
}
.BoxNews .News .Photo .Img02 {}
.BoxNews .News .Photo .Img03 {}

.BoxNews .News .Photo .Img01 p.Caption,
.BoxNews .News .Photo .Img02 p.Caption,
.BoxNews .News .Photo .Img03 p.Caption{
	font-size: 10px;
}
/* 建学の精神追加251008 */
.fs100 { font-size: 0.86rem; }