@charset "utf-8";

/* スライダー制御 */
@media only screen and (max-width:1280px){

	.slide_area {
		width: 100%;
	}
	
	.topbackground {
		background-image: url(../img/bg_top03.png);
	}
	
}

/* PC用 */
@media only screen and (min-width:960px){	

	.inner, .pagetop{
		/*width:940px;*/
		width:960px;
		padding:0;
	}
	
	#wrapper{padding-bottom:20px;}
	
	/* グリッド全体 */
	.gridWrapper{
		width:960px;
		margin:0;
		/*margin:0 0 0 -20px;*/
	}
	
	/* グリッド共通 ベース:トップページ4カラム */
	.grid{
		float:left;
		width: 25%;
		margin-bottom: 70px;
		
		/*width:220px;*/
		/*margin-left:20px;*/
	}
	
	
}


/* モニター幅940px以下 */
@media only screen and (max-width:940px){
	
	.grid{
		float:left;
		width:48%;
		margin:10px 1% 0 1%;
		text-align: center;
	}
	
	.headermenuarea {
		width: 100%;
		/*width: 50%;*/
		/*background: #228b22;*/
	}
	
	
	#menu {
		display:none;
	}
	
	.slicknav_menu {
		display:block;
	}
	
}


/* iPad 縦 */
@media only screen and (max-width:768px){

	.left_box {
		float: left;
		width: 100%;
		/*background: #fff000;*/
	}

	.right_box {
		float: left;
		width: 100%;
		text-align: center;
		/*background: #ff0000;*/
	}
	
	#newsbox { 
		width: 96%;
		margin: 2em auto;
	}
	
	/*
	#newsbox .innerbox dd {
		width: 84%;
	}
	*/
	
	p.img_company {
		float: clear;
		text-align: center;
		/*background: #FFF000;*/
	}
	
	ul.item {
		width: 92%;
		padding: 0 1em;
	}
	
	ul.decimal {
		width: 80%;
		padding: 0 1em;
	}
	
	ul.stafflist {
		width: 80%;
		padding: 0 1em;
	}
	
	ol.type1 {
		width: 70%;
		padding-left: 3.5em;
		padding-right: 2em;
	}
	
	.bgpic_company {
		background-image: url(../img/bg_company_smp.png);
		background-position: right top;
		background-repeat: no-repeat;
	}
	
	dl.company {
		width: 98%;
		margin: 10px auto;
	}
	dl.company dt {
		width: 20%;
	}
	dl.company dd {
		width: 76%;
		padding-left: 2%;
	}
	
	dl.archive {
		width: 98%;
		margin: 10px auto;
	}
	dl.archive dt {
		width: 20%;
	}
	dl.archive dd {
		width: 76%;
		padding-left: 2%;
	}

}


/* スマートフォン 横(ランドスケープ) */
/*@media only screen and (max-width:640px){*/
@media only screen and (max-width:667px){
	
	.grid img{
		float:none;
		margin:20px auto 10px;
	}
	
	.grid p,#sub .grid li{text-align:left;}
	
	.iframeWrap {
		position: relative;
		padding-top: 86%;
		height: 0;
		overflow: hidden;
	}
	.iframeWrap iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}
	
	#newsbox .innerbox dd {
		width: 97%;
	}
}


/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){

	#header .logo{
		width: 100%;
		text-align: center;
		/*background: #fff000;*/
	}
	#header .logo img {
		clear: both;
		max-width:100%;
		height:auto;
	}
	
	.grid{
		float:left;
		width:98%;
		margin:10px 1% 0 1%;
		text-align: center;
		/*background: #FFF000;*/
	}
	
	.grid3 {
		width: 48%;
		float:left;
		margin-left: 1%;
		margin-right: 1%;
		/*
		margin-top: 2em;
		margin-bottom: 2em;
		*/
		/*background: #f6bfbc;*/
	}
	
	dl.company {
		width: 95%;
		margin: 10px auto;
	}
	dl.company dt {
		float: left;
		clear: left;
		width: 100px;
		text-align: center;
		background: #339E33;
		color: #FFFFFF;
	}
	dl.company dd {
		width: 94%;
		margin-bottom: 1em;
		/*background: #FFF000;*/
	}

	ul#subnav li{
		padding-left: 1em;
		padding-right: 1em;
	}
	
	.iframeWrap_move {
		width: 96%;
		position:relative;
		height:0;
		padding-bottom:75.0%;
	}
	p.icon {
		margin-top: -10px;
	}
	p.icon img {
		width: 70px;
		height: 70px;
	}
	.topic {
	    display: block;
	    margin: 0 auto;
	    padding: 0;
	    width: 100%;
	    font-size: 0.95em;
	}
	.media_topic {
	    display: block;
	    width: 100%;
	}
	.media_topic2 img{
	    width: 100%;
	}
	.topic--date {
	    margin-bottom: 5px;
	    width: 100%;
	    text-align: center;
	}
	.topic--image {
	    display: block;
	    width: 90%;
	    margin: 0 auto;
	}
	.topic--title {
	    display: block;
	    font-size: 1em;
	    width: 90%;
	    text-align: center;
	}
	.topic--text {
	    display: block;
	    width: 90%;
	    /*text-align: center;*/
	    margin-bottom: 30px;
	}
	.topic_spWrap {
	    overflow: hidden;
	}
	
	.staffimgbox {
		width: 100%;
		padding-top: 1%;
	}
}