@media screen and (max-width: 1160px){

	#access_inner{
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	#access iframe{
		width: 100%;
		margin-top: 30px;
	}

	#access_inner div{
		width: 80%;
		margin: 0 auto;
		max-width: none;
	}

	#sec_access > div:nth-child(3) > div:nth-child(1){
		order: 2;
		width: 340px;
		margin: 30px auto 0 auto;
	}

	#sec_access > div:nth-child(3) > div:nth-child(2){
		order: 1;
		width: 100%;
		max-width: none;
	}
	#sec_access > div:nth-child(3) > div:nth-child(2) img{
		width: 100%;

	}

	#sec_access > div:nth-child(3) iframe{
		order: 3;
	}

}

@media screen and (max-width:800px){



	
	header{
		width: 100%;
		height: auto;
		background-color: transparent;
		position: static;
		z-index: 99;
	}

	header h1{
		padding: 0;
	}

	header h1 a{
		font-size: 24px;
		line-height: 60px;
		margin: 0 auto;
		height: 70px;
		padding: 10px 0 0 0;
		width: 222px;
	}

	#header_logo > img{
		width: 50px;
		height: 50px;
		margin: 0 0 0 4%;
	}

	header h1{
		width: auto;
		height: 50px;
		padding: 0;
		margin: 0 auto 0 0;
	}

	#header_logo{
		height: 50px;
		width: 100%;
		background-color: #fff;
		position: fixed;
		z-index: 9999;
	}

	.nav_btn {
	    display: block;
	    width: 30px;
	    height: 50px;
	    cursor: pointer;
	    position: absolute;
	    top: 0;
	    right: 4%;
	    z-index: 10;
	    border:none;
	    margin:0  ;
	}

	.nav_btn span {
	    width: 30px;
	    height: 2px;
	    margin: 0 auto;
	    display: block;
	    position: absolute;
	    transform: translateY(-50%);
	    background-color: #1D1B1A;
	    transition: .5s;
	}

	.nav_btn.open{
		cursor: pointer;
	}

	.nav_btn span:nth-child(1) {
	    top: 15px;
	}

	.nav_btn span:nth-child(2) {
	    top: 50%;
	}

	.nav_btn span:nth-child(3) {
	    bottom: 13px;
	}

	.nav_btn.open span:nth-child(1) {
	    top: 24px;
	    transform: rotate(-45deg);
	}

	.nav_btn.open span:nth-child(2) {
	    opacity: 0;
	}

	.nav_btn.open span:nth-child(3) {
	    bottom: 24px;
	    transform: rotate(45deg);
	}

	#headerinner{
		position: fixed;
		height: 93vh;
		width: 100%;
		padding: 7vh 0 0 0 ;
		margin: 50px auto 0 -100vw;
		transition-duration: .6s;
		z-index: 11;
		background-color: #fff;
		background-image: url(img/headerbg.png);
		background-repeat: no-repeat;
		background-position: right bottom;
	}

	#headerinner.open{
		display: block;
		margin:50px auto 0 0;
		transition-duration: .7s;
	}

	header nav {
		margin-top: 0;
		margin: 0 auto 0 5%;
	}

	header nav ul li a{
		font-size: 20px;
	}

	header dl{
		margin: 30px auto 0 5%;
	}

	.sns{
		margin: 20px auto 0 5%;
	}

	.container{
		position: static;
		padding-top: 50px;
		width: 100%;
		z-index: 1;
	}

	button.more{
		font-size: 20px;
		line-height: 36px;
		background-position: right 22px center;
	}

	button.more a{
		padding: 0 59px 0 29px;
	}

	/*各ページ見出し*/
	#sec_concept h2,#sec_cats h2,#sec_system h2,#sec_access h2,#sec_news h2{
		top: 60px;
		left: 6%;
		font-size: 24px;
	}

	#mainvisual{
		height: 100vw;
	}

	#mainvisual img{
		height: 100vw;
	}

	/*幅100%img*/
	#sec_concept > div:nth-child(2) img,#sec_concept > div:nth-child(4) img,#sec_concept > div:nth-child(6) img,#sec_cats > div:nth-child(2) img,#sec_system > div:nth-child(2) img,#sec_access > div:nth-child(2) img,#sec_news > div:nth-child(2) img{
		height: 70vw;
		max-height: 400px;
		min-height: 0;
	}

	#sec_concept > div:nth-child(3) h3,#sec_concept > div:nth-child(5) h3,#sec_concept > div:nth-child(7) h3,#sec_cats > div:nth-child(3) h3,#sec_system h3{
		font-size: 18px;
	}

	#about p,#news dl,#access_inner dl,#sec_access > div:nth-child(3) > div:nth-child(1) dl,footer div p a,#sec_concept > div:nth-child(3) p,#sec_concept > div:nth-child(5) p,#sec_concept > div:nth-child(7) p,#sec_cats > div:nth-child(4) ul li a div,#sec_system > div:nth-child(3) dl dt,#sec_system > div:nth-child(3) dl dd,#sec_system > div:nth-child(3) p,#sec_system > div:nth-child(4) p,#sec_system > div:nth-child(4) p a,#sec_system > div:nth-child(5) > p{
		font-size: 14px;
	}

	#access_inner p,#sec_system > div:nth-child(5) ul li p ,#sec_access > div:nth-child(3) > div:nth-child(1) p{
		font-size: 12px;
	}

	footer > p{
		font-size: 10px;
	}

	#about p,#access_inner,footer div,#sec_concept > div:nth-child(3) h3,#sec_concept > div:nth-child(5) h3,#sec_concept > div:nth-child(7) h3,#sec_cats > div:nth-child(3) h3,#sec_system h3,#sec_concept > div:nth-child(3) p,#sec_concept > div:nth-child(5) p,#sec_concept > div:nth-child(7) p,#sec_system > div:nth-child(3) p,#sec_system > div:nth-child(4) p,#sec_system > div:nth-child(5) ul,#sec_system > div:nth-child(5) > p,#sec_access > div:nth-child(3){
		width: 86%;
	}

	#cats_img_box{
		flex-wrap: wrap;
	}

	#cats_img_box img:nth-child(1){
		width: 58%;
	}	

	#cats_img_box img:nth-child(2){
		width: 42%;
	}

	#cats_img_box img:nth-child(3){
		width: 46%;
	}

	#cats_img_box img:nth-child(4){
		width: 54%;
	}

	#sec_concept > div:nth-child(3){
		background-position: right -10% center;
	}

	#sec_concept > div:nth-child(5){
		background-position: left -10% center;
	}

	#sec_access > div:nth-child(3){
		padding: 30px 7% 40px 7%;
	}

	#sec_cats > div:nth-child(4) ul{
		width: 80%;
		min-width: 0;
	}

	#sec_cats > div:nth-child(4) ul li{
		width: 44%;
	}

	#sec_cats > div:nth-child(4) ul li:nth-child(4){
		margin-bottom: 50px;
	}

	#sec_cats > div:nth-child(4) ul li a:hover img{
		transform: rotate(25deg);
	}

	#sec_system > div:nth-child(3) dl{
		min-width: 200px;
	}

	#sec_access > div:nth-child(3) > div:nth-child(2) img{
		height: 320px;
	}

}

@media screen and (max-width: 450px){

	.br::before {
		content: "\A" ;
		white-space: pre ;
	}

	header nav ul li{
		height: 10.2vw;
		max-height: 40px ;
		min-height: 34px;
	}

	header nav ul li a,header dl dt,header dl dd{
		font-size: 4.44vw;
	}

	header nav ul li p{
		font-size: 10px;
	}

	header dl{
		width: 40vw;
	}

	button.more{
		font-size: 4.44vw;
		line-height: 155%;
	}

	h2,#sec_concept h2,#sec_cats h2,#sec_system h2,#sec_access h2{
		font-size: 5.33vw;
	}

	#sec_system > div:nth-child(5) ul li{
		width: 40%;
	}

	#sec_system > div:nth-child(5) ul:nth-child(2) li:nth-child(4){
		margin: 0 0 20px 0;
	}

	#sec_system > div:nth-child(5) ul:nth-child(3) li:nth-child(3){
		margin: 0 auto 20px auto;
	}


	#sec_concept > div:nth-child(3) h3,#sec_concept > div:nth-child(5) h3,#sec_concept > div:nth-child(7) h3,#sec_cats > div:nth-child(3) h3,#sec_system h3{
		font-size: 3.56vw;
	}

	#sec_cats > div:nth-child(4) ul li a div{
		font-size: 3.11vw;
	}

	#about p,#news dl,#access_inner dl,#sec_access > div:nth-child(3) > div:nth-child(1) dl,footer div p a,#sec_concept > div:nth-child(3) p,#sec_concept > div:nth-child(5) p,#sec_concept > div:nth-child(7) p,#sec_system > div:nth-child(5) > p,#sec_access > div:nth-child(3) > div:nth-child(1) dl dt,#sec_access > div:nth-child(3) > div:nth-child(1) dl dd,#sec_system > div:nth-child(3) dl dt, #sec_system > div:nth-child(3) dl dd,#sec_system > div:nth-child(3) p,#sec_system > div:nth-child(4) p,#sec_system > div:nth-child(4) p a{
		font-size: 2.67vw;
	}

	#access_inner p,
	#sec_access > div:nth-child(3) > div:nth-child(1) p{
		font-size: 10px;
	}

	#sec_access > div:nth-child(3) > div:nth-child(1) {
		width: 100%;
		min-width: 0;
	}

	#sec_access > div:nth-child(3) > div:nth-child(1) .sns {
		width: 80%;
	}

	footer > p{
		font-size: 8px;
	}

	
}