@charset "UTF-8";
img{
max-width: 100%;
height: auto;
width /***/:auto;
}

a.tel{
	pointer-events:none;
}
.u_contents a.tel{
	color: #212121 !important;
	text-decoration: none !important;
}

/*-----------------------------------------------
__Layout
-----------------------------------------------*/
#container{
	display: -webkit-flex;
	display: flex;
}
#main{
  -webkit-flex: 1;
  flex: 1;
	overflow: hidden;
	z-index: 0;
	position: relative;
}
header#side{
	width: 250px;
	z-index: 10;
}

.lay_2c,.lay_3c{
	display: flex;
	margin: 10px auto 40px auto;
}
.lay_2c > div,
.lay_2c > section{
	width: 50%;
}
.lay_3c{
	justify-content: space-between;
}
.lay_3c > li{
	width: 32%;
}

.lay_padding{/* 幅せまめ */
	justify-content: space-between;
}
.lay_2c.lay_padding > div,
.lay_2c.lay_padding > section{
	width: 48%;
}

/*-----------------------------------------------
__Header
-----------------------------------------------*/
header#side{/*サイドバー全体の箱*/
    display: -webkit-flex;
    display: flex;
	flex-flow: column;
	position: relative;
}
header#side .box{/*サイドバー最後の要素*/
	position: fixed;
	left: 0;
	top: 0;
	min-height: 100%;
	width: 250px;
	background: #fff;
	border-right: 1px solid #ddd;
}
header#side h1,
header#side #logo{
	display: block;
	padding: 5% 0;
	text-align: center;
	border-bottom: 1px solid #ddd;
}
header #nav-content{
	display: flex;
	flex-direction: column;
	height: calc(100vh - 211px);
}
header#side nav .side_links{
	margin-top: auto;
}


/*-----------------------------------------------
__Global Navi
-----------------------------------------------*/
header#side .side_links{
	margin: 0 10px;
	padding-top: 10px;
}
header#side .side_links > li a{
	display: block;
	border-radius: 30px;
	padding: 10px;
	font-size: 90%;
	text-align: center;
	color: #fff;
	background: #2e4fb5;
	transition: all ease .3s;
}
header#side .side_links > li a:hover{
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
	background: #3d69f2;
	transform: translateX(3px);
}
header#side .side_links > li a .material-icons{
	font-size: 20px !important;
	vertical-align: top;
	margin-right: 5px;
}
header#side .side_links > li:last-of-type a{
	border: 1px solid #ddd;
	background: #fff;
	color: #212121;
	margin-top: 10px;
}

#fix_navi{
	box-sizing: border-box;
    position: fixed;
    transition: .3s;
    width: calc(100% - 250px);
	z-index: 10;
	background: rgba(255,255,255,0);
	border-bottom: 1px solid rgba(255,255,255,0);
	line-height: 24px !important;
}
#fix_navi a{
	color: #fff !important;
}
#fix_navi.transform{
	font-size: 90%;
	background:rgba(241,244,244,1.00);
	border-color: #ddd;
}
#fix_navi.transform a{
	color: #333 !important;
}
#under_fix_navi{
	box-sizing: border-box;
    position: fixed;
    transition: .3s;
    width: calc(100% - 250px);
	z-index: 10;
	font-size: 90%;
	background:rgba(241,244,244,1.00);
	border-bottom: 1px solid #ddd;
	line-height: 24px !important;
}
#fix_navi .box{
	border-bottom: 1px solid #fff;
	margin: 0 2%;
	display: flex;
	justify-content: space-between;
	color: #fff;
}
#fix_navi.transform .box{
	color: #212121;
	border: none;
}
#fix_navi .r_side{
	padding: 22px 0 18px 0;
}
#under_fix_navi .box{
	margin: 0 2%;
	display: flex;
	color: #212121;
	justify-content: space-between;
}
#fix_navi.transform .r_side,
#under_fix_navi .r_side{
	padding: 7px 0;
}

#fix_navi.transform a
#under_fix_navi a{
	color: #333 !important;
}
#fix_navi .r_side{
	margin-left: auto;
}
#fix_navi .box > ul,
#fix_navi .r_side,
#under_fix_navi .box > ul,
#under_fix_navi .r_side,
.change_btn{
	display: flex;
	flex-wrap: nowrap;
	white-space: nowrap;
}

#fix_navi .box > ul,
#fix_navi .box > ul > li{/* 訪問者別 */
	height: 65px;
	line-height: 65px !important;
}
#fix_navi .box > ul > li a,
#under_fix_navi .box > ul > li a{
	display: block;
	padding: 0 0.7em;
	position: relative;
}
#fix_navi .box > ul > li a::after,
#under_fix_navi .box > ul > li a::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	height: 4px;
	width: 0;
	background: #fff;
	transition: all ease .5s;
}
#fix_navi .box > ul > li a:hover::after,
#fix_navi .box > ul > li.current a::after,
#under_fix_navi .box > ul > li a:hover::after{
	width: 100%;
}

#fix_navi.transform .box > ul,
#under_fix_navi .box > ul,
#fix_navi.transform .box > ul > li,
#under_fix_navi .box > ul > li{
	height: 39px;
	line-height: 39px !important;
}
#fix_navi.transform .box > ul > li a::after,
#under_fix_navi .box > ul > li a::after{
	background: #333;
	height: 3px;
	bottom: -1px;
}
#under_fix_navi a{
	color:#212121;
}

.change_btn{
	height: 21px;
	vertical-align: middle;
	margin-right: 20px;
}
.change_btn dt{
	vertical-align: middle;
	margin-right: 7px;
}
.change_btn dd{
	width: 70px;
	border: 2px solid #fff;
	border-radius: 30px;
	overflow: hidden;
	height: 21px;
	vertical-align: top;
}
.change_btn button{
	color: #fff;
	cursor: pointer;
	text-align: center;
	margin: 0;
	width: 50%;
	height: 21px;
	line-height: 21px;
	vertical-align: top;
	font-weight: bold;
	box-sizing: border-box;
}
.change_btn button.current{
	color: #212121;
	background: #fff;
	cursor: default;
}
.change_btn button.small{
	padding-left: 10px;
}
.change_btn button.large{
	font-size: 105%;
	padding-right: 10px;
}
/*.transform*/
#fix_navi.transform .change_btn dd,
#under_fix_navi .change_btn dd{
	border-color: #212121;
}
#fix_navi.transform .change_btn button,
#under_fix_navi .change_btn button{
	color: #212121;
}
#fix_navi.transform .change_btn button.current,
#under_fix_navi .change_btn button.current{
	background: #212121;
	color: #fff;
}

#fix_navi .r_side i.material-icons,
#under_fix_navi .r_side i.material-icons{
	font-size: 24px;
}

/*-----------------------------------------------
__Main
-----------------------------------------------*/
#main{
	position: relative;
}
#contents{
	transition: all ease .3s;
}
#contents.u_contents > section:last-of-type{
	padding-bottom: 60px;
}
#u_visual{
	width: 100%;
	height: 30vh;
}

#breadcrumbs{/* パンくずリスト */
	padding: 20px 0 40px 0;
	margin: 0 auto 80px auto;
	position: relative;
}
.under_bredcrumbs{
	padding-top: 70px !important;
}
#breadcrumbs h1{
	font-size: 2.2em;
	letter-spacing: 0.15em;
	font-weight: normal;
}
#breadcrumbs h1 small{
	display: block;
	margin-top: -0.3em;
	font-size: 50%;
}
#breadcrumbs p{
	font-size: 90%;
	color: #2e4fb5;
	margin-bottom: 0;
}
#breadcrumbs::before,
#breadcrumbs::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 3px;
}
#breadcrumbs::before{
	width: 100%;
	background: #eee;
}
#breadcrumbs::after{
	width: 10%;
	background: #2e4fb5;
}
#breadcrumbs ul{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 60px;
	font-size: 75%;
	color: #555;
}
#breadcrumbs ul > li a::after{
	content: "";
	width: 5px;
	height: 5px;
	border-top: 2px solid #555;
	border-right: 2px solid #555;
	display:inline-block;
	transform: rotate(45deg);
	margin: 0 13px;
	vertical-align: middle;
}

.page_link{
	background:rgba(241,244,244,1.00);
	padding: 30px;
	margin: 0 auto 40px auto;
	box-sizing: border-box;
}
.page_link li{
	display: inline-flex;
	margin-right: 1.5em;
	padding-right: 2.5em;
	border-right: 1px solid #aaa;
}
.page_link li:last-of-type{
	padding-right: 0;
	margin-right: 0;
	border-right: none;
}
.page_link li a::before{
	content: "";
	width: 7px;
	height: 7px;
	border-top: 2px solid #555;
	border-right: 2px solid #555;
	display:inline-block;
	transform: rotate(135deg) translate(-2px,2px);
	margin-right: 10px;
	vertical-align: middle;
	transition: all ease .3s;
}
.page_link li a:hover::before{
	transform: rotate(135deg) translate(0,0);
}

#contents.u_contents h2{
	border-bottom: 1px solid #2e4fb5;
	border-left: 3px solid #2e4fb5;
	font-size: 1.3em;
	padding: 16px;
	box-sizing: border-box;
	letter-spacing: 0.1em;
	margin-bottom: 1em;
}
#contents.u_contents h2 .l_btn{
	float: right;
}
#contents.u_contents h2 .l_btn a{
	padding: 10px 30px;
	font-size: 60%;
}
#contents.u_contents h3{
	font-size: 120%;
	color: #2e4fb5;
	margin: 30px 0 20px 0;
}
#contents.u_contents h4{
	margin: 20px 0;
	padding: 10px 10px 10px 15px;
	box-sizing: border-box;
	background: #f5f5f5;
	border-left: 2px solid #2e4fb5;
}


.access dl{
	margin-top: 30px;
	border-top: 2px solid #ddd;
}
.access dl dt{
	font-weight: bold;
	padding-top: 30px;
	font-size: 110%;
}
.iframe_box iframe{
	width: 100%;
	height: 400px;
}

.l_btn a{
	display: table;
	border-radius: 30px;
	padding: 10px 30px;
	text-align: center;
	color: #fff !important;
	text-decoration: none !important;
	background:#2e4fb5;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
	transition: all ease .3s;
	min-width: 100px;
}
.l_btn a:hover{
	color: #fff !important;
	background: #3d69f2;
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.2);
	transform: translateX(7px);
}

.long_btn a{
	display: block;
	padding: 20px 30px;
	color: #212121 !important;
	text-decoration: none !important;
	border: 2px solid #ddd;
	transition: all ease .3s;
	margin: 30px auto;
	box-sizing: border-box;
}
.long_btn a i{
	vertical-align: middle;
	margin-right: 0.3em;
}
.long_btn a:hover{
	background: rgba(241,244,244,1.00);
}

.padding_link{
	padding: 0 5px;
}

.bl_box{/* 黒線枠 */
	border: 1px solid #333;
	padding: 30px;
	box-sizing: border-box;
	margin: 40px auto;
}

.gr_box{/* グレー線枠 */
	border: 1px solid #ddd;
	padding: 30px;
	box-sizing: border-box;
	margin: 40px auto;
}

.attention{/* 赤線枠 */
	border: 1px solid #860920;
	padding: 30px;
	box-sizing: border-box;
	margin: 40px auto;
}
.attention .material-icons{
	color: #860920;
}

.accordion_title{
	cursor: pointer;
}

.parents_links{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 40px;
}
.parents_links section{
	width: 49%;
	display: flex;
	flex-flow: column;
	margin-bottom: 30px;
}
.parents_links section h2{
	width: 100%;
	height: 200px;
	position: relative;
	margin-bottom: 0 !important;
	border-left:none !important;
	border-bottom: 4px solid #2e4fb5 !important;
	background: #000;
	overflow: hidden;
}
.parents_links section h2 a{
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
.parents_links section h2 img{
	width: 100%;
	height: 100%;
	opacity: 0.8;
	transition: all ease .3s;
}
.parents_links section h2 a:hover img{
	transform: scale(1.05);
}
.parents_links section h2 span{
	position: absolute;
	width: 100%;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	font-size: 1.2em;
	z-index: 2;
	color: #fff !important;
	text-decoration: none !important;
	transition: all ease .3s;
}
.parents_links section h2 a:hover span{
	top: 53%;
}
.parents_links section h2 span::before{
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -7px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 7px 0 7px;
	border-color: #ffffff transparent transparent transparent;
	z-index: 2;
}
.parents_links section h2 span::after{
	content: "";
	width: 80px;
	height: 2px;
	background:  #fff;
	display: block;
	margin: 10px auto 0 auto;
	position: relative;
	z-index: 10;
}
.parents_links section p{
	margin-top: 15px;
	width: 100%;
	text-align: left;
}
.parents_links section ul{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.parents_links section ul > li{
	width: 50%;
	display: flex;
	flex-flow: column;
	background:rgba(35,154,241,1.00);
}
.parents_links section ul > li a{
	display: flex;
	align-items: center;
	height: 100%;
	padding: 20px 30px 20px 15px;
	background:rgb(241, 244, 244);
	color:#212121 !important;
	text-decoration: none !important;
	border-bottom: 1px solid #fff;
	transition: all ease .3s;
	position: relative;
}
.parents_links section ul > li a:hover{
	opacity: 0.86;
	padding-left:20px;
	color:#212121 !important;
}
.parents_links section ul > li a::before{
	content: "";
	position: absolute;
	display: block;
	width: 5px;
	height: 5px;
	border-top: 2px solid #2e4fb5;
	border-right: 2px solid #2e4fb5;
	top: 50%;
	right: 15px;
	transform: rotate(45deg) translateY(-50%);
	transition: all ease .3s;
}
.parents_links section ul > li a:hover::before{
	right: 10px;
}
.parents_links section ul > li:nth-child(2) a,
.parents_links section ul > li:nth-child(3) a,
.parents_links section ul > li:nth-child(6) a,
.parents_links section ul > li:nth-child(7) a,
.parents_links section ul > li:nth-child(10) a{
	background: rgb(233, 238, 238);
}

.parents_links section.w100{
	width: 100%;
	font-size: 90%;
}
.parents_links.research .accordion_title h2{
	padding: 0 !important;
}
.parents_links.research .accordion_title h2:hover img{
	transform: scale(1.05);
}
.parents_links.research .accordion_title h2:hover span{
	top: 53%;
}
.parents_links.research .accordion_title p{
	text-align: center;
	font-size: 110%;
	margin: 0;
	padding: 20px 0;
	background:rgb(241, 244, 244);
	border-bottom: 3px solid #fff;
	letter-spacing: 0.1em;
	transition: all ease .3s;
}
.parents_links.research .accordion_title.open p{
	background: #fff;
}
.parents_links.research .accordion_title:hover p{
	background: rgb(212, 231, 243);
}
.parents_links.research .accordion_title p::after{
	content: "";
	display:inline-block;
	vertical-align:text-top;
	margin-left: 20px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #2e4fb5;
	border-right: 2px solid #2e4fb5;
	transform: rotate(135deg) ;
	transition: all ease .3s;
}
.parents_links.research .accordion_title:hover p::after{
	transform: rotate(135deg) translate(3px,-3px);
}
.parents_links.research .accordion_title.open p::after{
	transform: rotate(-45deg) translate(-1px,8px)
}
.parents_links.research .accordion_title.open:hover p::after{
	transform: rotate(-45deg) translate(2px,5px)
}

.intl_report{
	width: 45%;
	padding-left:3%;
	border-left: 2px dotted #ddd;
}
.intl_report ul{
	display: flex;
	justify-content: space-between;
}
.intl_report ul > li{
	width: 45%;
	position: relative;
}
.intl_report figure{
	width: 100%;
	height: 200px;
	overflow: hidden;
	transition: all ease .7s;
	background: #f8f8f8;
	text-align: center;
}
.intl_report figure img{
	width: auto;
	height: 100%;
	transition: all ease .3s;
}
.intl_report p{
	display: table;
	position: absolute;
	z-index: 1;
	bottom: -20px;
	left: -18px;
	background: #eee;
	color: #333;
	padding: 10px 60px 10px 25px;
	font-size: 70%;
	transition: all ease .3s;
}
.intl_report p em{
	font-size: 150%;
	padding-right: 5px;
}
.intl_report p::before{
	content: "";
	position: absolute;
	right: 25px;
	top: 50%;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 3px solid #2e4fb5;
	border-right: 3px solid #2e4fb5;
	transform: rotate(45deg) translateY(-50%);
	transition: all ease .3s;
}
.intl_report a:hover figure{
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.2);
}
.intl_report a:hover figure img{
	transform: scale(1.03);
}
.intl_report a:hover p{
	background: #2e4fb5;
	color: #fff;
	left: -5px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}
.intl_report a:hover p::before{
	border-color: #fff;
}

.img_btn_g{
	width: 100%;
	display: flex;
	flex-flow:wrap;
	justify-content: flex-start;
}
.img_btn_g > li{
	width: 30.5%;
	margin-bottom: 40px;
}
.img_btn_g > li:nth-child(3n - 1){
	margin-right:4%;
	margin-left: 4%;
}
.img_btn_g > li figure{
	width: 100%;
	height: 200px;
	overflow: hidden;
	border: 1px solid #ddd;
}
.img_btn_g > li figure img{
	transition: all ease .3s;
	position: relative;
	z-index: 1;
}
.img_btn_g > li a:hover figure img{
	transform: scale(1.03);
}
.img_btn_g > li a{
	color: #212121 !important;
	text-decoration: none !important;
}
.img_btn_g > li a p{
	padding: 20px 20px 20px 10px;
	border-bottom: 1px solid #ddd;
	transition: all ease .3s;
	position: relative;
	font-size: 110%;
}
.img_btn_g > li a:hover p{
	padding: 20px;
}
.img_btn_g > li a p::before{
	content: "";
	position: absolute;
	width: 0;
	height: 1px;
	background: #3d69f2;
	left: 0;
	bottom: -1px;
	transition: all ease .5s;
}
.img_btn_g > li a:hover p::before{
	width: 100%;
}
.img_btn_g > li a p::after{
	content: "";
	position: absolute;
	display: block;
	width: 5px;
	height: 5px;
	border-top: 2px solid #2e4fb5;
	border-right: 2px solid #2e4fb5;
	top: 50%;
	right: 15px;
	transform: rotate(45deg) translateY(-50%);
	transition: all ease .3s;
}
.img_btn_g > li a:hover p::after{
	right: 10px;
}

dl.l_ti_r_tx{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin: 0 auto 40px auto;
	border:1px solid #333;
	padding: 10px;
	width: 100%;
	box-sizing: border-box;
}
dl.l_ti_r_tx dt{
	box-sizing: border-box;
	min-width: 150px;
	text-align: center;
	font-size: 110%;
	font-weight: bold;
	color: #2e4fb5;
	padding: 30px;
}
dl.l_ti_r_tx dd{
	border-left:1px solid #333;
	box-sizing: border-box;
	padding: 0 30px;
	flex-grow: 1;
}

dl.l_ti_r_tx.v_ti{
	flex-wrap: wrap;
	flex-flow: column;
	padding: 15px;
}
dl.l_ti_r_tx.v_ti dt{
	width: 100%;
	padding: 20px 0;
}
dl.l_ti_r_tx.v_ti dd{
	border-left: none;
	border-top: 1px solid #333;
	width: 100%;
	padding: 20px 0 0 0;
}

#contact_faq .l_ti_r_tx dt{
	width: 30%;
}
#contact_faq .l_ti_r_tx dt span{
	display: block;
}
#contact_faq .l_ti_r_tx dd{
	padding-top: 30px;
	padding-bottom: 20px;
}
#contact_faq dd .lay_2c{
	margin-top: 20px;
	margin-bottom: 0;
	justify-content: space-between;
}
#contact_faq dd .lay_2c > div{
	width: 48%;
}
#contact_faq dd p em{
	display: inline-block;
	margin-bottom: 15px;
}
#contact_faq .long_btn a{
	margin: 0 auto;
}

#request > section{
	border-top: #2e4fb5 solid 2px;
	margin-bottom: 80px;
}
#request h3 .bg_bl{
	display: inline-block;
	padding: 0 15px;
	margin-right: 15px;
	background: #2e4fb5;
	color: #fff;
	position: relative;
	font-size: 80%;
}
#request h3 .bg_bl::after{
	content: "";
	position: absolute;
	right: -7px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 7px;
	border-color: transparent transparent transparent #2e4fb5;
}
#request .barcode{
	width: 120px;
	padding: 5px;
	border: 2px solid #ddd;
}


.news_box .panel ul{
	width: 100%;
	height: 360px;
	overflow-y: scroll;
}
.news_box .panel ul::-webkit-scrollbar{
  width: 7px;
	height: 7px;
}
.news_box .panel ul::-webkit-scrollbar-track{
  background: #ccc;
  border: none;
  border-radius: 14px;
}
.news_box .panel ul::-webkit-scrollbar-thumb{
  background: #212121;
  border-radius: 14px;
}
.news_box .panel ul li{
	width: 99%;
	font-size: 90%;
}
.news_box .panel li a{
	padding: 15px;
	box-sizing: border-box;
	border-bottom: 1px solid #ddd;
	display: block;
	position: relative;
	transition: all ease .5s;
	text-decoration: none !important;
	color: #212121 !important;
}
.news_box .panel li a:hover{
	background:rgba(241,244,244,0.5);
}
.news_box .panel dl{
	display: flex;
	align-items: center;
}
.news_box .panel li dd p{
	transition: all ease .5s;
	display: inline-block;
	margin-left: 1.5em;
}
.news_box .panel li a:hover dd p{
	transform: translateX(10px);
}
.news_box .panel li p::after{
	content: "";
	margin-left: 15px;
	display: inline-block;
	width: 7px;
	height: 7px;
	border-right: 2px solid #212121;
	border-bottom: 2px solid #212121;
	transform: rotate(-45deg);
	transition: all ease .5s;
}
.news_box .panel li a:hover dd::after{
	transform: rotate(-45deg) translate(10px,10px);
}
.news_box .panel li dd span{
	width: 110px;
	font-size: 90%;
	text-align: center;
	display: inline-block;
	margin-left: 1.5em;
	padding: 0 5px;
	background: #333;
	color: #fff;
}
.pickup li a em,
.news_box .panel li dd em{
	display: inline-block;
	background: #860920;
	color: #fff;
	padding: 0 15px;
	border-radius: 15px;
	text-align: center;
	margin-right: 0.5em;
	letter-spacing: 0.2em;
	font-size: 0.8em;
}
.news_box .panel li dd span.cate_news{ background:#2e4fb5; }
.news_box .panel li dd span.cate_research{ background:rgba(32,114,69,1.00); }
.news_box .panel li dd span.cate_event{ background:rgba(196,73,17,1.00); }
.news_box .panel li dd span.cate_addmission{ background:rgba(191,47,87,1.00); }
.news_box .panel li dd span.cate_other{ background: #888;}

.v_admissions > div{
	padding: 200px 5% 0 5%;
	box-sizing: border-box;
	position: relative;
}
.v_admissions > div:first-child{
	background: url("/lab/lab_hg/images/admissions/contents1.jpg") no-repeat top;
	background-size: 100% auto;
}
.v_admissions > div:last-child{
	background: url("/lab/lab_hg/images/admissions/contents2.jpg") no-repeat top;
	background-size: 100% auto;
}
.v_admissions > div > section{
	padding: 10%;
	box-sizing: border-box;
	background: rgba(255,255,255,0.9);
}
.v_admissions .v_left{
	position: absolute;
	left: 0;
	top: 0;
 -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
	background: #212121;
	color: #fff;
	padding: 15px 0;
}
.v_admissions .news_box ul{
	height: 250px;
}


.u_contact_box{
	margin: 0;
	padding: 60px 0;
	box-sizing: border-box;
	background: #f3e7e7;
	border-top: 1px solid #ddd;
}
.u_contact_box h2{
	border: none !important;
	padding-left: 0 !important;
}
.u_contact_box dl{
	border: 4px solid #fff;
	padding: 30px;
	box-sizing: border-box;
}
.u_contact_box dt{
	font-weight: bold;
	font-size: 110%;
	margin-bottom: 1em;
}
.u_contact_box .tel{
	display: inline-block;
	border-radius: 40px;
	padding: 10px 30px;
	background: rgba(255,255,255,0.5);
	color: #212121 !important;
	text-decoration: none !important;
}

/*-----------------------------------------------
__Footer
-----------------------------------------------*/
footer{
	position: relative;
	display: block;
	z-index: 1;
	border-top: 1px solid #ddd;
	font-size: 90%;
	padding-left: 250px;
	box-sizing: border-box;
}
#pagetop{
	margin-bottom: 0;
}
#pagetop a{
	width: 100%;
	display: block;
	padding: 20px 0;
	border-bottom: 1px solid #ddd;
	background:rgba(241,244,244,1.00);
	text-align: center;
	color: #333;
	position: relative;
	transition: all ease .3s;
}
#pagetop a::before{
	content: "";
	margin: 0 auto;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #555;
	border-right: 2px solid #555;
	transform: rotate(-45deg);
	transition: all ease .3s;
}
#pagetop a:hover{
	background:rgba(236,239,239,1.00);
}
#pagetop a:hover::before{
	transform: translateY(-3px) rotate(-45deg);
}
#f_sitemap{
	width: 100%;
	padding: 60px 0;
	background:rgba(241,244,244,1.00);
}
#f_sitemap a{
	color: #212121;
}
#f_sitemap a:hover{
	color: #860920;
	text-decoration: underline;
}
#f_sitemap em{
	font-weight: bold;
}
#f_sitemap article,
#f_sitemap > ul{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
#f_sitemap .pages{
	display: flex;
	flex-wrap: wrap;
}
#f_sitemap .pages ul{
	width: 25%;
	margin-bottom: 40px;
}
#f_sitemap .pages ul > li{
	margin-bottom: 5px;
}
#f_sitemap .pages ul > li:first-child{
	margin-bottom: 1em;
}
#f_sitemap .pages .banner{
	width: 50%;
	margin-bottom: 40px;
}
#f_sitemap .pages .banner a{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	flex-wrap: nowrap;
	width: 100%;
	position: relative;
	box-sizing: border-box;
	padding: 0 30px;
	z-index: 2;
	transition: all ease .5s;
}
#f_sitemap .pages .banner a:hover{
	text-decoration: none;
}
#f_sitemap .pages .banner a::before,
#f_sitemap .pages .banner a::after{
	content: "";
	width: 100%;
	height: 60%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#f_sitemap .pages .banner a::before{
	background: #fff;
	transition: all ease 1s;
}
#f_sitemap .pages .banner a:hover::before{
	box-shadow: 0 0 20px 5px rgba(0,0,0,0.1);
}
#f_sitemap .pages .banner a::after{
	background: #f8f7e8;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .7s;
}
#f_sitemap .pages .banner a:hover::after{
	transform-origin: left top;
	transform: scale(1, 1);
}

#f_sitemap .pages .banner a span{
	box-sizing: border-box;
	font-weight: bold;
	font-size: 115%;
	padding: 20px 10px 40px 0;
	position: relative;
}
#f_sitemap .pages .banner a span::before,
#f_sitemap .pages .banner a span::after{
	content: "";
	position: absolute;
}
#f_sitemap .pages .banner a span::before{
	background: #8e1728;
	width: 100%;
	height: 2px;
	bottom: 20px;
	left: 0;
}
#f_sitemap .pages .banner a span::after{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 0 0 28px;
	border-color: transparent transparent transparent #8e1728;
	right: -2px;
	bottom: 20px;
}
#f_sitemap .pages .banner a img{
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.2);
	transition: all ease 1s;
}
#f_sitemap .pages .banner a:hover img{
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.2);
}

#f_sitemap .visitors{
	padding: 25px 0;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
}
#f_sitemap .visitors ul,
#f_sitemap > ul{
	display: flex;
}
#f_sitemap .visitors li,
#f_sitemap > ul > li{
	margin-right: 25px;
}

footer .information{
	background: #fff;
	padding: 60px 0 30px 0;
}
footer .information > ul{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	text-align: center;
	margin-bottom: 30px;
}
footer .information > ul > li:first-of-type{
	margin-right: auto;
	text-align: left;
}
footer .information > ul > li:first-of-type a{
	font-weight: bold;
}
footer .information > ul > li:first-of-type img{
	height: 70px;
	width: auto;
	vertical-align: middle;
	margin-right: 20px;
}
footer .information > ul > li a{
	font-size: 120%;
	color: #212121;
	display: block;
	transition: all ease .3s;
}
footer .information > ul > li a i{
	font-size: 35px;
}
footer .information > ul > li:nth-last-of-type(-n+3){
	border-left: 1px solid #ddd;
	padding: 0 5px;
}
footer .information > ul > li:nth-last-of-type(-n+3) a{
	padding: 20px;
	border-radius: 10px;
}
footer .information > ul > li:nth-last-of-type(-n+3) a:hover{
	background: rgba(241,244,244,1.00);
}

footer .information address{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 25px 0;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	display: flex;
}
footer .information address dl{
	margin-right: 60px;
}
footer .information address dt{
	font-weight: bold;
}
footer .information address dd a{
	display: inline-block;
	font-size: 90%;
	border-radius: 20px;
	border: 1px solid #ddd;
	color: #212121;
	background: #fff;
	padding: 3px 15px;
	transition: all ease .3s;
}
footer .information address dd a:hover{
	background: #212121;
	color: #fff;
	border-color: #212121;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.2);
	transform: translateX(5px);
}
footer .information small{
	display: block;
	width: 90%;
	max-width: 1000px;
	margin: 0 auto ;
}

@media all and (-ms-high-contrast:none){/* IE */
  #visual{
		display: block;
		position: relative;
		height: 800px;
		overflow: hidden;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}
	#visual > ul{
		position: relative;
		height: 800px;
		overflow: hidden;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}
	#visual .slide-animation{
		animation: fadezoom 8s 0s forwards;
		outline: 1px solid transparent;
		transform: rotate(0.0001deg);
	}
	.pickup li a{
		outline: 1px solid transparent;
		transform: rotate(0.0001deg);
	}

}


/* print用css 第2階層以下中心 */
@media print{
	body {
	    -webkit-print-color-adjust: exact;
		font-size: 0.7em;
	}
	body,#container{
		width: 100%;
		display:block;
	}
	#under_fix_navi,#fix_navi,header#side,#nav-open,#nav-close,#nav-input,.logo-area,#nav-content .f_menu,#u_visual,#pagetop,#f_sitemap{
		display: none;
	}
	.news_box .tablabel{
		width: 100%;
	}
	.news_box .tablabel li{
		padding-right: 10px;
	}
	.news_box .tablabel li.cate_all{ padding-right: 30px }
	.news_box .tablabel li a{
		padding: 3px 10px;
		min-width: 64px;
	}
	.news_box .panel li dd{
		display: flex;
		align-items: center;
	}
	.news_box .panel li dd span{
		min-width: 120px;
	}
	.v_admissions > div > section{
		padding:5%;
	}

	footer{
		padding-left:0;
	}
	
}