@charset "utf-8";
/*=================================
1: setting
2: header
3: footer
4: common-content
5: top page
6: second page
=================================*/


/* ウィンドウ幅が～768pxの場合に適用するCSS */
@media only screen and (max-width: 768px) {

/* 1: setting
================================== */
html {
	scroll-padding-top:70px;
}
body {
	width: 100%;
	min-width: 100%;
	font-size: 1.5rem;
}
.sp_none {
	display: none;
}

.sp_show {
	display:block!important;
}

img {
	max-width:100%;
	height:auto;
	margin:0 auto;
}


/* 2: header
================================== */
#wrapper {
	overflow-x:hidden;
}

#header {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
	z-index:999999;
	background:white;
	height:70px;
}

	#header .inr {
		padding:0;
	}

#header #logo {
	width:180px;
	height:50px;
	margin-top:6px;
	margin-left:55px;
}

	#header.fixed {
		height:70px;
	}

.jst-logo img {
	display:none;
}

	.jst-logo.fixed,
	#header.fixed .jst-logo,
	.jst-logo {
		position:absolute;
		top:6px;
		left:0;
		width:55px;
		height:50px;
		background:url(../img/cmn/jst-logo-sp.svg) no-repeat center center;
		margin-top:0;
	}

	.jst-logo a {
		width:55px;
		height:50px;
	}

	.jst-logo a {
		width: 55px;
		height: 50px;
	}

	.jst-logo:hover {
		opacity: 0.8;
	}

.lang {
	position:absolute;
	top:15px;
	right:50px;
	width:50px;
}

#btn {
	display: block;
}

#gloval_nav {
	display:none;
}

.dl-trigger {
	display: block;
	top: 15px;
	right:5px;
	position:fixed;
	height: 50px;
	width:38px;
	background: none;
	border: none;
	text-indent: -900em;
	overflow: hidden;
	cursor: pointer;
	outline: none;
	z-index: 99999;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	margin-bottom:20px;
}
.dl-trigger img {
	width: 30px;
	height: auto;
	margin: 10px auto 0;
}
.dl-trigger span {
	position: absolute;
	left: 0;
	right: 0;
	display: inline-block;
	width: 30px;
	height: 2px;
	margin: 0 auto;
	transition: all .4s;
	background-color: #333;
}
.dl-trigger span:nth-of-type(1) {
	top: 7px;
}
.dl-trigger span:nth-of-type(2) {
	top: 15px;
}
.dl-trigger span:nth-of-type(3) {
	bottom: 25px;
}
.dl-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(5px) rotate(-45deg);
	transform: translateY(5px) rotate(-45deg);
}
.dl-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.dl-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}
.fixbody {
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.spnav_close {
	margin-top:20px;
    margin-bottom: 30px;
    cursor: pointer;
}

.spnav_close span {
    display: block;
    width: 30%;
    margin: 0 auto;
    padding: 10px;
    background: #FFF;
    text-align: center;
    color: #2198DF;
    font-weight: bold;
}

	.spnav_close span:hover {
		background:#000;
		color:white;
	}

#gloval_nav {
	position:fixed;
	top:70px;
	left:0;
	width:100%;
	height:90%;
	z-index:999999;
	overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom:80px;
	padding-top:0;
}

#gloval_nav .flexbox_sbwap {
	display:block;
	position:relative;
	z-index:999;
}

.parentNav > li,
.parentNav > li.contact {
	margin:0;
	position:relative;
	width:100%;
	height:auto;
}


#header .parentNav > li > a,
#header .parentNav > li.contact a {
	display:block;
	width:100%;
	color:white;
	border-bottom:solid 1px #fff;
	text-align:left;
	padding-top:0;
	line-height:50px;
	padding-left:1em;
	background:var(--main-color);
}

.parentNav > li > a::after {
	border:0;
}
/*
.nav_tit,
.megaNavClose {
	display:none;
}

.nav_menu {
	width:100%;
	padding:15px 15px 0 15px
}

.open_icn {
	display: block;
	position: absolute;
	top: 0;
	right: 0px;
	width: 48px;
	height: 48px;
	background: #006fb9;
	z-index: 999;
}
.open_icn:before,
.open_icn:after {
	display: block;
	content: '';
	width: 2px;
	height: 12px;
	background: #FFF;
	position: absolute;
	top: 18px;
	left: 24px;
	border:0;
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
}
.open_icn:before{
	width: 12px;
	height: 2px;
	top: 23px;
	left: 19px;
}
.open_icn:after,
.open_icn:before {
	transition: all .4s;
}
.open_icn.open_icnactive:after {
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.open_icn.open_icnactive:before {
	opacity: 0;
}

#gloval_nav ul > li > .meganav {
	position:relative;
	top:0;
}
.nav_menu > .flexbox_wap > li {
	width:100%;
	margin-bottom:10px;
}*/


/* 3: footer
================================== */
#footer .flexbox_sbwap li {
	width:100%;
	text-align:left;
	padding:0.2em;
	margin-bottom:1em;
}

	#footer .f_menu li a {
		font-size: 1.2rem;
	}

#footer #contact .flexbox_sbwap li:first-child {
	text-align:center;
}
#footer .flexbox_cwap li {
	width:100%;
	text-align:left;
}

.sec #sec_contents {
	padding-bottom:50px;
}




/* 4: common-content
================================== */

.sec main .inr {
	padding: 10px;
}
#breadcrumb {
	font-size: 1.2rem;
	padding:0;
}

#breadcrumb ul {
	margin:0 5px;
}



/* 5: top page
================================== */

#main {
	margin-top:70px;
}

#main .inr {
	padding-left:10px!important;
	padding-right:10px!important;
}

#main_visual {
	margin:0;
	padding:0;
	text-indent:0;
	line-height:0;
	background:url(../img/main_image_sp.jpg) no-repeat center center;
}

#main_visual img {
	display:block;
}

.erato {
	width:30%;
	margin-right:10px;
}
body:not(.research) .photo_a {
	margin-bottom:50px;
}

#news .flexbox_wap {
	display:block;
}
#news .flexbox_wap > li:first-child,
#news .flexbox_wap > li:last-child {
	width:100%;
	overflow:hidden;
}

.p-news-list__item {
	display:block;
}

.p-news-list__date {
	width:auto;
}

#main h1 {
	font-size:3.0rem;
}

#about .flexbox_sbwap {
	display:block;
}
#about .flexbox_sbwap li,
#group .flexbox_sbwap li {
	width:100%!important;
}

#about .flexbox_sbwap li:first-child,
#group .flexbox_sbwap li:first-child {
	text-align:center;
	margin-bottom:20px;
}

#about .flexbox_sbwap li:first-child::before,
#group .flexbox_sbwap li:first-child::before {
	left:10px;
}

	#about .flexbox_sbwap li:first-child::before {
		width:140px;
		height:140px;
		bottom:0px;
		left:10px;
	}





/* : sec page
================================== */
#sec_contents {
	padding:0 10px;
}

#sec_contents.flexbox_sbwap {
	flex-direction: column-reverse;
}


.leftcol,.rightcol {
	width:100%;
}

.research .leftcol .flexbox_sbwap li {
	width:100%!important;
}
.research .leftcol .flexbox_sbwap li:last-child {
	text-align:center;
}
.sec #main .rightcol_inr h2 {
	display:none;
}
.rightcol_inr {
	margin-top:1em;
	margin-bottom:1em;
	padding-bottom:0.5em;
}
.rightcol_inr ul {
	margin-top:0.5em;
}

.rightcol_inr a {
	display:block;
}

.rightcol li:last-child {
	border:0;
}
table {
	min-width:100%;
}




}


/* ウィンドウ幅が～600pxの場合に適用するCSS */
@media only screen and (max-width: 600px) {

}


/* ウィンドウ幅が～450pxの場合に適用するCSS */
@media only screen and (max-width: 450px) {
}


/* ieハック */
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .dl-trigger img { margin: 0 auto; } /* IE11 */
}
