@charset "utf-8";

/* google fonts */
.biz-udpgothic-regular {
	font-family: "BIZ UDPGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.biz-udpgothic-bold {
	font-family: "BIZ UDPGothic", sans-serif;
	font-weight: 700;
	font-style: normal;
}

.m-plus-rounded-1c-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus-rounded-1c-bold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
}


/*!カスタムCSS */
body{
	font-family: "BIZ UDPGothic", sans-serif!important;
	font-feature-settings: "palt"
	overflow-x:clip;
	max-width:100vw;
}
/* 使用色 */
:root{
	/*
	--maincolor : #f36e2e;
	--subcolor : #f36e2e33;
	--h3color : #fce2d5;
	*/
	
	/*
	--maincolor : #ffaa66;
	--subcolor : #ffaa6644;
	--h3color : #ffd9bb;
	*/
	
	/*
	--maincolor : #ffccaa;
	*/
	
	--maincolor : #ffd9c7;
	--subcolor : #ffaa6644;
	--h2color : #60B630;
	--h3color : #ffeedd;
	--buttoncolor : #9c5e31;
	--detailcolor : #e9e2c6;
	--lightgray : #ccc;
	--pointcolor : #6f89a2;
	
	/*パステルカラー*/
	--pastelorange : #FF9977;
	--pastelpink : #FF90BC;
	--pastelcream : #FFF6DA;
	--pastelgreen : #A7CC23;
	
	/* ニュアンスカラー */
	
	/* modal用 */
	--modalorange : #FFC8A2;
	--modalpink1 : #FFE4EA;
	--modalpink2 : #FFC9D1;
	--modalpink3 : #FFB6C1;
	--modalgreen : #AAFFAA;
}

/* bootstrap用の追加 */
.justify-content-evenly{
	justify-content: space-evenly!important;
}
/* 共通パーツ body */
body h1{
	position:relative;
	font-size:3em;
	font-weight: bold;
	color:var(--maincolor);
	padding:2em 0;
	background-image:url("./img/header-bg.webp");
	background-position:center;
	background-size:cover;
	background-repeat: no-repeat;
}

body h1:before{
	content:"";
	position: absolute;
	background-image:url("./img/h1-bg.png");
	background-size:8em auto;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0.7;
	width:100%;
	height:100%;
	top:0;
	left: 0;
	z-index:0;
}

body h1 > span{
	position:relative;
	color:#b24b00;
	z-index: 1;
}

body h2{
	font-family: "M PLUS Rounded 1c", sans-serif!important;
	color:var(--h2color);
	font-size:2.5em;
	font-weight: bold;
}

body a.h3-a:hover{
	text-decoration: none;
}

body a.h3-a:hover > h3{
	background:white;
	border: 2px solid var(--pastelgreen);
	border-radius: 3px;
}

body h3{
	margin:0;
	padding:0.5em 1.5em 0.5em 0.5em;
	font-weight: bold;
	color:var(--pastelgreen);
	background:var(--pastelcream);
	border: 2px solid var(--pastelcream);
	transition: all 0.3s;
}

body h4{
	font-weight:bold;
}

div.menu-blank{
	padding-top:140px;
}

.align-center{
	text-align:center;
}

.align-left{
	text-align:left;
}

.margin-top1{
	margin-top:1rem;
}

/* link-button */
a.link-button,
div.tel-link > a,
div.mail-link > a{
	display: inline-flex;
	color:black;
	margin-top:1.5em;
}

a.link-button:hover,
div.tel-link > a:hover,
div.mail-link > a:hover{
	color:black;
	text-decoration: none;
}

a.link-button > span,
div.tel-link > a > span,
div.mail-link > a > span{
	font-size:1.15em;
	font-weight: bold;
	background: var(--subcolor);
	padding:0.5em 1.5em;
	border:2px solid white;
	border-radius:3em;
	transition:all 0.3s;
}

a.link-button:hover > span,
div.tel-link > a:hover > span,
div.mail-link > a:hover > span{
	background:unset;
	border:2px solid var(--maincolor);
}

/* end link-button */


/*フォントサイズの変更*/
li#medium,li#large, li#extra-large{
	color: var(--maincolor);
	background: var(--subcolor);
}

dl.font-size-change{
	display: flex;
	align-items: center;
	margin: 0;
}

dl.font-size-change>dt{
	color:var(--pointcolor);
}

/* フォントサイズ変更button */
dl.font-size-change>dd{
	margin-bottom:0;
}

dd > button{
	color:var(--buttoncolor);
	background-color:var(--maincolor);
	font-weight: bold;
	margin: 0 0.1em;
	padding:0.25em;
	border:none;
	transition:all 0.3s;
}

dd > button:focus{
	outline:unset;
}

dd > button:hover,
dd > button.active{
	color:var(--maincolor);
	background-color:var(--buttoncolor);
}




/* TOP slider */

#fade-slide-conatner{
	/* height:95vh; */
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: 0.9;
	background-size: contain;
	background-color: #272727;
	position:relative;
	margin:168px 0 0;
	padding:0;
}
/* iPad 縦向きのみ */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation:portrait) {
	#fade-slide-conatner{
		/* height:65vh; */
	}
}

#fade-slide-conatner .slider-size{
	position:relative;
	width:100%;
	height:100%;
	visibility: hidden;
	z-index:-999;
}

#fade-slide-conatner .fade-slider{
	width: 100%;
	height: 100%;
	object-fit: cover;
	position:absolute;
	opacity: 0;
	visibility: hidden;
	top:0;
	z-index: 1;
}
#fade-slide-conatner ul li.fade-slider:first-child{
	opacity: 0;
}
#fade-slide-conatner .fade-slider img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

ul.slider-after:after{
	content:"";
	position: absolute;
	background-image: url("img/catch.png");
	background-size: contain;
	background-repeat: no-repeat;
	width:100%;
	height:25%;
	left:-30px;
	bottom:15%;
	bottom:15%;
	z-index:999;
}


/* end TOP slider */




/* 共通パーツ header*/
header{
	position:fixed;
	width:100%;
	top:0;
	z-index: 999;
}

div.menu-box{
	margin-bottom:1em;
}

nav.header-menu{
	background:white;
	padding:3em 0 0;
}

div.menu-logo a.menu-logo-link{
	display: inline-block;
	width: 65%;
}

div.menu-logo a.menu-logo-link:hover{
	text-decoration: none;
}

a.menu-logo-link > img.logo-img{
	width:100%;
	transition:all 0.3s;
}

a.menu-logo-link:hover > img.logo-img{
	opacity: 0.6;
}


div.menu-logo h1.menu-h1{
	display: flex;
	align-items:center;
	font-size:1.5em;
	font-weight: bold;
	color:black;
	margin:0;
	transition:all 0.3s;
}

div.menu-logo a.menu-logo-link:hover h1.menu-h1{
	opacity: 0.6;
}

div.menu-logo h1.menu-h1:before{
	content:"";
	display: inline-block;
	background-image:url(img/icon.png);
	background-size:contain;
	width:1.5em;
	height:1.5em;
	margin-right:0.25em;
}



div.menu-lists{
	position:relative;
}

div.menu-lists:before{
	content:"";
	position:absolute;
	background-color: var(--maincolor);
	top:0;
	left:-25vw;
	width:150vw;
	height:100%;
	z-index:0;
}

ul.menu-list{
	display: flex;
	position:relative;
	justify-content: space-between;
	list-style:none;
	margin:0;
	padding:0;
	z-index:1;
}

li.menu-items{
	position:relative;
	padding:1em 0;
}
li.menu-items:has(.pull-down)::after {
	content: "";
    position: absolute;
    top: calc(50% - 3px);
    right: -1em;
    border: 6px solid transparent;
    border-top: 7px solid white;
}
li.menu-items > a.menu-item{
	display: inline-block;
	position: relative;
	color:var(--buttoncolor);
	font-weight: bold;
	height:100%;
}

li.menu-items > a.menu-item:after{
	content:"";
	position: absolute;
	background-color:var(--h3color);
	bottom:-0.2em;
	left:0;
	width:0;
	height:2px;
	transition:all 0.3s;
}

li.menu-items > a.menu-item:hover{
	text-decoration: none;
}

li.menu-items > a.menu-item:hover:after{
	width:100%;
}

ul.pull-down{
	position: absolute;
	padding:0;
	top: 3.5em;
	margin: 0;
	border-radius: 0 0 5px 5px;
	background:var(--h3color);
}

li.pull-down-items{
	display: block;
	list-style:none;
	min-width: fit-content;
	margin:0;
	padding:0 0.5em;
	line-height: 0;
	transform: scaleY(0);
	transition:all 0.3s;
}

li.pull-down-items.is-active{
	line-height: 2;
	transform: scaleY(1);
}

li.pull-down-items > a.drop-menu-item{
    position: relative;
    color: var(--buttoncolor);
    font-weight: bold;
	white-space:nowrap;
}

li.pull-down-items > a.drop-menu-item:after{
	content: "";
	position: absolute;
	background-color: var(--maincolor);
	bottom: -0.2em;
	left: 0;
	width: 0;
	height: 2px;
	transition: all 0.3s;
}

li.pull-down-items > a.drop-menu-item:hover{
	text-decoration: none;
}

li.pull-down-items > a.drop-menu-item:hover:after{
	width:100%;
}

div.sp-menu{
	display:none;
	position: relative
}

div.sp-menu:before{
	content:"";
	position: absolute;
	background: var(--maincolor);
	width: 150vw;
	height: 100%;
	left: -30%;
}

/* burger-menu */
div.burger-box{
	text-align:right;
}

button.burger-button{
	position:relative;
	width: inherit;
	height:inherit;
	margin:0;
	padding: 0;
	border:unset;
	transition:all 0.3s;
	cursor: pointer;
}

button.burger-button:focus{
	outline:none;
}

button.burger-button > span{
	display: block;
	position:relative;
	left:50%;
	width:4em;
	height:4em;
	align-content: center;
	transform: translateX(-50%);
	background: var(--maincolor);
    color: var(--buttoncolor);
    font-weight: bold;
}

div.burger-menu-box{
	display: flex;
	position: absolute;
	right:0;
	flex-direction: column;
	justify-content: center;
	width:100%;
	height:auto;
	background: transparent;
	font-weight: bold;
	opacity: 0;
	background:white;
	visibility: hidden;
	transition: all 0.3s;
	z-index: 9999;
}

div.burger-menu-box.is-active{
	position: fixed;
	top:auto;
	visibility: visible;
	opacity: 1;
}

div.burger-menu-box{
	background: var(--maincolor);	
}

div.burger-menu-box ul.burger-menu-list{
	list-style: none;
	margin:0;
	padding:0;
}

ul.burger-menu-list > li.burger-menu-items{
	
}

ul.burger-menu-list > li.burger-menu-items > a{
	display: inline-block;
	color:var(--buttoncolor);
	width:100%;
	height:100%;
	padding:0.5em 0;
	transition: all 0.3s;
}

ul.burger-menu-list > li.burger-menu-items > a:hover{
	text-decoration: none;
	background:var(--h3color);
}

/* end burger-menu */

/* end header */



/* 共有パーツ footer */
div.footer-bg{
	padding-top:5em;
	padding-bottom:1em;
	background-image:url(img/footer-bg.webp);
	background-position:bottom;
	border-bottom:1em solid var(--maincolor);
}

a.footer-link1,
a.footer-link2{
	display:flex;
	justify-content: center;
	align-items:center;
	font-size:1.2em;
	font-weight:bold;
	color:black;
	background:white;
	text-align:center;
	width:100%;
	padding:0.5em 0;
	border:3px solid var(--maincolor);
	border-radius:3em;
	transition:all 0.3s;
}

a.footer-link1:hover,
a.footer-link2:hover{
	text-decoration:none;
	color:black;
	scale:1.05;
}

a.footer-link1:before{
	content:"";
	display: inline-block;
	background-image:url(img/link-img1.png);
	background-size: contain;
	background-repeat: no-repeat;
	width:2.25em;
	height:3.5em;
	margin-right:0.5em;
}

a.footer-link2:before{
	content:"";
	display: inline-block;
	background-image:url(img/link-img2.png);
	background-size: contain;
	background-repeat: no-repeat;
	width:3.25em;
	height:3.5em;
	margin-right:0.5em;
}

a.footer-link1 > div.link-button,
a.footer-link2 > div.link-button{
	display: inline-block;
	border-bottom:2px solid var(--maincolor);
}

ul.footer-menu-list{
	display: flex;
	justify-content: space-between;
	list-style:none;
	margin:0;
	padding:1.5em 0;
}

ul.footer-menu-list > li.footer-menu-items{
	padding:0.5em 1em;
	white-space: nowrap;
}

li.footer-menu-items a.footer-menu-item{
	position:relative;
	color:black;
	font-weight:bold;
}

li.footer-menu-items a.footer-menu-item:after{
	content:"";
	position:absolute;
	background-color:var(--maincolor);
	bottom:-0.2em;
	left:0;
	width:0;
	height:2px;
	transition:all 0.3s;
}

li.footer-menu-items a.footer-menu-item:hover{
	text-decoration:none;
}

li.footer-menu-items a.footer-menu-item:hover:after{
	width:100%;
}

div.sns-box{
	margin:1em 0 1.5em;
}

li.sns-icon{
	list-style: none;
}

li.sns-icon > a >img{
	transition:all 0.3s;
}

li.sns-icon > a:hover >img{
	scale:1.1;
}

li.sns-icon img{
	width: 60px;
}

h1.footer-menu-h1{
	display: flex;
	align-items:center;
	color:black;
	font-size:1.25em;
	font-weight: bold;
}

h1.footer-menu-h1:before{
	content:"";
	display: inline-block;
	background-image:url(img/icon.png);
	background-size:contain;
	width:1em;
	height:1em;
	margin-right:0.25em;
}

div.footer-menu-logo > img.logo-img{
	width:60%;
}

p.footer-munu-p{
	font-weight: bold;
}

p.footer-munu-p > span.br{
	margin-left:0.5em;
}

a.icmc-link > img{
	transition:all 0.3s;
}

a.icmc-link:hover > img{
	scale:1.05;
}

ul.sns-icons{
	display: flex;
	justify-content: space-between;
	width: 9em;
	margin: 0;
	padding: 0;
}

li.sns-icon a image{
	width:60px;
}

/* end footer */


/* 共通パーツ home body内 */
div.news-area div.news-title-box > h2,
div.link-area div.gallery-text > h2,
div.admission-information-area div.admission-information-box > h2{
	display: inline-block;
	position: relative;
	filter:drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white);
	transform:translateZ(0);
}

div.news-area div.news-title-box > h2:before,
div.link-area div.gallery-text > h2:before,
div.admission-information-area div.admission-information-box > h2:before{
	content:"";
	display: block;
	position:absolute;
	width:50%;
	height: auto;
	bottom:-0.1em;
	left:25%;
	border-bottom:2px solid black;
}

div.news-area div.news-title-box > h2 + p,
div.link-area div.gallery-text > h2 + p,
div.admission-information-area div.admission-information-box > h2 + p{
	font-size: 1.1em;
	font-weight: bold;
	margin:0;
	filter:drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white)drop-shadow(0px 0px 1px white);
	transform:translateZ(0);
}
/* end home body内 */


/* 共通パーツ index */
div.index-link-box{
	margin-bottom:3em;
	filter: drop-shadow(2px 2px 3px var(--lightgray));
	transform:translateZ(0);
}

div.index-link-content{
	background:white;
	padding:1em;
}

div.detail{
	text-align:right;
}

div.detail > a{
	color:black;
}

div.detail > a:hover{
	text-decoration:none;
}

div.detail > a > span{
	font-size:1em;
	font-weight: bold;
	background:var(--subcolor);
	padding: 0.5em 1.5em;
	border:2px solid white;
	border-radius:3em;
	transition: all 0.3s;
}

div.detail > a:hover > span{
	background:unset;
	border:2px solid var(--maincolor);
}

/* end index */


/* section */
section{
	margin:5em 0;
}
/* end section */


/* home news */
div.news-area{
	margin:5em 0;
}

div.news-area div.news-title-box{
	background-image: url(img/news-title-box-bg.jpg);
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	text-align: center;
	padding:20% 0;
}

div.news-area ul.news-lists{
	display: flex;
	flex-direction: column;
	list-style: none;
	margin:0;
	padding:0;
}

div.news-area li.news-list{
	display: inline-block;
	position:relative;
	margin-bottom:2em;
}

li.news-list a.news-link{
	position: relative;
	display: inline-block;
	color:black;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.15em;
}


li.news-list a.news-link:before{
	content:"";
	display: inline-block;
	position: absolute;
	background-color: white;
	width: 2.5em;
	height:calc(100% + 0.25em);
	border-bottom: 4px solid var(--detailcolor);
	transition: all 0.5s;
	z-index: 0;
}

li.news-list:nth-child(1) a.news-link:after,
li.news-list:nth-child(4) a.news-link:after{
	content:"";
	display: inline-block;
	position: absolute;
	background-color: white;
	width: 2.5em;
	height:100%;
	top:0;
	transition: all 0.5s;
	z-index: 1;
	background-image:url("img/news-list-ornament1.jpg");
	background-size: contain;
	background-repeat: no-repeat;
}

li.news-list:nth-child(2) a.news-link:after,
li.news-list:nth-child(5) a.news-link:after{
	content:"";
	display: inline-block;
	position: absolute;
	background-color: white;
	width: 2.5em;
	height:100%;
	top:0;
	transition: all 0.5s;
	z-index: 1;
	background-image:url("img/news-list-ornament2.jpg");
	background-size: contain;
	background-repeat: no-repeat;
}

li.news-list:nth-child(3) a.news-link:after,
li.news-list:nth-child(6) a.news-link:after{
	content:"";
	display: inline-block;
	position: absolute;
	background-color: white;
	width: 2.5em;
	height:100%;
	top:0;
	transition: all 0.5s;
	z-index: 1;
	background-image:url("img/news-list-ornament3.jpg");
	background-size: contain;
	background-repeat: no-repeat;
}

li.news-list a.news-link:hover{
	text-decoration: none;
}

li.news-list a.news-link:hover:before{
	width:100%;
}

div.news-box{
	position:relative;
	padding-right: 1em;
	z-index:1;
}

p.news-title{
	margin:0 0 0 3em;
}

span.news-date{
	display: block;
	color:var(--pointcolor);
	font-size: 1rem;
}

/* end home news */



/* home link */
div.link-area{
	background-image:url(img/link-area-bg2.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding:5em 0;
}



div.link-content{
	display: inline-block;
	position: relative;
	margin-bottom:3em;
}

div.link-content:before{
	content:"";
	position:absolute;
	background-image: url(img/white-border.png);
	width:100%;
	height: 100%;
	top:1em;
	left:1em;

}

a.link-a{
	color:black;
	transition:all 0.3s;
}

a.link-a:hover{
	color: black;
	text-decoration: none;
	filter: brightness(1.15);
}

div.link-area div.link-box{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	background-size: cover;
	background-position: center center;
	border:5px solid #c8e3ba;
	overflow: hidden;
	z-index:1;
}

div.link-box > img{
	width:100%;
}

div.gallery-text{
	text-align: center;
}

div.link-area div.link-box:before{
	content:"";
	position: absolute;
	background:#fff8;
	width:150%;
	height:60%;
	transform: rotate(-45deg);
}


/*
div.link-area div.about-img{
	background-image: url(img/about-img.jpg);
}

div.link-area div.campus-life-img{
	background-image: url(img/campus-life-img.jpg);
}

div.link-area div.link-box:before{
	content:"";
	position: absolute;
	background:#fff8;
	width:150%;
	height:60%;
	transform: rotate(-45deg);
	z-index:-1;
}
*/

/* end home link */


/* home admission-information */
a.admission-information-link{
	color:black;
	transition:all 0.3s;
}

a.admission-information-link:hover{
	color:black;
	text-decoration: none;
	opacity: 0.7;
}

div.admission-information-area{
	padding:10em 0;
	position: relative;
	background-image: url(img/admission-information-img.jpg);
	background-size:auto;
	background-repeat: no-repeat;
	background-position: right center;
}

div.admission-information-area:before{
	content:"";
	position: absolute;
	background: white;
	top:0;
	left:-55vw;
	width:100vw;
	height:100%;
	transform: skewX(25deg);
	z-index: 1;
}

div.admission-information-area:after{
	content:"";
	position: absolute;
	background: #fff8;
	top:0;
	left:-50vw;
	width:100vw;
	height:100%;
	transform: skewX(25deg);
	z-index: 0;
}

div.admission-information-area > div.container{
	position: relative;
	z-index:2;
}


div.admission-information-box{
	text-align: center;
}

div.kamoria-image{
	margin:5em 0;
}

div.kamoria-image > img{
	width:100%;
}


/* 学校案内 */
/*index*/


/* greetings */
div.greeting-box,
div.zaikousei-box{
	display:flex;
}
/* サイズ576px未満 */
@media (max-width: 575.99px) {
	div.greeting-box,
	div.zaikousei-box{
		flex-direction: column;
		align-items: center;
	}
}

div.img-box{
	height:fit-content;
	margin:1em 1em 0 0;
	padding:1em 1em 0;
	text-align: center;
	background: var(--maincolor);
}

div.greeting-box > div.img-box > p,
div.zaikousei-box > div.img-box > p{
	white-space:nowrap;
}

div.padding-bottom1{
	padding-bottom:1rem;
}

div.bg-none{
	background:unset;
}

div.img-box > p{
	margin:0.5em 0;
}

div.img-box + p{
	margin-top:1em;
}

span.blank-box3{
	margin:1.5em;
}

/* overview */
p.gaiyo-text{
	margin-top:1em;
}

table.gaiyo-table{
	margin-top: 3em;
	width:100%;
	border: 3px solid var(--lightgray);
}

table.gaiyo-table th,
table.gaiyo-table td{
	border:1px solid var(--lightgray);
}

table.gaiyo-table th{
	background:var(--subcolor);
	text-align:center;
	padding:0.5em 0;
}

table.gaiyo-table td{
	padding-left:1em;
}

/* objective */
p.abjective-text{
	margin-top:1em;
}

div.diploma-box > h4{
	margin-top:1em;
}

div.abjective-list-box{
	margin-top:1em;
}

div.abjective-list-box > ol{

}

div.abjective-list-box > ol > li{
	margin-bottom:0.25em;
}


/* equipment */
div.equipment-box{
	margin-top:3em;
}

div.equipment-box > h4{
	margin-bottom:1em;
}

p.equipment-content{
	background:snow;
	/*height:calc(100% - 20px);*/
	border:1px solid var(--lightgray);
	padding:0.75em;
}



/* access */
h4.journey-h4{
	margin-top:1em;
}





/* キャンパスライフ */
/* index */


/* schedule */
div.comment-box{
	margin-top:1em;
}

table.schedule-table{
	width:100%;
	margin-top:3em;
	border: 3px solid #ccc;
}

table.schedule-table > thead > tr{
	font-size:1rem;
	font-weight: bold;
	background:var(--subcolor);
}

table.schedule-table th,
table.schedule-table td{
	border: 1px solid #ccc;
	padding: 1em 0;
}

tr.kyuka-tr > td.w-kyuka{
	position:relative;
}

tr.kyuka-tr > td.w-kyuka:after{
	content: "冬期\A休暇";
	white-space: pre;
	position: absolute;
	display: inline-block;
	height: 100%;
	align-content: center;
	top: 0;
	left: 10%;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	padding: 0 0.5em;
}






/* curriculum */
p.curriculum-text{
	display:flex;
	margin-bottom: 1em;
}

p.curriculum-text:before{
	display: inline-block;
	color:var(--maincolor);
	font-weight: bold;
	flex-shrink:0;
}

p.curriculum-text > span.point{
	color:var(--maincolor);
	font-weight: bold;
}

p.curriculum-text:has(span.point){
	display: block;
}

p.curriculum-point1:before{
	content:"科学的思考の基盤";
}	

p.curriculum-point2:before{
	content:"人間と生活、社会の理解";
}	

p.curriculum-point3:before{
	content:"人体の構造と機能";
}	

p.curriculum-point4:before{
	content:"疾病の成り立ちと回復の促進";
}	

p.curriculum-point5:before{
	content:"健康支援と社会保障制度";
}	

p.curriculum-point6:before{
	content:"基礎看護学";
}	

p.curriculum-point7:before{
	content:"地域・在宅看護論";
}	

p.curriculum-point8:before{
	content:"成人看護学";
}	

p.curriculum-point9:before{
	content:"老年看護学";
}	

p.curriculum-point10:before{
	content:"小児看護学";
}	

p.curriculum-point11:before{
	content:"精神看護学";
}	

div.training-facility-box{
	margin-top:2.25em;
}

div.training-facility-content{
	
}

table.curriculum-table{
	margin-top:1.5em;
}

table.curriculum-table th.process1{
	text-align: center;
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	white-space: nowrap;
}

table.curriculum-table th.subject1,
table.curriculum-table th.subject2,
table.curriculum-table th.subject3{
	background:#e2fce5;
	padding:1em 0;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	text-align:center;
	width:30%;
}

td.table-content,
td.jissyu-table{
	padding:1em 0.5em;
	border: 1px solid #ccc;
	vertical-align:top;
}

table.curriculum-table td.table-content > span{
	display:inline-block;
	color:#666;
	background:#c1f3c8;
	font-size:0.9em;
	margin:0.5em 0.25em;
	padding:0.25em 0.5em;
	border-radius: 1em;
}

/* cultural-festival */



/* admission-information */
/* gakuhi */
table.tuition-table{
	width: 100%;
	margin:2em 0;
}

table.tuition-table td{
	font-size: 0.9em;
	padding:0.25em;
	border: 1px solid #ccc;
}

table.tuition-table td.bg-main{
	background:var(--maincolor);
}









p.kome{
	position:relative;
	margin:0;
	padding-left:2em;
}

p.kome:before{
	content:"※";
	position:absolute;
	left:0;
}

/* kengakukai */


/* Q&A */
div.QA-box{
	margin-bottom:3em;
}

ul.QA-content{
	display: flex;
	flex-direction: column;
	list-style: none;
	margin:0;
	padding:0;
}

ul.QA-content > li.QA-item{
	display: inline-block;
	border:1px solid var(--lightgray);
	margin-bottom:3em;
}

button.QA-question{
	position: relative;
	width:100%;
	margin: 0;
	padding:0;
	border:unset;
	text-align:left;
	cursor: pointer;
	z-index:1;
}

button.QA-question:focus{
	outline:none;
}

button.QA-question:after{
	content:"";
	display: inline-block;
	position: absolute;
	width:10px;
	height:10px;
	top:50%;
	right:1.25em;
	border-top:3px solid var(--maincolor);
	border-left:3px solid var(--maincolor);
	transform: rotate(-135deg) translateY(9px);
	transition: all 0.3s;
}

button.QA-question.is-open:after{
	transform: rotate(45deg) translateY(-10px);
}


button.QA-question > h3.h3-q{
	font-size:1.5em;
}

div.QA-answer{
	position:relative;
	line-height: 0;
	opacity: 0;
	z-index:0;
	transition: all 0.3s;
}

div.QA-answer > p.p-a{
	margin:0;
	padding:0 1em;
	overflow: hidden;
	transition: all 0.1s;
}

div.QA-answer.is-open{
	line-height: 1.5;
	opacity: 1;
}

div.QA-answer.is-open > p.p-a{
	padding:1em;
}

/* voice */
div.survey-box{
	margin-top:3em;
}

div.survey-box > h4{
	margin-bottom:1.5rem;
}

div.survey-content{
	margin:2em 0;
	padding:1.5em 1em;
	border:2px solid var(--lightgray);
	border-radius: 0.5em;
}

div.survey-content > h5{
	display:inline-block;
	border-bottom:2px solid var(--maincolor);
}

div.survey-content > ul{
	margin:0;
}

div.survey-content > h6{
	font-size:1.15em;
	margin-top: 1rem;
}

div.graduation-content{
	margin:1.5em 0;
	padding:1em;
	border: 3px solid var(--lightgray);
	border-radius: 0 1.5em 0 1.5em;
}


/* 学生の1日 modal */
table.schedule-table button.btn-primary{
	color:black;
	transition:all 0.3s;
}

table.schedule-table button.btn-primary:hover{
	opacity: 0.6;
}

table.schedule-table button.modal-orange{
	background-color:var(--modalorange);
	border-color:var(--modalorange);
}

table.schedule-table button.modal-orange:focus,
table.schedule-table button.modal-pink1:focus,
table.schedule-table button.modal-pink2:focus,
table.schedule-table button.modal-pink3:focus,
table.schedule-table button.modal-green:focus,
table.curriculum-table button.modal-jissyu:focus{
	box-shadow:0 0 0 0.1rem black;
}

table.schedule-table button.modal-orange:active{
	background-color:var(--modalorange)!important;
	border-color:var(--modalorange)!important;
}



table.schedule-table button.modal-pink1{
	background-color:var(--modalpink1);
	border-color:var(--modalpink1);
}

table.schedule-table button.modal-pink1:active{
	background-color:var(--modalpink1)!important;
	border-color:var(--modalpink1)!important;
}


table.schedule-table button.modal-pink2{
	background-color:var(--modalpink2);
	border-color:var(--modalpink2);
}

table.schedule-table button.modal-pink2:active{
	background-color:var(--modalpink2)!important;
	border-color:var(--modalpink2)!important;
}


table.schedule-table button.modal-pink3{
	background-color:var(--modalpink3);
	border-color:var(--modalpink3);
}

table.schedule-table button.modal-pink3:active{
	background-color:var(--modalpink3)!important;
	border-color:var(--modalpink3)!important;
}

table.schedule-table button.modal-green{
	background:var(--modalgreen);
	border-color:var(--modalgreen);
}

table.schedule-table button.modal-green:active{
	background-color:var(--modalgreen)!important;
	border-color:var(--modalgreen)!important;
}

table.schedule-table button.modal-green:focus{
	box-shadow:0 0 0 0.1rem black;
}

table.curriculum-table button.modal-jissyu{
	background:#c1f3c8;
	border-color:#c1f3c8;
	margin: 0.5em 0.25em;
}

table.curriculum-table button.modal-jissyu:active{
	color:#666!important;
	background-color:#c1f3c8!important;
	border-color:#c1f3c8!important;
}


table.curriculum-table button.modal-jissyu:hover{
	opacity: 0.6;
}

table.curriculum-table button.modal-jissyu{
	color:#666;
	transition:all 0.3s;
}





table.schedule-table span{
	display: block;
	margin-bottom:0.5em;
}


div.modal-image > img{
	width:100%;
	margin-bottom:1em;
}



/* 年間行事 modal */


/* 看護師国家試験・就職 */
table.percent-table,
table.situation-table{
	width:100%;
}

table.percent-table td,
table.situation-table td{
	border:1px solid #ccc;
	text-align: center;
	padding:0.25em 0;
}

table.percent-table tr.percent-list,
table.percent-table td:nth-child(1){
	background:var(--maincolor);
}

div.support-box{
	margin-top: 1.5em;
	padding: 1em;
	border: 3px solid var(--pastelorange);
	border-radius: 1em;
}




/* privacy */
div.privacy-text > p{
	margin-bottom:2.5em;
}

/* contact */
div.contact-box{
	background: #fffbea;
	text-align: center;
	margin-top:1.5em;
	padding-bottom:1.5em;
	border:3px solid #ccc;
}

div.contact-box > h4{
	padding: 0.5em 0;
	background: #fed;
	border-bottom: 1px solid #ccc;
}

/* privacy */
div.privacy-text > h4.sosyoku1,
div.privacy-text > h4.sosyoku2,
div.privacy-text > h4.sosyoku3,
div.privacy-text > h4.sosyoku4,
div.privacy-text > h4.sosyoku5{
	position:relative;
	padding-left:1.5em;
	color:#e4854c;
}

div.privacy-text > h4.sosyoku1:before,
div.privacy-text > h4.sosyoku4:before{
    content: "";
	display: inline-block;
	position: absolute;
    background-image: url("./img/news-list-ornament1.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

div.privacy-text > h4.sosyoku2:before,
div.privacy-text > h4.sosyoku5:before{
    content: "";
	display: inline-block;
	position: absolute;
    background-image: url("./img/news-list-ornament2.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

div.privacy-text > h4.sosyoku3:before{
    content: "";
	display: inline-block;
	position: absolute;
    background-image: url("./img/news-list-ornament3.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	top:0;
	left:0;
	width:100%;
	height:100%;
}



/* サイズ768px未満 */
@media (max-width: 767.99px) {
	ul.QA-content > li.QA-item{
		margin-bottom:1.5em;
	}
	
	button.QA-question > h3.h3-q{
		font-size:1.2em;
	}
	
	div.QA-answer > p.p-a,
	div.QA-answer.is-open > p.p-a{
		font-size:1em;
	}
	
	.margin-bottom-md{
		margin-bottom:1em;
	}
}

/* サイズ576px未満 */
@media (max-width: 575.99px) {
	button.QA-question > h3.h3-q{
		font-size:1.05em;
	}
}

/* voice */

/* サイズ1440px未満 */
@media (max-width: 1439.5px) {
	ul.slider-after:after{
		bottom:5%;
	}
}
	
/* サイズ1200px未満 */
@media (max-width: 1199.5px) {
	div.menu-logo h1.menu-h1{
		font-size:1.25em;
	}
	
	div.link-area div.link-box{
	}
	
	#fade-slide-conatner{
		margin:160px 0 0;
	}
	
	/* schedule */
	div.col-12:has(.schedule-table){
		overflow-x: scroll;
	}
	
	table.schedule-table{
		font-size:1em;
		white-space:nowrap;
	}
	

	
}

/* サイズ992px未満 */
@media (max-width: 991.5px) {
	div.menu-logo a.menu-logo-link{
		width:100%;
	}
	
	div.menu-logo h1.menu-h1{
		font-size:1.5em;
	}
	
	body h2{
		font-size:1.75em;
	}
	
	div.menu-lists:before{
		width:150vw;
		left:-25vw;
		border-radius:0;
	}
	
	nav.header-menu{
		padding:1.5em 0 0;
	}
	
	div.link-area div.link-box{
	}
	
	p.footer-munu-p > span.br{
		display: block;
		margin-left:0;
	}
	
	ul.slider-after:after{
		height:20%;
		bottom:7.5%;
	}
	
	table.schedule-table th,
	table.schedule-table td{
		width:7em;
	}
	
	#fade-slide-conatner{
		margin:142px 0 0;
	}
}

/* サイズ768px未満 */
@media (max-width: 767.99px) {
	nav.header-menu{
		overflow-x:clip;
	}
	
	body h2{
		font-size: 1.65em;
	}
	
	div.font-size-change-box{
		display: none;
	}
	
	div.pc-menu{
		display:none;
	}
	
	div.sp-menu{
		display:block;
	}	
		
	ul.menu-list{
		font-size:0.85em;
	}
	
	body h1{
		font-size:2.25em;
	}
	
	/*
	#fade-slide-conatner{
		height:65vh;
	}
	*/
		
	ul.slider-after:after{
		display: inline-block;
		width:calc(100% - 5em);
		height:100%;
		margin:0 0 1em;
		background-position:bottom;
		left: 0;
		bottom:0;
	}
	
	/* footer */
	ul.footer-menu-list{
		flex-wrap:wrap;
		justify-content: space-around;
	}
	
	/* home news*/
	div.news-area li.news-list{
		display:block;
	}
	
	/* curriculum */
	p.curriculum-text{
		flex-direction: column;
	}
	
	p.curriculum-text > span{
		display: none;
	}
	
	p.curriculum-text > span.point{
		display:contents;
	}
	
	div.footer-menu-logo > img.logo-img{
		width:80%;
	}
	
	#fade-slide-conatner{
		margin:156px 0 0;
	}
	
	/* サイズ768px未満　横向き */
	@media (orientation: landscape){
		#fade-slide-conatner{
			/*height:95vh;*/
			margin:0;
		}
		
		header {
			position: sticky;
            top: -93px;
		}
		div.burger-menu-box.is-active {
			top: 0;
			position:relative;
		}
		div.menu-blank{
			padding-top:0;
		}
	}	
}

/* サイズ576px未満 */
@media (max-width: 575.99px) {
	body h2{
		font-size:1.75em;
	}
	
	#fade-slide-conatner{
		margin:142px 0 0;
	}
}

/* サイズ500px未満 */
@media (max-width: 499.99px){
	div.footer-menu-logo > img.logo-img{
		width:100%;
	}
}

/* サイズ400px未満 */
@media (max-width: 399.99px){
	#fade-slide-conatner{
		margin:135px 0 0;
	}
}
/* js用 */
.fade-up{
	animation-name:fadeInAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeInAnime{
	from {
		opacity: 0;
		transform: translateY(100px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.fade-Right{
	animation-name:fadeRightAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeRightAnime{
	from {
		opacity: 0;
		transform: translateX(100px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.fade-Left{
	animation-name:fadeLeftAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeLeftAnime{
	from {
		opacity: 0;
		transform: translateX(-100px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}


/* カリキュラム確認用 */
/* カリキュラム2 */
div.class-button{
	position:relative;
	margin:3em 0 1.5em;
	z-index: 1;
}

div.top-mp{
	padding-top:180px;
	margin-top:-180px;
}

a.class-links{
	display: inline-block;
	font-size: 1.25rem;
	text-align: center;
	background: #ccc;
	padding: 0.5em 0;
	width: 100%;
	height: 100%;
	border-radius: 3em;
}

table.curriculum2-table{
	margin:1.5em 0 3em;
}

table.curriculum2-table th.process1{
	background:#e2fce5;
	text-align:center;
	padding:1em;
	white-space: nowrap;
	border:1px solid #ccc;
}

table.curriculum2-table td > span{
	display: inline-block;
	color: #666;
	background: #c1f3c8;
	font-size: 0.9em;
	margin: 0.5em 0.25em;
	padding: 0.25em 0.5em;
	border-radius: 1em;
}

@media (max-width: 767.99px) {
	table.curriculum2-table tr{
		display: flex;
		flex-direction: column;
	}
}

/* カリキュラム3 */
table.curriculum3-table{
	margin:1.5em 0 3em;
}

table.curriculum3-table th.subject1,
table.curriculum3-table th.subject2,
table.curriculum3-table th.subject3{
	width: 30%;
	background: #e2fce5;
	padding: 1em 0;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	text-align: center;
}

table.curriculum3-table .process1{
	text-align: center;
	white-space: nowrap;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

table.curriculum3-table td > span{
	display: inline-block;
	color: #666;
	background: #c1f3c8;
	font-size: 0.9em;
	margin: 0.5em 0.25em;
	padding: 0.25em 0.5em;
	border-radius: 1em;
}


/* カルーセルテスト */
div.carousel_area{
	display: block;
	margin-top:3em;
	/*padding: 20px 0px;*/
	/*height: 250px;*/
	position: relative;
	overflow: hidden;
	background: #f5f5f6;
}

div.height-set{
	width:25%;
}

div.height-set > img{
	width:100%;
	opacity:0;
}

div.carousel_block{
	display: block;
	/*padding: 10px 15px;*/
	width: 25%;
	position: absolute;
	top: 50%;
	background: white;
	border-radius: 15px;
	transform: translate(0%, -50%);
	transition: opacity 0.5s ease,left 0.5s ease;

}

div.carousel_block--01{
	left: calc(25% * -1);
	opacity: 0;
}

div.carousel_block--02{
	left: calc(25% * 0);
	opacity: 1;
}

div.carousel_block--03{
	left: calc(25% * 1);
	opacity: 1;
}

div.carousel_block--04{
	left: calc(25% * 2);
	opacity: 1;
}

div.carousel_block--05{
	left: calc(25% * 3);
	opacity: 1;
}

div.carousel_block--06{
	left: calc(25% * 4);
	opacity: 0;
}

div.carousel_block--07{
	left: calc(25% * 5);
	opacity: 0;
}

div.carousel_block--08{
	left: calc(25% * 6);
	opacity: 0;
}

div.carousel_block--09{
	left: calc(25% * 7);
	opacity: 0;
}

div.carousel_block--10{
	left: calc(25% * 8);
	opacity: 0;
}

div.gallery-img > img{
	width:100%;
}


/* サイズ768px未満 */
@media (max-width: 767.99px) {
	
	div.height-set{
		width: 50%;
	}	
	
	div.carousel_block{
		width: 50%;
	}
	
	div.carousel_block--01{
		left: calc(50% * -1);
		opacity: 0;
	}

	div.carousel_block--02{
		left: calc(50% * 0);
		opacity: 1;
	}

	div.carousel_block--03{
		left: calc(50% * 1);
		opacity: 1;
	}

	div.carousel_block--04{
		left: calc(50% * 2);
		opacity: 1;
	}

	div.carousel_block--05{
		left: calc(50% * 3);
		opacity: 0;
	}

	div.carousel_block--06{
		left: calc(50% * 4);
		opacity: 0;
	}

	div.carousel_block--07{
		left: calc(50% * 5);
		opacity: 0;
	}

	div.carousel_block--08{
		left: calc(50% * 6);
		opacity: 0;
	}

	div.carousel_block--09{
		left: calc(50% * 7);
		opacity: 0;
	}

	div.carousel_block--10{
		left: calc(50% * 8);
		opacity: 0;
	}
}

