@charset "utf-8";

/* =======================================================
	common.css
======================================================= */

/* レスポンシブ
------------------------------------- */
/* // PC表示 */
@media screen and (min-width: 768px) {
	.sp-only { display: none !important; }
}

@media screen and (min-width: 321px) {
	.sp32-only { display: none !important; }
}

@media screen and (min-width: 1025px) {
	.tab-only { display: none !important; }
}

@media screen and (max-width: 767px) {
	.pc-only { display: none !important; }
}

@media screen and (max-width: 1024px) {
	.pct-only { display: none !important; }
}

/* 共通
------------------------------------- */
html { font-size:  62.5%;}
body {
  font-family: "游ゴシック体", "YuGothic", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ　Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  font-size:  1.5rem;
  /* font-size:  87.5%; */
  line-height: 1.8;
  color: #4b4746;
	letter-spacing: 0 !important;
  /* min-width: 1024px; */
	-webkit-text-size-adjust: 100%;
	animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

@keyframes fadeIn {
  0% { opacity: 0}
  100% { opacity: 1}
}

@-webkit-keyframes fadeIn {
  0% { opacity: 0}
  100% { opacity: 1}
}

a {
	display: block;
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
}
a:visited {
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
}
a:hover {
	color: #4b4746;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 0.7;
}

.anchor {
  display: block;
  padding-top: 85px;
  margin-top: -85px;
}

.c-inner,.c-inner-12,.c-inner-11 {
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	overflow: hidden;
}
.c-inner-12,.c-inner-11 {
	max-width: 1200px;
	padding: 0;
}
.c-inner-11 { max-width: 1100px;}

.f-right { float: right !important;}
.f-left { float: left !important;}

.ov-hidden { overflow: hidden;}
.d-flex { display: flex;}


/* フォント
------------------------------------- */
.f-hiragino { font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", sans-serif;}


/* フォントサイズ
------------------------------------- */
h1,h2,h3,h4,h5 {
	font-weight: 900;
	letter-spacing: 0.05em;
}

.fs-small { font-size: 1.4rem !important; }
.fs-medium  { font-size: 1.8rem !important; }
.fs-large  { font-size: 2.2rem; }


/* フォントウェイト
------------------------------------- */
.fw-normal { font-weight: 400;}
.fw-bold { font-weight: 700;}
.fw-e-bold { font-weight: 900;}

.lh-12 { line-height: 1.2 !important;}

/* 配置
------------------------------------- */
.ta-center { text-align: center !important;}
.ta-right { text-align: right !important;}
.ta-left { text-align: left !important;}

/* 余白
------------------------------------- */
.p-60 { padding: 60px 0 !important;}
/* .mb-none { margin-bottom: none;} */
/* .ml-20 { margin-left: 20px;} */
.ml-40 { margin-left: 40px;}
.mr-40 { margin-right: 40px;}
.mt-35 { margin-top: 30px !important;}
.mt-46 { margin-top: 46px;}
.mb-20 { margin-bottom: 20px !important;}
/* .mb-40 { margin-bottom: 60px !important;} */

/* 角丸
------------------------------------- */
.b-radius { border-radius: 6px;}

/* ブロック
------------------------------------- */
.l-block { display: block !important;}
.l-iblock { display: inline-block !important;}

/* アニメーション
------------------------------------- */
/* フェードインしながら少し上へ */
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.js-animate {
  opacity: 0;
  -ms-filter: "alpha(opacity=0)";
  filter: alpha(opacity=0);
}
.js-animate.is--animate {
  -webkit-animation: fadeInUp 1s 1 ease-in-out;
  animation: fadeInUp 1s 1 ease-in-out;
  -webkit-animation-fill-mode: backwards;
  animation-fill-mode: backwards;
  opacity: 1;
  -ms-filter: "alpha(opacity=100)";
  filter: alpha(opacity=100);
}

/* ヘッダー
------------------------------------- */
.bl-header {
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 80px;
	margin: 0 auto;
	background: #fff;
	z-index: 2000;
}

.bl-header .c-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding:20px  0 10px;
}
.bl-header h1 span {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
}
.bl-header h1 img { width: 240px;}
.bl-header nav {
	display: flex;
	align-items: center;
}
.bl-header nav ul {
	display: flex;
	flex-direction: row;
}
.bl-header nav ul li {
	font-size: 1.5rem;
	font-weight: 600;
	margin-left: 30px;
}
.bl-header nav.pc-only { margin-right: 100px;}


/* ヘッダーメニュー
------------------------------------- */
	*, *:before, *:after {
		padding: 0;
		margin: 0;
		box-sizing: border-box;
	}
	.cp_cont { position: relative;}
	.cp_offcm01 {
		position: absolute;
		top: -38px;
		right: 0;
		display: inline-block;
		padding: 12px 12px 8px 12px;
		background: #f2f4f5;
	}
	/* menu */
	.cp_offcm01 .cp_menu {
		position: fixed;
		top: 66px;
		right: -170vw;
		width: 100%;
		height: 100%;
		padding-bottom: 100px;
		overflow-y: scroll;
		-webkit-transition: 0.53s transform;
		        transition: 0.53s transform;
		-webkit-transition-timing-function: cubic-bezier(.38,.52,.23,.99);
		        transition-timing-function: cubic-bezier(.38,.52,.23,.99);
		z-index: 1000;
	}
	.cp_offcm01 .cp_menu ul {
		width: 40%;
		margin: 0;
		-webkit-overflow-scrolling: touch;

	  display: flex;
	  flex-direction: column;
 		border-radius: 10px;
	}
	.cp_offcm01 .cp_menu li {
		display: inline-block;
		margin-left: 0;
		list-style: none;
		border-bottom: 1px dashed #fe8090;
	  background: #eeb0bb;
	}
	.cp_offcm01 .cp_menu li a {
		display: block;
		width: 100%;
		height: auto;
		padding: 20px;
		text-decoration: none;
		color: #fff;
		background: #d15662;
	}
	.cp_offcm01 .cp_menu li a:hover {
		background: #fe8090;
		opacity: 1;
	}
	.cp_offcm01 .cp_menu li:last-child {
		border-bottom: none;
	}
	.cp_offcm01 .cp_menu li.to-top img {
		width: 120px;
		margin: 2px 5px 0 0;
	}
	.cp_offcm01 span {
		display: block;
		font-size: 1rem;
		line-height: 1;
		margin-top: -3px;
	}

	.cp_offcm01 #cp_toggle01 {
		position: absolute;
		display: none;
		opacity: 0;
	}
	.cp_offcm01 #cp_toggle01:checked ~ .cp_menu {
		-webkit-transform: translateX(-100vw);
		        transform: translateX(-100vw);
	}

/* menu toggle */
	.cp_offcm01 #cp_toggle01 ~ label {
		display: block;
		-webkit-transition: 0.5s transform;
		        transition: 0.5s transform;
		-webkit-transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
		        transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
		text-align: center;
		color: #e35b6c;
	}
	.cp_offcm01 .cp_offcm01 .cp_menu li a {
		-webkit-transform: translateX(-100%);
		        transform: translateX(0);
	}
	.cp_offcm01 #cp_toggle01 ~ label::before {
		content: '';
		display: inline-block;
		width: 30px;
		height: 34px;
		background-image: url(../../img/common/menu-off.png);
		background-size: contain;
		vertical-align: middle;
	}
	.cp_offcm01 #cp_toggle01:checked ~ label::before {
		content: '';
		display: inline-block;
		width: 30px;
		height: 34px;
		background-image: url(../../img/common/menu-on.png);
		background-size: contain;
		vertical-align: middle;
	}



/* メイン
------------------------------------- */
main { margin-top: 80px;}

/* IE11 */
_:-ms-lang(x)::-ms-backdrop, #top h2 { margin-top: 80px;}
_:-ms-lang(x)::-ms-backdrop, .title { margin-top: 80px;}


/* フッター
------------------------------------- */


/*=======================================
 バナー  ※卒業生応援と共通 base@sp.css
=========================================*/
.l-link { padding: 85px 0 60px 0; }
.l-link .title {
	text-align: center;
	margin-bottom: 40px;
	margin-top: 20px;
}
.l-link .c-fb {
	width: 350px;
	float: left;
}
.l-link .block2 ul { justify-content: space-between;}
.l-link .block2 li { width: 15%;}
.l-link .block2 li img { width: 150px;}
.l-link .block2 li:nth-child(6n+1) {
	clear: both;
	margin-left: 0;
}

.l-sns { padding: 40px 0; }
.l-sns ul li { float: left; }


/*=======================================
 フッター  ※卒業生応援と共通 base@sp.css
=========================================*/
.c-wrap {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}
.c-wrap__1300 {
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.l-footer { border-top: 1px solid #DDDDDD; }
.l-footer__top { padding: 40px 0; }
.l-footer__top .c-wrap { flex-direction: row;}
.l-footer__top h1 {
	margin-top: 0;
}
.l-footer__top ul,
.l-footer__top p {
	width: auto;
	margin-left: 30px;
	color: #666;
}
.l-footer__top p a { display: inline-block;}

.l-footer__bottom {
	border-top: 1px solid #DDD;
	background: #F6F6F6;
	padding: 30px 0 40px 0;
}
.l-footer__bottom .c-wrap { justify-content: space-between;}
.l-footer__bottom .c-wrap ul { width: 20%;}
.l-footer__bottom .c-wrap ul:first-child,
.l-footer__bottom .c-wrap ul:last-child {	margin-left: 5px;}
.l-footer__bottom .c-wrap ul:last-child {	padding-left: 20px;}
.l-footer__bottom ul li {
	background: url(https://www.nuhw.ac.jp/applicant/img/common/footer_icon2.png) no-repeat left center;
	padding-left: 15px;
	font-size: 1.3rem;
}
.l-footer__bottom ul li a {
	display: block;
	color: #666;
	text-decoration: none;
}
.l-footer__bottom ul li.parent {
	background: url(https://www.nuhw.ac.jp/applicant/img/common/footer_icon1.png) no-repeat left center;
	padding-left: 20px;
	margin-left: -5px;
	font-size: 1.4rem;
}

.l-copy {
	background: #EEE;
	font-size: 71.4%;
	color: #666;
	text-align: center;
	padding: 10px 0;
}

/*=======================================
 ページトップへ  ※卒業生応援と共通 base@sp.css
=========================================*/
.l-pagetop {
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 999;
}
.l-pagetop img { width: 64px;}



/* ---------------------------------------------------------
 タブレット用 #iPad
--------------------------------------------------------- */
@media screen and (max-width: 768px) {

	.bl-header,.l-footer .c-inner,.l-footer .f-add .c-inner,.c-inner-11,.c-inner-12 {
		width: 96%;
		margin: 0 auto;
	}
	.bl-header { width: 100%;}
	.bl-header .c-inner { padding: 10px;}
	.bl-header h1 span {
		font-size: 1rem;
	}
	.bl-header nav { margin-right: 10px;}

	.l-footer__top h1 { margin-left: 20px;}
	.l-footer ul { margin: 0;}
	.l-footer__bottom ul li,.l-footer__bottom ul li.parent { font-size: 1.1rem;}
	.l-footer__bottom .c-wrap ul:first-child { margin-left: 10px;}
	.l-footer__bottom .c-wrap ul:last-child { padding-left: 8px;}

	.l-link { padding: 40px 0;}
	.l-link .block2 ul { margin: 0 15px;}
	.l-link .block2 li img { width: 115px;}

	.cp_offcm01 .cp_menu li.to-top a { padding-bottom: 12px;}
	.cp_offcm01 .cp_menu li.to-top img {
		width: 40%;
		display: block;
	}
}


/* ---------------------------------------------------------
  スマホ * 767px 以下 *
--------------------------------------------------------- */
@media screen and (max-width: 767px) {
	body {
		line-height: 1.8;
	}
	.c-inner {
		width: 98%;
		margin: 5px auto;
		padding: 30px 10px;
	}
	.c-inner-12 {
		width: 100%;
	}
	.sp-img img { width: 90%;}
	.sp-32only { display: none;}

	.bl-header { height: 56px;}
	.bl-header h1 { margin: 12px 0 10px 12px;}
	.bl-header h1 img { width: 60%;}

	.bl-header nav ul li {
		margin-left: 0;
		font-size: 1.4rem;
		font-weight: 500;
	}

	.anchor {
	  display: block;
	  padding-top: 51px;
	  margin-top: -51px;
	}


/* ヘッダー
------------------------------------- */
	.bl-header {
		width: 100%;
		height: 52px;
	}
	.bl-header .c-inner {
		width: 100%;
		margin-top: 0;
		padding: 0;
	}


/* ヘッダーメニュー
------------------------------------- */
	.cp_offcm01 {
		top: -25px;
		padding: 9px 12px;
	}
	.cp_offcm01 .cp_menu { top :53px; right: -146vw;}
	.cp_offcm01 .cp_menu ul { width: 60%; margin: 0 10px;}
	.cp_offcm01 .cp_menu li a { padding: 15px;}


/* メイン
------------------------------------- */
	main { margin-top: 55px;}


/* フッター
------------------------------------- */
	.l-link { padding: 45px 0 20px 0; }
	.l-link .c-wrap ul {
		justify-content: space-around;
		margin: 0 30px;
	}
	.l-link .block2 li img { width: 45px;}
	.l-footer{
		margin-top: 60px;
	}
	.l-footer__top { padding: 14px 0;}
	.l-footer__top .c-wrap {
		flex-direction: column;
		text-align: center;
	}
	.l-footer__top ul, .l-footer__top p {
		margin-left: 0;
		font-size: 1.2rem;
	}
	.l-footer__bottom { border-top: none;}

	.l-pagetop {
		right: 15px;
		bottom: 15px;
	}
	.l-pagetop img { width: 40px;}
}

/* ---------------------------------------------------------
  スマホ用 * 320px 以下 *
--------------------------------------------------------- */
@media screen and (max-width: 320px) {

	/*.bl-header {
		height: 60px;
	}*/
	.bl-header .c-inner h1 span {
		margin-bottom: 3px;
		line-height: 1.4;
	}
	.cp_offcm01 {
		/*top: -37px;*/
		padding: 10px 12px;
	}

	.l-link .c-wrap ul { margin: 0 15px;}
	.l-link .block2 li img { width: 40px;}
}
