@charset "UTF-8";
img{
max-width: 100%;
height: 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_wrap{/*折り返しあり*/
	flex-wrap: wrap;
}

.lay_2c > div,
.lay_2c > section{
	width: 50%;
}
.lay_3c{
	justify-content: space-between;
}
.lay_3c > li{
	width: 32%;
}

.lay_2c img{
	padding-right:20px;
}
.lay_2c > div:last-child img{
	padding-right:0;
}


.lay_padding{/* 隙間あり */
	justify-content: space-between;
}
.lay_2c.lay_padding > div,
.lay_2c.lay_padding > section{
	width: 48%;
}

.lay_2c.lay_padding img{
	padding-right:0;
}

.lay_3c.lay_padding > div{
	width: 31%;
}



.lay_2c > li::before,
.lay_3c > li::before,
.lay_gallery > li::before{ display:none !important; }


.lay_gallery{/*画像並べる*/
	display: flex;
	margin: 30px auto !important;
}

.lay_gallery > li{
	padding:10px !important;
	padding-bottom: 1em;
	display: flex;
	flex-direction: column;
}
.lay_gallery p{
	margin-top: 10px;
}

.lay_gallery img{
	padding:10px;
}

/*-----------------------------------------------
__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 #sm-content{
	overflow-y:auto;
}
header #sm-content::-webkit-scrollbar {
  width: 2px;
}
header #sm-content::-webkit-scrollbar-thumb{
background: rgba(100,100,100, .8);
border-radius: 3px;
}
header #sm-content::-webkit-scrollbar-track{
background: rgba(100,100,100, .1);
}


header #nav-content{
  -webkit-overflow-scrolling: touch;
}
header #nav-content::-webkit-scrollbar{
	width: 2px;
  }
header #nav-content::-webkit-scrollbar-track,
header #nav-content::-webkit-scrollbar-track-piece{
	background: #f5f5f5;
  }
header #nav-content::-webkit-scrollbar-thumb{
	background: #333;
  }

header#side nav .side_links{
	margin-top: auto;
}


/*-----------------------------------------------
__Global_navigation
-----------------------------------------------*/
header#side .side_links{
	margin: 0 10px;
	padding-top: 10px;
}
header#side .side_links > li:not(:first-of-type){
	margin-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:nth-of-type(2) a{
	border: 1px solid #ddd;
	background: #fff;
	color: #212121;
}
header#side .side_links > li.tw a{
	display:table;
	margin:0 auto;
	padding: 0;
	background: none;
}
header#side .side_links > li.tw img{
	display:block;
}

header#side .side_links > li.mv a{
	display:table;
	margin:0 auto;
	padding:1px 5px;
	background:#1f3c8f;
	border-radius: 5px;
}
header#side .side_links > li.mv img{
	display:block;
}


#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;
	overflow: hidden;
	height: 21px;
	display:flex;
}
.change_btn button{
	display:flex;
	justify-content:center;
	align-items:center;
	border: 2px solid #fff;
	color: #fff;
	cursor: pointer;
	text-align: center;
	margin: 0;
	width: 50%;
	font-size:8.5pt;
	font-weight: bold;
	box-sizing: border-box;
}
.change_btn dd button:first-of-type{
	border-top-left-radius: 30px;
	border-bottom-left-radius: 30px;
	padding-left:10px;
}
.change_btn dd button:last-of-type{
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
	padding-right:10px;
}
.change_btn button.current{
	color: #212121;
	background: #fff;
	cursor: default;
}
.change_btn button.large{
	font-size:10pt;
}
/*.transform*/
#fix_navi.transform .change_btn button,
#under_fix_navi .change_btn button{
	color: #212121;
	border-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:not(#breadcrumbs):last-of-type{
	padding-bottom: 60px;
}
#u_visual{
	width: 100%;
	height: 30vh;
	overflow: hidden;
	background:#000;
}
#u_visual img{
	opacity: 0.8;
}

#breadcrumbs{/* パンくずリスト */
	padding: 20px 0 40px 0;
	margin: 0 auto 40px 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;
	margin-bottom: 10px;
	font-size: 40%;
	letter-spacing:0.05em;
	color:#2e4fb5;
}
#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;
}
#breadcrumbs > ul.en_bread{
	border-top: 1px solid #eee;
	margin: -40px 0 60px 0;
	padding: 15px 0 10px 0;
	font-size:95%;
}
#breadcrumbs > ul.en_bread > li{
	margin-bottom:5px;
}
.research_lab #contents.u_contents #breadcrumbs a{
	color:#888;
}

/*ページ内リンク：薄青背景*/
.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);
}

/* 下層ページへのリンク：3列 */
ul.kasou_link{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
div.bl_box > ul.kasou_link{
	margin: 0 auto !important;
}
ul.kasou_link > li{
	display: flex;
	width: 32%;
	padding: 0 !important;
	margin: 0 0 15px 0 !important;
}
ul.kasou_link > li:nth-last-of-type(3),
ul.kasou_link > li:nth-last-of-type(2),
ul.kasou_link > li:last-of-type{
	margin: 0 !important;
}
ul.kasou_link > li::before{
	display: none !important;
}
ul.kasou_link > li a{
	width: 100%;
	display: flex;
	position: relative;
	padding: 20px;
	border: 1px solid #ddd;
	border-bottom-color: #555 ;
	background: #fafafa;
	color: #333 !important;
	text-decoration: none !important;
	transition: all ease .3s;
}
ul.kasou_link > li a:hover{
	background: #f5f5f5;
}
ul.kasou_link > li a::before{
	content: "→";
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	color: #ccc;
}


#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;
}

.img_bn{
	height: 400px;
	margin: 10px auto 40px auto;
}

.font-b{
	font-size: 150%;
}

.attention{/* 赤線枠 */
	border: 1px solid #860920;
	padding: 30px;
	box-sizing: border-box;
	margin: 40px auto;
}
.attention .material-icons{
	color: #860920;
}
img.img_sd{
	box-shadow:1px 0 20px 0 rgba(0,0,0,0.1);
}


.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:rgb(241, 244, 244);
}
.parents_links section ul > li a,
.parents_links section ul > li span{
	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,

.parents_links section ul > li:nth-child(2) span,
.parents_links section ul > li:nth-child(3) span,
.parents_links section ul > li:nth-child(6) span,
.parents_links section ul > li:nth-child(7) span,
.parents_links section ul > li:nth-child(10) span{
	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: 20px 10px;
	width: 100%;
	box-sizing: border-box;
}
dl.l_ti_r_tx dt{
	box-sizing: border-box;
	min-width: 20%;
	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;
}

dl.accordion > dt,
dt.accordion_title{
	position: relative;
	cursor:pointer;
}
dl.accordion > dt::before,
dt.accordion_title::before{
	content: "+";
	position: absolute;
	z-index: 2;
	right: 3%;
	top: 50%;
	transform: translateY(-50%);
	background:#f6fbff;
	border: 2px solid #fff;
	color: #2e4fb5;
	border-radius: 100%;

	font-size: 120%;
	font-weight: bold;
	line-height: 40px;
	width: 40px;
	height: 40px;
	text-align: center;
}
dl.accordion > dt.open::before,
dt.accordion_title.open::before{
	content: "-";
	transition: all ease .7s;
}
dl.accordion > dt.none::before,
dt.accordion_title.none::before{
	display: none;
}

dl.club:first-of-type{
	border-top: 1px solid #ddd;
}
dl.club > dt{
	border-bottom: 1px solid #ddd;
	padding: 20px 3%;
	font-size: 120%;
	position: relative;
}
dl.club > dt span{
	position: relative;
	z-index: 2;
}
dl.club > dt.open:not(.none){
	color: #fff;
	background:#2e4fb5;
	border-color: #2e4fb5;
}

dl.club > dt.open:not(.none) .school_blue{
	color:#fff;
}
dl.club > dt.open:not(.none) .bg{
	background:#fff;
	color:#2e4fb5;
}
dl.club > dt.none{
	cursor:default;
}

dl.club > dt::after{
	content: "";
	position: absolute;
	z-index: 1;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .7s;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background:#f6fbff;
}
dl.club > dt:not(.none):not(.open):hover::after{
	transform-origin: left top;
	transform: scale(1, 1);
}
dl.club > dd{
	padding: 30px 3%;
	border-bottom: 1px solid #ddd;
}
dl.club > dd .sp100{
	position: relative;
	margin: 0;
	align-items: flex-start;
}
dl.club > dd .sp100::after{
	content: "";
	position: absolute;
	z-index: 1;
	width: 0;
	height: 0;
	left:3%;
	top: -30px;
	border-style: solid;
	border-width: 20px 30px 0 30px;
	border-color: #2e4fb5 transparent transparent transparent;
	opacity: 1;
	transition: all ease .5s;
}


#contact_faq .l_ti_r_tx dt{
	width: 35%;
}
#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: 5px;
	height: 5px;
}
.news_box .panel ul::-webkit-scrollbar-track{
  background: #ccc;
  border: none;
  border-radius: 10px;
}
.news_box .panel ul::-webkit-scrollbar-thumb{
  background: #212121;
  border-radius: 10px;
}
.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;
	justify-content:space-between;
	align-items: center;
	box-sizing: border-box;
}
.news_box .panel dl dt{
	flex-basis:120px;
	margin-right: 1.5em;
}
.news_box .panel li dd{
	width: calc(100% - 120px - 1.5em);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	box-sizing: border-box;
}
.news_box .panel li dd p{
	transition: all ease .5s;
	display: inline-block;
	flex-basis: calc(100% - 120px);
	box-sizing: border-box;
	margin-bottom:0 !important;
}
.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 #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-45deg);
	transition: all ease .5s;
}
.news_box .panel li a:hover p::after{
	border-color:#aaa;
	transform: rotate(-45deg) translate(8px,8px);
}
.news_box .panel li dd span{
	box-sizing: border-box;
	margin-right: 1.5em;
	flex-basis: 110px;
	font-size: 90%;
	text-align: center;
	display: inline-block;
	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_topics{ background:#2e4fb5; }
.news_box .panel li dd span.cate_results{ 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_entrance_exam{ background:rgba(191,47,87,1.00); }
.news_box .panel li dd span.cate_recruit{ background:rgb(65, 165, 172); }
.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("/images/admissions/contents1.jpg") no-repeat top;
	background-size: 100% auto;
}
.v_admissions > div:last-child{
	background: url("/images/admissions/contents2.jpg") no-repeat top;
	background-size: 100% auto;
}
.v_admissions > div > section{
	padding: 30px 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;
}

.news_box h1{
	display:flex;
	justify-content:space-between;
}
.news_box h1 .l_btn{
	font-size:70%;
}

/*-----------------------------------------------
__MT
-----------------------------------------------*/
#contents.u_contents.wrap{
	width: 90%;
	padding-top: 60px;
}
#contents.u_contents .wrap.edit{
	padding-bottom:100px;
}
.edit > section{
	margin-bottom:60px;
}
#breadcrumbs.edit_breadcrumbs h1{
	letter-spacing: 0.05em;
	line-height: 1.3;
	font-size: 1.8em;
}
#breadcrumbs.edit_breadcrumbs div{
	margin-top: 20px;
	display: flex;
	align-items: center;
	letter-spacing: 0.05em;
}
#breadcrumbs.edit_breadcrumbs .category_list{
	padding-left: 1em;
	font-weight: normal;
	white-space: nowrap;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
#breadcrumbs.edit_breadcrumbs .category_list > li a{
	display: inline-block;
	color: #333;
	border: 1px solid #333;
	text-decoration: none;
	line-height: 1;
	padding: 3px 1em;
	margin: 0 0.5em;
	transition: all ease .3s;
	font-size: 90%;
}
#breadcrumbs.edit_breadcrumbs .category_list > li a:hover{
	background: #333;
	color: #fff;
	
	transform: translateY(-3px);
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
}
#breadcrumbs.edit_breadcrumbs .category_list > li.cate_attention a{
	background: #860920;
	border-color: #860920;
}
#breadcrumbs.edit_breadcrumbs .category_list > li.cate_attention a:hover{
	color: #fff;
}

.page_link{
	background: #eaf4f9;
	padding: 20px 30px;
	margin: 0 auto 40px auto;
	box-sizing: border-box;
}
.page_link li{
	display: inline-flex;
	margin:  10px 1.5em 10px 0;
	padding-right: 2.5em;
	border-right: 1px solid #d0e4ed;
}
.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);
}


.edit #left_box h1:first-of-type, .edit #left_box h2:first-of-type, .edit #left_box h3:first-of-type{ margin-top: 0; }

#contents.u_contents .edit h1{
	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;
}
.edit .bg{
	background:#333;
	color:#fff;
	display:inline-block;
	padding:0 0.5em;
	margin:0 0.5em;
}

#contents.u_contents .edit h1 small,
#contents.u_contents .edit h2 small,
#contents.u_contents .edit h3 small,
#contents.u_contents .edit h4 small,
#contents.u_contents .edit h5 small{
	color: #2e4fb5;
	font-size:80%;
	padding-left:2em;
	letter-spacing: 0;
}
#contents.u_contents .edit h1 small{
	font-size:70%;
}

#contents.u_contents .edit h2{
	border: none;
	padding:0;
	font-size: 120%;
	color: #2e4fb5;
	margin: 30px 0 20px 0;
}
#contents.u_contents .edit h3{
	font-size: 100%;
	color:#212121 ;
	margin: 20px 0;
	padding: 10px 10px 10px 15px;
	box-sizing: border-box;
	background: #f5f5f5;
}
#contents.u_contents .edit h4{
	font-size: 100%;
	background: none;
	border-left: 3px solid #2e4fb5;
	padding:0;
	padding-left: 10px;
	margin: 14px 0 8px 0;
}
#contents.u_contents .edit h5{
	border: 1px solid #ccc;
	padding: 8px 10px;
	margin: 14px 0 8px 0;
}
#contents.u_contents .edit h6{
	text-decoration: underline;
	margin: 14px 0 8px 0;
}
#contents.u_contents .edit a[rel="lightbox"] img{
	transition: all ease .3s;
}
#contents.u_contents .edit a[rel="lightbox"]:hover img{
	opacity: 0.5;
}
.edit a[rel^="noopener"]::after,
.edit a[href$=".pdf"]::after,
.edit a[href$=".docx"]::after,
.edit a[href$=".xlsx"]::after,
.edit a[href$=".doc"]::after,
.edit a[href$=".xls"]::after,
.edit blockquote::before{
	display: inline-block;
	font-family: 'Material Icons';
	color: #333;
	vertical-align: middle;
	margin-left: 5px;
	font-weight: normal;
    font-style: normal;
    font-size: 100%;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}
.edit a[rel^="noopener"]::after{
	content: "flip_to_front";
}
.edit a[rel^="noopener"].not_icon::after{
	display:none
}
.edit a[href$=".pdf"]::after{
	content: "picture_as_pdf";
}
.edit a[href$=".docx"]::after,
.edit a[href$=".xlsx"]::after,
.edit a[href$=".doc"]::after,
.edit a[href$=".xls"]::after{
	content: "save_alt";
}
.edit a img{
	transition: all ease .3s;
}
.edit a:hover img{
	opacity:0.7;
}
.edit .l_btn > a::after{
	color: #fff;
}
.edit em{
	font-style:italic !important;
}
.edit em.normal{
	font-style:normal !important;
}

.edit a[rel^="noopener"].none::after,
.edit a[href$=".pdf"].none::after,
.edit a[href$=".docx"].none::after,
.edit a[href$=".xlsx"].none::after,
.edit a[href$=".doc"].none::after,
.edit a[href$=".xls"].none::after{
	display:none !important;
}

#entry_page{
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	padding-bottom: 60px;
}
#entry_page #left_box{
	flex: 1;
}
#entry_page #right_box{
	width: 25%;
	max-width: 300px;
	margin-left: 100px;
}

#entry_page .news_box .panel ul{
	width: 100%;
	height: auto;
	overflow:auto;
}

.edit blockquote{
	margin:25px auto;
	padding:30px 35px;
	box-sizing:border-box;
	border:1px solid #212121;
	position:relative;
}
.edit blockquote::before{
	content:"format_quote";
	position:absolute;
	left:0;
	top:0;
	z-index:1;
	font-size:25pt;
}
.edit blockquote > p:last-of-type{
	margin-bottom:0;
}


/* 大講座?研究室一覧 */
.edit .research_list td a[rel^="noopener"]::after{/* 外部リンクボタン非表示 */
	display: none;
}
.edit .research_list table{
	margin-bottom: 60px;
}
.research_list tr{
	transition: all ease .3s;
}
.research_list tr:hover{
	background: #fafafa;
}
.edit .research_list th{
	background: rgba(241,244,244,1.00);
}
.research_list tr th:nth-child(1){ width: 30%; }
.research_list tr th:nth-child(2){ width: 5em; text-align:center; padding:15px 5px; }

.research_list tr td:nth-child(2){
	text-align: center;
}
.research_list tr td i.material-icons{
	margin-right: 0;
}
.research_list td a{
	display: block;
}
.research_list td > span{
	display:block;
	font-size:90%;
	line-height:1.2;
	white-space:pre-wrap;
}
.research_list td > span:nth-of-type(even){
	margin-bottom:0.8em;
}
.research_list td > span:last-of-type{
	margin-bottom:0;
}
.research_list td a span{
	display:inline-block;
	font-size:90%;
	line-height:1;
	color:#333 !important;
	text-decoration:none !important;
}

.research_list dl{
	padding: 10px 20px 0 20px;
	border: 1px solid #ddd;
	margin-bottom: 50px;
}
.research_list ul{
	display: flex;
	flex-wrap: wrap;
	padding-left: 5px;
	margin: 0 0 15px 0 !important;
}
.research_list ul li{
	display: flex;
	padding: 0 !important;
	margin: 0 0 3px 0 !important;
	font-size: 90%;
}
.research_list ul li:not(:last-child){
	padding: 0 1em 0 0 !important;
}
.research_list ul li::before{
	display: none !important;
}
.research_list ul li a{
	display: flex;
	width: 100%;
	color: rgb(97, 107, 119) !important;
	padding: 2px 2px 2px 15px;
	text-decoration: none !important;
	position: relative;
}
.research_list ul li a:hover{
	text-decoration: underline !important;
	color: #2e4fb5 !important;
}
.research_list ul li a::before{
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 2.5px 0 2.5px 3px;
	border-color: transparent transparent transparent #ffffff;
	left: 5px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.research_list ul li a::after{
	content: "";
	position: absolute;
	width: 12px;
	height: 12px;
	background: #333;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
	z-index: 1;
}
.research_list dt{
	border-top: 1px solid #ddd;
	padding-top: 15px;
	margin-bottom: 5px;
}
.research_list dt:first-of-type{
	border-top: none;
}
.research_list dt a{
	display: inline-block;
	color: #2e4fb5 !important;
	text-decoration: none !important;
}
.research_list dt a:hover{
	text-decoration: underline !important;
	color: #860920 !important;
}

.research_lab .wrap{
	font-family:-apple-system,BlinkMacSystemFont,'Source Sans Pro',"Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
	line-height:1.2;
}

.research_lab #contents.u_contents.wrap{
	padding-top:0;
}

.research_lab #breadcrumbs h1 span{
	margin-bottom:25px;
	border:none !important;
	padding:0;
}
.research_lab #breadcrumbs h1 span em{
	color:#333 !important;
	font-weight:normal;
	font-size:90%;
	display:inline-block;
	margin-left:1em;
	padding:0 0.5em;
	background:#fff;
}

.research_lab #breadcrumbs h1 small{
	font-size:75%;
	font-weight:bold;
	line-height:1;
	margin-top:5px;
	margin-bottom:0 !important;
}
.research_lab #contents.u_contents .edit h1:not(:first-of-type){
	margin-top:2em;
}
.research_lab #contents.u_contents .edit h1 small{
	font-size:100%;
}

.research_lab dl.lab_fields{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	font-size:120%;
	margin-bottom:20px;
}
.research_lab dl.lab_fields > dt{
	font-weight:bold;
	width:25%;
	margin-bottom:20px;
	padding-left:10px;
	border-left:1px solid #212121;
}
.research_lab dl.lab_fields > dd{
	width:75%;
	margin-bottom:20px;
}

.research_lab .research_list_detail{
	max-width:880px !important;
}

.research_list_detail{
	max-width:700px;
	flex-wrap:wrap;
	align-items: flex-start;
	justify-content:flex-start!important;
	margin:40px 0 !important;
}
.research_list_detail > li{
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items: center;
	box-sizing: border-box;
}

.research_list_detail > li:first-child,
.lay_2c.research_list_detail > li:nth-child(3n),
.lay_3c.research_list_detail > li:nth-child(4n){
	padding-left: 0 !important;
}
.research_list_detail > li::before{
	display:none !important;
}
.lay_3c.research_list_detail > li{
	width:calc(100% / 3);
}
.lay_3c.research_list_detail > li:nth-child(n+4){
	margin-top:1em;
}
.research_list_detail > li img{
	display:block;
	margin-bottom:0.5em;
}

.research_lab .research_list_detail{
	margin:20px auto !important;
}
.research_lab .research_list_detail > li{
	text-align:left;
}
.research_list_detail > li figure{
	width:100%;
	border-bottom:1px solid #212121;
	padding-bottom:1em;
	margin-bottom:1em
}
.research_list_detail > li figure img{
	margin:0 auto;
	max-width:120px;
}

.research_list_detail > li span{
	line-height:1.2;
	white-space:pre-wrap;
	display:block;
	text-align:left;
	margin:0 auto 0.5em 0;
}
.research_list_detail > li span:nth-of-type(3){
	font-size:80%;
	margin:0 auto 0 0;
	word-break:break-all;
	color:#888;
}



#breadcrumbs h1 span{/* 研究室詳細ページ用 h1分類 見出し */
	display: table;
	margin-bottom: 0.5em;
	padding: 1px 2px 1px 0.5em;
	font-size: 50%;
	letter-spacing:0.05em;
	color: #af4b9d;
	border: 1px solid #af4b9d;
}

.research_lab #breadcrumbs h1 span{
	display:flex;
	width:fit-content;
	padding: 1px 1px 1px 0.5em !important;
	border:none;
	background:#af4b9d !important;
	color: #fff;
}
.research_lab #breadcrumbs h1 span.list_yellow{
	background-color: #faaf18 !important;
}
.research_lab #breadcrumbs h1 span.list_green{
	background-color: #36b559 !important;
}
.research_lab #breadcrumbs h1 span.list_magenta{
	background-color: #f16fab !important;
}
.research_lab #breadcrumbs h1 span.list_blue{
	background-color: #5692c2 !important;
}
.research_lab #breadcrumbs h1 span.list_purple{
	background-color: #9060b2 !important;
}
.research_lab #breadcrumbs h1 span.list_orange{
	background-color: #ef4029;
}



.splash{/* 研究室詳細ページ用見出し */
	margin: 20px 0 40px 0;
	color: #fff;
	font-size: 1.3em;
	font-style: italic;
	padding: 10px 1em;
	background-color: #800a0a;
	line-height:1.4;
}
.spl_biology,
.splash.list_yellow{/*生物系*/
	background-color: #faaf18;
}
.spl_chemistry,
.splash.list_green{/*化学系*/
	background-color: #36b559;
}
.spl_physics,
.splash.list_magenta{/*物理系*/
	background-color: #f16fab;
}
.spl_jissen,
.list_blue{/*実践社会薬学*/
	background-color:#5692c2;
}
.list_purple{
	background-color:#9060b2;
}
.spl_kifukoza,
.list_orange{/*寄附講座*/
	background-color:#ef4029;
}
.spl_other,
.list_other{/*その他*/
	background-color: #af4b9d;
}

p.link_back{
	margin-top:5em;
}
p.link_back a{
	color:#888 !important;
	text-decoration:none !important;
	display:inline-block;
	border-bottom:1px solid #888;
	padding:0 0 5px 0;
	transition:all ease .3s;
}
p.link_back a:hover{
	color:#3d69f2 !important;
	border-color:#3d69f2;
	transform:translateY(5px);
}
p.link_back a:not(:first-of-type){
	margin-left:2em
}


#breadcrumbs h1 span{
	background:none !important;
}

.movetext{opacity:0; transition:all ease .7s}
.movetext span{opacity:0;}

#message.lay_2c > section{
	width:70%;
}
#message.lay_2c > div{
	width: 27%;
	margin-left:3%;
	text-align:right;
}
#message.lay_2c{
	justify-content: space-between;
}

#philosophy h2.movetext{
	font-size: 160% !important;
}
#philosophy dl.l_ti_r_tx{
	position:relative;
}
#philosophy dl.l_ti_r_tx dt{
	width:25%;
	font-size: 140%;
	color: #8e1728;
}
#philosophy dl.l_ti_r_tx dd p{
	margin-bottom:0;
	font-size: 120%;
}
#philosophy dl.l_ti_r_tx dd span.spl{
	color:#f8eeef;
	position:absolute;
	right:0.3em;
	bottom: 0;
	z-index:-1;

	font-size:3em;
	line-height:1;
	font-weight:bold;
}

/*キャンパス?附属施設*/
#campus_list{
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}
#contents.u_contents .edit #campus_list h2{
	margin: 0;
	font-size: 140%;
	width: 28%;
	margin-right: 3%;
}
#campus_list section{
	margin-bottom: 40px;
	border-bottom: 1px solid #ddd;
	justify-content: space-between;
}
#campus_list section.lay_3c > div:first-of-type{
	width: 40%;
}
#campus_list ul.lay_2c > li:first-of-type{
	padding-left: 0;
}
#campus_list .lay_2c > div:first-of-type{
	width: 35%;
}
#campus_list .lay_2c > div:last-of-type{
	width: 65%;
}
#campus_list .long_btn a{
	margin: 10px auto;
}


#campus_list.main section.lay_3c{
	justify-content: flex-start !important;
}
#campus_list.main section.lay_3c > div:first-of-type{
	width: 35%;
}

.video_box{
	position:relative;
	padding-top:56.25%;
	width:100%;
	height:0;
}
.video_box iframe,.video_box video{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}


/*-----------------------------------------------
__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 > p{
	width: 90%;
	max-width: 1000px;
	margin: 25px auto;
}
footer .information > p a{
	color:#3d69f2;
	text-decoration:underline;
}
footer .information p a:hover{
	color: #860920;
	text-decoration:none;
}
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);
	}

}


@media screen and (max-width: 1200px){
	.news_box .panel dl{
		flex-wrap: wrap;
	}
	.news_box .panel li dd{
		width: 100%;
	}
}


/* 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,#right_box,.edit ul.pager{
		display: none;
	}
	footer .information{
		margin:0 auto;
		width:90%;
		display:flex;
		justify-content:space-between;
		flex-wrap:wrap;
	}
	footer .information > ul{
		width:35%
	}
	footer .information address{
		width:60%;
	}
	footer .information > ul > li:first-of-type img{
		width:100%;
		max-width:200px;
		height:auto;
	}
	footer .information address{
		border:none;
	}
	footer .information address dl{
		margin-right:0;
	}
	footer .information address dl:first-of-type{
		padding-right:20px;
	}
	footer .information small{
		width:100%;
	}
	.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;
	}
	footer .information{
		padding:30px 0 0 0;
	}
	footer .information > ul > li:nth-last-of-type(-n+3){
		display:none;
	}
	footer .information > ul,
	footer .information address,
	footer .information small{
		max-width:none;
	}

	.movetext{ opacity:1 !important; transition:all ease 0; }
	.movetext span{ opacity:1 !important; }

	dl.accordion dd{
		display:block !important; 
	}
	dl.accordion dt::before,
	dl.club > dd .sp100::after{
		display:none;
	}
}